Announcement

Collapse
No announcement yet.

VP9 Encoder Gets Better Multi-Threading Performance

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • VP9 Encoder Gets Better Multi-Threading Performance

    Phoronix: VP9 Encoder Gets Better Multi-Threading Performance

    A Phoronix reader pointed out that last month Google developers landed some significant multi-threading performance improvements into their official VP9 video encoder...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Some significant, much needed performance improvements. The reference VP9 encoder made sloths look like they're hyper-caffinated last time I tried it, so improvements are very welcome.

    Comment


    • #3
      With x264 (via ffmpeg) using -crf is enough to set (and get) the quality you want, but google tells us to set avg bitrate, min bitrate, max bitrate and crf for vp9… On top of that the crf value has a different meaning depending on the resolution. That seems wrong and not convenient at all. The encoder should be able to determine the required bitrate to get the desired quality.

      Comment


      • #4
        Originally posted by stqn View Post
        With x264 (via ffmpeg) using -crf is enough to set (and get) the quality you want, but google tells us to set avg bitrate, min bitrate, max bitrate and crf for vp9… On top of that the crf value has a different meaning depending on the resolution. That seems wrong and not convenient at all. The encoder should be able to determine the required bitrate to get the desired quality.
        Have you actually read what they wrote? They are talking about VOD and adaptive streaming, so you don't want your chunks bitrate to vary too much as this will go against the purpose of adaptive streaming and that is why they have provided min/max bitrate vales as recommendation. If you provide -crf only it will work as you have described.

        Comment


        • #5
          Is it just me, or does the "2 instead of 1 is 11% faster" look like a massive overhead?

          Comment


          • #6
            Originally posted by Shevchen View Post
            Is it just me, or does the "2 instead of 1 is 11% faster" look like a massive overhead?
            you can't do anything parallel. one of the reasons why we don't see opencl or cuda encoders.

            Comment


            • #7
              Originally posted by Nille View Post

              you can't do anything parallel. one of the reasons why we don't see opencl or cuda encoders.
              ahmdal's law

              Comment


              • #8
                That sounds good. Hopefully Handbrake will put out a version supporting this before long.

                Comment


                • #9
                  Originally posted by Shevchen View Post
                  Is it just me, or does the "2 instead of 1 is 11% faster" look like a massive overhead?
                  You got that wrong. It is not 1 thread = 100%, 2 threads = 111%.
                  It is old encoder 2 threads = 100%, new encoder 2 threads = 111%.

                  But yeah, it is true that MT scaling used to be quite bad with the vp9 encoder. So this improvement is very appreciated.

                  Originally posted by stqn View Post
                  With x264 (via ffmpeg) using -crf is enough to set (and get) the quality you want, but google tells us to set avg bitrate, min bitrate, max bitrate and crf for vp9… On top of that the crf value has a different meaning depending on the resolution. That seems wrong and not convenient at all. The encoder should be able to determine the required bitrate to get the desired quality.
                  Setting crf is enough for vp9 too.

                  Comment


                  • #10
                    i don't care about speed of encoder, but i had to switch youtube to h264 on one of my computers because vp9 1080o can't be decoded in realtime

                    Comment

                    Working...
                    X