Jump to content

Recommended Posts

Posted (edited)

Hi, is it possible to add VP9 transcoding ?

As VP9 is supported at every major browser (unliklely HEVC) it would be nice to be able to use VP9 for streaming (as VP9 is basically the "same" as HEVC compression wise).

FFmpeg supports it and Intel >= KabyLake supports HW accelerated transcoding for VP9.

HW accelerated decoding starts with Apollo Lake ( https://wiki.libav.org/Hardware/vaapi ).

 

For encoding there is not too much to add besides ffmpeg -i input.mp4 -c:v libvpx-vp9 ... ( https://trac.ffmpeg.org/wiki/Encode/VP9 )

 

best regards

Edited by CvH
  • Like 1
Posted

Except it's very slow though, right?

Posted

It is slower then x264 obviously, but not as slow as x265 (roughly 1,5x speed of x265).

 

The main benefit are the bitrate savings roughly as if you compare x264 vs x265 and that is actually works at the browser.

Roughly same quality at 50% of the bitrate - if you use it out of home/wlan this means a lot. Upload speed is a bottleneck for a lot ppl.

 

As CPU transcoding is rather pointless, regardless of codec, you need an compatible GPU/CPU that supports it.

As Kaby Lake (2016) onward supports it you can encode at least a single FullHD Stream at an low end J3455 in real time (CPU no way, even for x264 at ultrafast).

Nvidia and AMD supports it too at the current generations.

 

Even if you can just use CPU encoding due lack of HW encoding (older CPU, outdated os ..., docker ;) ) VP9 is pretty fast at SD resolutions (only ~20% slower then x264).

At FHD the difference is quite bigger (2-3x of time in comparison to x264).

 

Till AV1 + HW is "released" there is likely no alternative if you want to support an current generation codec.

  • Like 3
  • 7 months later...
Posted

Any news on this? Software side it is everywhere supported (Browsers, FFmpeg, drivers ...), GPU encoding side it is supported since 2016 lowend HW and even at Synology (with J3455+) it is supported.

 

Its basically just the Emby commandline bits that are missing (yea I know not that trivial ;) ) and we could use a much better Codec compared to H264 at the browser. Saving around 50% bandwidth "for free" isn't a negligible benefit.

sualfred
Posted

Never noticed that VP9 is missing -> +1

 

@@Luke

Any special reason why it hasn't been added yet?

runtimesandbox
Posted

It would be cool to have this as an advanced option under transcoding settings, I'm happy to use spare CPU cycles for this (or even get a gpu at some point) if it means a decrease in upload bandwidth.

 

Upload bandwidth is definitely a big issue for many people. 

  • Like 1
Posted

I'm happy to use spare CPU cycles for this

 

like said every Intel (and likely AMD too) >=2016 supports encoding of VP9 via GPU so it just behaves like H264/HEVC but is playable at the browser (unlikely HEVC)

Posted

It's not so simple as changing the codec. The entire transcoding format will probably have to be changed and that means that everything will need re-evaluation.

Posted

It's not so simple as changing the codec. The entire transcoding format will probably have to be changed and that means that everything will need re-evaluation.

not sure how you doing it, but afaik you pass it via cli to ffmpeg and then take it to repack it to stream it to the browser

-I have no idea how emby does it internally- but if you would just use ffmpeg you just need to switch to 

-c:v libvpx-vp9

the incoming file is the same, the outgoing file is also the same format/container - as the browser speaks h264 and vp8+vp9 it should not create bigger problems

 

likewise you need to build ffmpeg with activated vp9 encoding setting (if not done already)

Posted

We would also have to switch the container format, at least for some devices. And that would end up cascading into more required changes.

Posted

We would also have to switch the container format, at least for some devices. And that would end up cascading into more required changes.

what if you make it just available at the browser ?

btw mp4, webm and mkv speak vp9 - do you use something else for various devices ?

  • Like 1
Posted

Well the browser is what I'm referring to.

  • 1 month later...
Posted (edited)

Removing my prior comments.  I can play VP9 videos now.  Had a routing issue.  Beginning to really like Emby.  Thanks!

Edited by accarshop

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...