For giving priority to encoding speed in libvpx

452 views
Skip to first unread message

Tank2005

unread,
Oct 11, 2012, 8:14:29 AM10/11/12
to webm-d...@webmproject.org
I would like to use libvpx for real-time video streaming. However, it is difficult to maintain 30FPS by general CPU and default libvpx setting. Is improving encoding speed by vpx_codec_enc_cfg(or other functions) possible?

John Koleszar

unread,
Oct 11, 2012, 12:48:03 PM10/11/12
to webm-d...@webmproject.org
Are you using VPX_DL_REALTIME when you call vpx_codec_encode()?

Once you've set that, there are 16 complexity levels you can select
with libvpx. Use vpx_codec_control() to set VP8E_SET_CPUUSED. If you
set to 0 or a positive value 1-16, the codec will try to adapt its
complexity depending on the time it spends encoding. Increasing this
number will make the speed go up and the quality go down.

If you want even more fine-grained control over the complexity, you
can fix the speed step manually by using a negative value, -1
(slowest) to -16 (fastest). This approach is also necessary if you
care about deterministic behavior.
> --
> You received this message because you are subscribed to the Google Groups
> "WebM Discussion" group.
> To view this discussion on the web visit
> https://groups.google.com/a/webmproject.org/d/msg/webm-discuss/-/WG-9TFCXQYcJ.
> To post to this group, send email to webm-d...@webmproject.org.
> To unsubscribe from this group, send email to
> webm-discuss...@webmproject.org.
> For more options, visit this group at
> http://groups.google.com/a/webmproject.org/group/webm-discuss/?hl=en.

Tank2005

unread,
Oct 12, 2012, 4:16:40 AM10/12/12
to webm-d...@webmproject.org
Thank you for your reply.

Because it does not improve even if it specifies VPX_DL_REALTIME, it seems that there is a problem in a screen capture rather than libvpx somehow (Such as BitBlt API). I'm going to investigate a capture program.
Reply all
Reply to author
Forward
0 new messages