summaryrefslogtreecommitdiff
path: root/usage.dox
diff options
context:
space:
mode:
authorYunqing Wang <yunqingwang@google.com>2011-10-25 15:14:16 -0400
committerYunqing Wang <yunqingwang@google.com>2011-12-05 17:59:42 -0500
commitaa7335e610b961626f77130bc99b24de1031601d (patch)
treecfdd17dd049a005e30ec8d515fd6d303e035754c /usage.dox
parent6127af60c1eb4f20b03a4a34eb53704592194bed (diff)
downloadlibvpx-aa7335e610b961626f77130bc99b24de1031601d.tar
libvpx-aa7335e610b961626f77130bc99b24de1031601d.tar.gz
libvpx-aa7335e610b961626f77130bc99b24de1031601d.tar.bz2
libvpx-aa7335e610b961626f77130bc99b24de1031601d.zip
Multiple-resolution encoder
The example encoder down-samples the input video frames a number of times with a down-sampling factor, and then encodes and outputs bitstreams with different resolutions. Support arbitrary down-sampling factor, and down-sampling factor can be different for each encoding level. For example, the encoder can be tested as follows. 1. Configure with multi-resolution encoding enabled: ../libvpx/configure --target=x86-linux-gcc --disable-codecs --enable-vp8 --enable-runtime_cpu_detect --enable-debug --disable-install-docs --enable-error-concealment --enable-multi-res-encoding 2. Run make 3. Encode: If input video is 1280x720, run: ./vp8_multi_resolution_encoder 1280 720 input.yuv 1.ivf 2.ivf 3.ivf 1 (output: 1.ivf(1280x720); 2.ivf(640x360); 3.ivf(320x180). The last parameter is set to 1/0 to show/not show PSNR.) 4. Decode: ./simple_decoder 1.ivf 1.yuv ./simple_decoder 2.ivf 2.yuv ./simple_decoder 3.ivf 3.yuv 5. View video: mplayer 1.yuv -demuxer rawvideo -rawvideo w=1280:h=720 -loop 0 -fps 30 mplayer 2.yuv -demuxer rawvideo -rawvideo w=640:h=360 -loop 0 -fps 30 mplayer 3.yuv -demuxer rawvideo -rawvideo w=320:h=180 -loop 0 -fps 30 The encoding parameters can be modified in vp8_multi_resolution_encoder.c, for example, target bitrate, frame rate... Modified API. John helped a lot with that. Thanks! Change-Id: I03be9a51167eddf94399f92d269599fb3f3d54f5
Diffstat (limited to 'usage.dox')
-rw-r--r--usage.dox1
1 files changed, 1 insertions, 0 deletions
diff --git a/usage.dox b/usage.dox
index 0db080b00..9370e428f 100644
--- a/usage.dox
+++ b/usage.dox
@@ -82,6 +82,7 @@
The available initialization methods are:
\if encoder - #vpx_codec_enc_init (calls vpx_codec_enc_init_ver()) \endif
+ \if multi-encoder - #vpx_codec_enc_init_multi (calls vpx_codec_enc_init_multi_ver()) \endif
\if decoder - #vpx_codec_dec_init (calls vpx_codec_dec_init_ver()) \endif