Giter Club home page Giter Club logo

Comments (23)

herby2212 avatar herby2212 commented on June 12, 2024

So you propose a split of the Transcode line into Transcode (Software) and Transcode (Hardware) or Transcode (CPU) and Transcode (HW)?

from tautulli.

samwiseg0 avatar samwiseg0 commented on June 12, 2024

So you propose a split of the Transcode line into Transcode (Software) and Transcode (Hardware) or Transcode (CPU) and Transcode (HW)?

I do not think there would be a good way to do this in general?

Transcode decision is decided by plex and it can consider something a transcode if it is a video remux and an audio transcode with a container change.

Hardware transcode is only really determined by video transcodes but plex may show the stream is being transcoded even if the video itself is not being transcoded. This graph does not capture these instances.

IMO there would need to be a separate graph to show statistics on video transcoding only. I do not think making changes to this graph would make sense in this case.

from tautulli.

herby2212 avatar herby2212 commented on June 12, 2024

So you propose a split of the Transcode line into Transcode (Software) and Transcode (Hardware) or Transcode (CPU) and Transcode (HW)?

I do not think there would be a good way to do this in general?

Transcode decision is decided by plex and it can consider something a transcode if it is a video remux and an audio transcode with a container change.

Hardware transcode is only really determined by video transcodes but plex may show the stream is being transcoded even if the video itself is not being transcoded. This graph does not capture these instances.

IMO there would need to be a separate graph to show statistics on video transcoding only. I do not think making changes to this graph would make sense in this case.

Interesting point. I'm not certain if audio transcoding is handled via hardware transcoding by Plex, but as far as I know HW transcoding is only used for videos as you already mentioned.

IMO you could still use the existing graph and check explicitly if the video got transcoded to count for the new line Transcode (HW). The data for this is present in the Tautulli database.

Having a seperate graph would also be an option, but what should be shown besides the video transcode and maybe the audio transcode decision?

from tautulli.

samwiseg0 avatar samwiseg0 commented on June 12, 2024

Yes audio transcoding is handled via CPU not GPU.

IMO you could still use the existing graph and check explicitly if the video got transcoded to count for the new line Transcode (HW). The data for this is present in the Tautulli database.

Sure but in a properly working system all video should be HW transcoded?

IMO you could still use the existing graph and check explicitly if the video got transcoded to count for the new line Transcode (HW). The data for this is present in the Tautulli database.

What would make sense to me would be to essentially have the decision breakdown in graph form?
For example:

  • Overall Decision
  • Container Transcodes/Copies
  • Audio Transcodes/Copies
  • Video Transcodes/Copies
  • Subtitle Transcodes/Copies/Burn in

Ultimately, I am not sure what this problem this ask is trying to solve? I am not sure this information in graph form would be beneficial?

from tautulli.

herby2212 avatar herby2212 commented on June 12, 2024

Sure but in a properly working system all video should be HW transcoded?

Yes. This is also why I initially asked for the exact use case. As in a working system the only thing visible with another line in the graph would be the day you turned on hardware transcoding😄.

What would make sense to me would be to essentially have the decision breakdown in graph form?
For example:

  • Overall Decision
  • Container Transcodes/Copies
  • Audio Transcodes/Copies
  • Video Transcodes/Copies
  • Subtitle Transcodes/Copies/Burn in

Those informations are already present in the history and I'm also questioning if building a new graph with custom queries just to visualize those informations on a different scale is really beneficial.

Also thanks for your posts I enjoyed the discussion about a feature. :)

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

IMO you could still use the existing graph and check explicitly if the video got transcoded to count for the new line Transcode (HW). The data for this is present in the Tautulli database.

Sure but in a properly working system all video should be HW transcoded?

I use an nvidia GPU on a Linux machine, in a Docker container. My experience has definitely not been that all videos are HW transcoded. This is why I'm looking for such a graph.

Are there certain video file types that can be GPU transcoded? Is it breaking when I upgrade the kernel due to a mismatch between kernel version and module versions? ...?

Those informations are already present in the history and I'm also questioning if building a new graph with custom queries just to visualize those informations on a different scale is really beneficial.

Where can I find whether HW transcoding was used in the History tab?

from tautulli.

samwiseg0 avatar samwiseg0 commented on June 12, 2024

Those informations are already present in the history and I'm also questioning if building a new graph with custom queries just to visualize those informations on a different scale is really beneficial.

Agreed. I do not think there is much benefit.

Also thanks for your posts I enjoyed the discussion about a feature. :)

Same!

@johnmaguire

I use an nvidia GPU on a Linux machine, in a Docker container. My experience has definitely not been that all videos are HW transcoded. This is why I'm looking for such a graph.

Are there certain video file types that can be GPU transcoded? Is it breaking when I upgrade the kernel due to a mismatch between kernel version and module versions? ...?

As far as I know. No. I have been running a NVIDIA Quatro for many years and I do not recall an instance where it did not transcode a certain type of codec? Now if there is an issue with the driver or something else where plex is not able to talk to the GPU properly then yes it will fail to HW transcode but typically that results in none of the video transcodes being transcoded.

Where can I find whether HW transcoding was used in the History tab?

Click on the player in the history tab.
SCR-20231016-jgcy
SCR-20231016-jhrt

I think an overall better solution would be to create a notifier that sends you a notification when a video transcode is started but it is not hardware. This can be accomplished with the notifier conditions.

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

As far as I know. No. I have been running a NVIDIA Quatro for many years and I do not recall an instance where it did not transcode a certain type of codec? Now if there is an issue with the driver or something else where plex is not able to talk to the GPU properly then yes it will fail to HW transcode but typically that results in none of the video transcodes being transcoded.

These were hypothetical questions I'm trying to answer. FWIW, I use an NVIDIA Quadro as well.

I think an overall better solution would be to create a notifier that sends you a notification when a video transcode is started but it is not hardware. This can be accomplished with the notifier conditions.

This is not at all what I want. I don't want notifications on my phone for Plex streams, period. I want to retroactively find patterns in the data to see why HW transcoding is not always occurring.

Those informations are already present in the history and I'm also questioning if building a new graph with custom queries just to visualize those informations on a different scale is really beneficial.

Agreed. I do not think there is much benefit.

I have to admit this response is a little frustrating when I think I've done a good job of demonstrating the benefit clearly. My server sometimes does HW transcoding, and sometimes it does not. I want to find patterns in the data to see when it is working, and when it isn't. Does it work until a system upgrade, and then stop working? Does it work for some users, but not other users? Without historical data, I can't figure this out.

Clicking on each row in the History tab is not a feasible solution. Maybe I can access the database and pull what I need from there.

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

For example, here are three streams that occured in the last week. Note that one is transocde, one is directplay, and one is transcode (HW).

Screenshot 2023-10-16 at 10 25 03 AM Screenshot 2023-10-16 at 10 25 12 AM Screenshot 2023-10-16 at 10 25 18 AM

from tautulli.

JonnyWong16 avatar JonnyWong16 commented on June 12, 2024
Screenshot 2023-10-16 at 10 23 39 AM

This video is being direct streamed (copy) so there is no video transcoding, thus no hardware transcoding required.

from tautulli.

samwiseg0 avatar samwiseg0 commented on June 12, 2024

I have to admit this response is a little frustrating when I think I've done a good job of demonstrating the benefit clearly.

From my understanding of what you are trying to accomplish, is to debug a potential problem that we personally have not seen and there are other tools that can provide what you are looking for such as the DB, API, and notifications. Secondly, in a normally working system this graph would not add value as all video transcodes are HW transcodes barring no Plex bugs.

I want to find patterns in the data to see when it is working, and when it isn't. Does it work until a system upgrade, and then stop working? Does it work for some users, but not other users? Without historical data, I can't figure this out.

Notifications would help you determine time, place and which stream. Again from my experience and conversations I have had with others over the years, it very much works like an on and off switch. It either is working or not. If you find out otherwise then I would be interested to see the data and it should then be raised as a bug with Plex.

Maybe I can access the database and pull what I need from there.

This is a good idea. You can also use the API to pull the history table.

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

From my understanding of what you are trying to accomplish, is to debug a potential problem that we personally have not seen and there are other tools that can provide what you are looking for such as the DB, API, and notifications. Secondly, in a normally working system this graph would not add value as all video transcodes are HW transcodes barring no Plex bugs.

So there are two parts to this...

If I understand correctly, you're stating Tautulli is not meant to be used for debugging Plex. This is disappointing, as it seems the main reason people install Tautulli (or at least, the reason I did) was to observe, monitor, and understand how Plex is behaving. That makes it inherently a useful debugging tool when Plex isn't behaving how we expect. Therefore, "in a normally working system this graph would not add value" seems to miss the point... not all systems are working as expected! :)

Secondly, regarding "all video transcodes are HW transcodes barring no Plex bugs." I shared screenshots above that seem to prove this is not the case. There have been no system upgrades between these two transcodes. May I ask where you've received this information? Frankly, I think it is in direct contradiction to the Compatible formats and limitations section of the docs.

I want to find patterns in the data to see when it is working, and when it isn't. Does it work until a system upgrade, and then stop working? Does it work for some users, but not other users? Without historical data, I can't figure this out.

Notifications would help you determine time and place and which stream. Again from my experience and conversations I have had with others over the years, it very much works like an on and off switch. It either is working or not.

I understand notifications are an option for this, but they are not an ideal option. Notifications would ping me when other users are watching, whether I am available to debug or not, and do not help to see historical trends, unless notifications are piped to a secondary system.

If you find out otherwise then I would be interested to see the data and it should then be raised as a bug with Plex.

I shared screenshots above, and a link to docs which indicate this is not a bug.

This is a good idea. You can also use the API to pull the history table.

I will attempt this approach.

It sounds like you've made a decision not to support this feature, so feel free to close the ticket.

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

This video is being direct streamed (copy) so there is no video transcoding, thus no hardware transcoding required.

I saw this as well, but the text in the screenshot shows "transcode." Does this mean it will also appear in the graph as a transcode, or a direct stream?

from tautulli.

JonnyWong16 avatar JonnyWong16 commented on June 12, 2024

I shared screenshots above that seem to prove this is not the case.

You shared a screenshot of direct stream video. Can you share a screenshot of transcode video without hardware transcoding?

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

I shared screenshots above that seem to prove this is not the case.

You shared a screenshot of direct stream video. Can you share a screenshot of transcode video without hardware transcoding?

I removed that part of my comment. Did you give the link a read? Specifically this part:

When possible, Plex Media Server uses hardware acceleration for both decoding and encoding. Some formats are not compatible with hardware acceleration for decoding. In those cases, normal software decoding without hardware acceleration will automatically be used.

from tautulli.

samwiseg0 avatar samwiseg0 commented on June 12, 2024

I saw this as well, but the text in the screenshot shows "transcode." Does this mean it will also appear in the graph as a transcode?

Yes. That is the overall plex decision as I stated early on in my first message. Plex decided that the stream is transcode because it is transcoding the audio and changing the container.

Again the video was not transcoded at all hence why your ask in this case would not show anything on the graph since the video was not touched.

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

I saw this as well, but the text in the screenshot shows "transcode." Does this mean it will also appear in the graph as a transcode?

Yes. That is the overall plex decision as I stated early on in my first message. Plex decided that the stream is transcode because it is transcoding the audio and changing the container.

Again the video was not transcoded at all hence why your ask in this case would not show anything on the graph since the video was not touched.

I understand that. I'm simply asking how it will appear in the graph today (direct stream or transcode?)

from tautulli.

samwiseg0 avatar samwiseg0 commented on June 12, 2024

I understand that. I'm simply asking how it will appear in the graph today (direct stream or transcode?)

Transcode.

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

I understand that. I'm simply asking how it will appear in the graph today (direct stream or transcode?)

Transcode.

Thanks. @JonnyWong16 stated above that this is a direct stream. Ultimately, this is what has led to my confusion. I see a transcode occurring in the UI, but nvidia-smi doesn't show any processes (indicating a hardware transcode is not occurring.)

If this is a direct stream, but appears in the graph as a transcode, what is the criteria for a video file to show in the graph as a direct stream?

Thanks for all the info so far. I am spot checking my History and so far am unable to find any instances of a non-HW transcode. However, Plex's docs clearly indicate that this is possible depending on the video format. (I just want to reiterate this as it has gone unacknowledged in the thread above.)

edit: Though maybe this is splitting hairs. The encode is still HW-accelerated, but the decode is not. Tautulli of course doesn't make a distinction in the graph.

from tautulli.

herby2212 avatar herby2212 commented on June 12, 2024

Thanks for all the info so far. I am spot checking my History and so far am unable to find any instances of a non-HW transcode. However, Plex's docs clearly indicate that this is possible depending on the video format. (I just want to reiterate this as it has gone unacknowledged in the thread above.)

edit: Though maybe this is splitting hairs. The encode is still HW-accelerated, but the decode is not. Tautulli of course doesn't make a distinction in the graph.

As you pointed already out it needs to be differentiated between encode and decode when talking about hardware accelaration / hardware transcoding. While Tautulli doesn't make this distinction in the graph the data exists in its database which allows you to make a analysis based on that or by using a API like plexpy and a custom script.

In my opinion it is a interesting, but very special use case which can be analyzed very good via the tools previously mentioned, but isn't ideal for a generalized graph as I mentioned in my last post.

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

Yeah, that makes sense.

If this is a direct stream, but appears in the graph as a transcode, what is the criteria for a video file to show in the graph as a direct stream?

If anyone is able to provide an answer to this Q, I think all my questions have been answered and this ticket can be closed. Again, I appreciate all the info shared in this ticket so far.

from tautulli.

JonnyWong16 avatar JonnyWong16 commented on June 12, 2024

If this is a direct stream, but appears in the graph as a transcode, what is the criteria for a video file to show in the graph as a direct stream?

Direct stream video and direct stream audio.

from tautulli.

johnmaguire avatar johnmaguire commented on June 12, 2024

If this is a direct stream, but appears in the graph as a transcode, what is the criteria for a video file to show in the graph as a direct stream?

Direct stream video and direct stream audio.

Got it, so the transcode audio is what causes this one to be listed as a transcode?

Thanks for all the help.

from tautulli.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.