google / rtc-video-quality Goto Github PK
View Code? Open in Web Editor NEWCompare (Real-Time) Video Codec Performance
License: Apache License 2.0
Compare (Real-Time) Video Codec Performance
License: Apache License 2.0
using rtc-video-quality for vp9enc will set --cpu-used=7. When setting the target bitrate to 400Kbps this is the result
{ 'actual-bitrate-bps': 547721.7882352942,
'actual-encode-time-ms': 77934.56983566284,
'avg-psnr': 35.749396,
'avg-psnr-u': 41.3453,
'avg-psnr-v': 41.440348,
'avg-psnr-y': 34.403333,
'bitrate-config-kbps': [400],
'bitrate-utilization': 1.3693044705882353,
'codec': 'vp9',
'encode-time-utilization': 2.750631876552806,
'encoder': 'libvpx-rt',
'fps': 30.0,
'frame-bytes': [ 16980,
2780,
2634,
2368,
2551,
3169,
whle with yami the result is
[{ 'actual-bitrate-bps': 418750.87058823527,
'actual-encode-time-ms': 4427.440881729126,
'avg-psnr': 33.7104,
'avg-psnr-u': 39.335324,
'avg-psnr-v': 39.315309,
'avg-psnr-y': 32.367415,
'bitrate-config-kbps': [400],
'bitrate-utilization': 1.0468771764705882,
'codec': 'vp9',
'encode-time-utilization': 0.15626261935514563,
'encoder': 'yami',
'fps': 30.0,
'frame-bytes': [ 14768,
303,
320,
383,
491,
By picking --cpu-used=4 is a good compromise. This was run on a Yoga 910 with Fedora 25
{ 'actual-bitrate-bps': 414493.55294117646,
'actual-encode-time-ms': 326446.2540149689,
'avg-psnr': 34.466931,
'avg-psnr-u': 39.994153,
'avg-psnr-v': 40.389453,
'avg-psnr-y': 33.112922,
'bitrate-config-kbps': [400],
'bitrate-utilization': 1.0362338823529411,
'codec': 'vp9',
'encode-time-utilization': 11.52163249464596,
'encoder': 'libvpx-rt',
'fps': 30.0,
'frame-bytes': [ 11657,
1465,
1030,
860,
850,
954,
905,
At bare minimum ffmpeg invocation should fall back to avconv when one is present but not the other, but ideally light-weight tools should be checked into libvpx/tools/ and built in setup.sh to remove dependencies on both.
Is there any update on aom-rt support?
Wanted: OpenH264 with similar realtime settings to WebRTC (https://chromium.googlesource.com/external/webrtc/+/1c07c70d88eca07888bf242921dc8dfc3be95737/webrtc/modules/video_coding/codecs/h264/h264_encoder_impl.cc at the time of writing).
As well as x264 and x265 for comparison. Should especially make sure to distinguish these with realtime/non-realtime settings, and there are no Chrome/WebRTC settings to follow.
Instead of failing when running a binary hasn't been built yet (with some obscure python stack), make sure all applicable binaries are present.
On my Fedora 25 installation /tmp is a tmpfs mount that is used for cache and normally pretty full. The files stored there by rtc-video-quality will not fit so it would be good if user can specify another temp folder location.
This could help with debugging. For example, I want to have my own compiled version of libvpx, libyami and company on a dedicated folder in my path. I don't want to run the setup* scripts but use that instead.
As a result, rtc-video-quality should report when an option on the libraries is not supported.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.