Jump to content

[WebUI] Transcoding, please stop..


Karbowiak

Recommended Posts

Karbowiak

Hi there.

 

I'm currently using Plex for watching movies and such, but i'm more or less fed up with their inability to do anything in a timely manner, so i'm considering switching to MediaBrowser.

 

Sadly, i use the browser to watch movies/tv shows, and not really the clients themselves. Which leads to me to the transcoding part of this.

Plex plays the movie without transcoding, even Chrome can play it without transcoding, so the video itself should work perfectly fine.

Mediabrowser however, transcodes it..

 

Media Info Plex: https://files.karbowiak.dk/fSfxBdjIcfyQp.png

Media Info MediaBrowser: https://files.karbowiak.dk/eUKcDdEF7s8qZ.png

Mediabrowser Transcoding log: http://pastebin.com/Y9icXpM3

 

So the video should play directly without any transcoding, but that isn't the case. :(

  • Like 1
Link to comment
Share on other sites

Koleckai Silvestri

What is your bitrate set to in the webclient?

 

Max it out. When you are watching a video, click on the gear icon in the upper left corner and increase it to 10 Mbps. It will probably still transcode some streams but it will reduce the need in a lot of other places. The default bitrate is very conservative. Some clients support up to 20 Mbps.

Link to comment
Share on other sites

Karbowiak

Even more hilarious..

 

Video is VP8 + OGG

Lets transcode that to VP8 and OGG..............

 

http://pastebin.com/muvh3dgB

 

 

What is your bitrate set to in the webclient?

 

Max it out. When you are watching a video, click on the gear icon in the upper left corner and increase it to 10 Mbps. It will probably still transcode some streams but it will reduce the need in a lot of other places. The default bitrate is very conservative. Some clients support up to 20 Mbps.

 
Already set to maximum bitrate, i double / triple checked that i wasn't the issue
Edited by Karbowiak
Link to comment
Share on other sites

techywarrior

I'm no expert on transcoding but from looking at that log you are trying to play an FLV file. Even though the FLV file is encoded with VP8 and OGG the browser can't natively play FLV without a Flash player and Media Browser's web client is all HTML5 based.

 

All that ffmpeg is really doing is changing the container so CPU usage should be really low (and the conversion should be really fast) when you play the file.

Link to comment
Share on other sites

Karbowiak

I'm no expert on transcoding but from looking at that log you are trying to play an FLV file. Even though the FLV file is encoded with VP8 and OGG the browser can't natively play FLV without a Flash player and Media Browser's web client is all HTML5 based.

 

All that ffmpeg is really doing is changing the container so CPU usage should be really low (and the conversion should be really fast) when you play the file.

 

FLV in Chrome: https://files.karbowiak.dk/uE4EFOPtZ5nsC.png

 

Works directly, it even plays directly using Plex.

As for CPU usage, it's high, it's not just a container swap, it's a full on transcode, i too thought it'd just do a container swap, but it ain't.. It's not doing that for any of the mp4 videos i have :\

Link to comment
Share on other sites

techywarrior

I don't think Media Browser is set to allow FLV to play directly in a browser. Even if it did there would have to be restrictions as to the codec being used inside. Luke would need to decide if it's worth it.

 

There have been some discussions about the differences in transcoding between Plex and Media Browser and I wonder if any of this may be able to help (or at least explain).

 

I believe that Plex doesn't always say that it is transcoding when it only does a container swap. I remember some people saying that it lists it as direct play when it really isn't (I don't have Plex so I am not 100% sure if this is true, or still true)

 

I do know that Plex and Media Browser handle transcoding differently. Plex transcodes a little bit of a file at a time so the CPU usage stays low but it will transcode every few minutes (1 minute of the video or something). So you may see low CPU but it would constantly bounce up and down as you play. Media Browser on the other hand transcodes the entire file as quick as it can and caches it. So there would be high CPU usage over a much shorter timespan.

 

If you look at the log you will see the ffmpeg FPS at 300-400fps.

 

Not sure if any of that helps, or explains what's going on.

 

As for the original question/comment. I think @@Luke would have to comment and see if FLV playback would be added as a direct play option in Chrome when the FLV has supported codecs used in it.

Link to comment
Share on other sites

Karbowiak

I don't think Media Browser is set to allow FLV to play directly in a browser. Even if it did there would have to be restrictions as to the codec being used inside. Luke would need to decide if it's worth it.

 

There have been some discussions about the differences in transcoding between Plex and Media Browser and I wonder if any of this may be able to help (or at least explain).

 

I believe that Plex doesn't always say that it is transcoding when it only does a container swap. I remember some people saying that it lists it as direct play when it really isn't (I don't have Plex so I am not 100% sure if this is true, or still true)

 

I do know that Plex and Media Browser handle transcoding differently. Plex transcodes a little bit of a file at a time so the CPU usage stays low but it will transcode every few minutes (1 minute of the video or something). So you may see low CPU but it would constantly bounce up and down as you play. Media Browser on the other hand transcodes the entire file as quick as it can and caches it. So there would be high CPU usage over a much shorter timespan.

 

If you look at the log you will see the ffmpeg FPS at 300-400fps.

 

Not sure if any of that helps, or explains what's going on.

 

As for the original question/comment. I think @@Luke would have to comment and see if FLV playback would be added as a direct play option in Chrome when the FLV has supported codecs used in it.

 

Thats the thing tho.. Even Mp4 (H264+AAC) which should directly play, doesn't.

 

And i know there are differences in how transcoding is done, i wouldn't really care if it was transcoding it all in one go as fast as possible, compared to the buffering that plex does, but it transcodes a video stream, that it shouldn't transcode.

 

An .avi (Mpeg4 + AC3) i can understand, but .mp4 (H264 + Stereo AAC) ?!

Link to comment
Share on other sites

techywarrior

Yea, Luke is going to have to give you an answer. I don't think any of the code I wrote for the video player way way back in the day is used anymore.

 

One additional thought. What is the resolution of the native video for an mp4 that isn't playing directly? Is it lower then your browser window resolution? If not it would transcode to reduce the resolution.

Link to comment
Share on other sites

Karbowiak

Yea, Luke is going to have to give you an answer. I don't think any of the code I wrote for the video player way way back in the day is used anymore.

 

One additional thought. What is the resolution of the native video for an mp4 that isn't playing directly? Is it lower then your browser window resolution? If not it would transcode to reduce the resolution.

 

Tried both 720p and 1080p mp4(h264+aac) videos, both got transcoded. Double checked the web clients bandwidth settings, in both cases they were at the highest level possible. :(

 

But yeah, i'll just wait for Luke to come by, one things for sure, it's annoying that it does it! :P

Link to comment
Share on other sites

  • 8 months later...
anakron

I hope this thread is not too old. But I observe a similar problem.

I currently have a Plex and Emby server run in parallel. So I tried to play the exact same video using both the Web UI of Plex and the Web UI of Emby.

On Plex I was able to select "Direct Stream" and playing like that in Chrome worked without problems. I also didn't see any "ffmpeg" or "Plex-Transcoder" process running on the server while doing this, so I don't think Plex was only remuxing or something, but most likely really did direct streaming.

On the other hand Emby allows only to select different bandwidths  but no direct streaming.

 

Is there a way to enable something like "force direct stream"? I think this would help. If only to identify cases where Emby did transcodes that would not be necessary.

  • Like 2
Link to comment
Share on other sites

Deihmos

I agree but I am almost sure the audio is transcoding on plex but I could be wrong. Emby seems to fully convert everything and it uses a lot of cpu.

Edited by Deihmos
Link to comment
Share on other sites

  • 2 months later...

I still can't get a lot of my media to play in chrome without transcoding even though I can browse to it from the chrome browser and play it in the browser fine manually. On my end everything that gets played back in a browser is transcoded even though that appears to not be necessary? Would be awesome to have chrome playback without transcoding...oh boy that would be awesome.

Link to comment
Share on other sites

I still can't get a lot of my media to play in chrome without transcoding even though I can browse to it from the chrome browser and play it in the browser fine manually. On my end everything that gets played back in a browser is transcoded even though that appears to not be necessary? Would be awesome to have chrome playback without transcoding...oh boy that would be awesome.

 

Hi, please see our wiki article on transcoding, which includes information on how to report this

 

https://github.com/MediaBrowser/Wiki/wiki/Transcoding

 

Thanks.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...