diff options
author | diego <diego@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2010-05-25 23:41:30 +0000 |
---|---|---|
committer | diego <diego@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2010-05-25 23:41:30 +0000 |
commit | ab1c858071ac93fc4736582f259b580c4734cc71 (patch) | |
tree | 0decdd15c73bbd1edbb56d656702d0cc5f943a00 | |
parent | eacce255b0a462493155f2e85cdd06cf03de0eae (diff) |
Add support for decoding VP8 through libvpx wrapper in FFmpeg.
patch by James Zern, jzern google com
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31220 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | Changelog | 1 | ||||
-rwxr-xr-x | configure | 28 | ||||
-rw-r--r-- | etc/codecs.conf | 8 |
3 files changed, 37 insertions, 0 deletions
@@ -17,6 +17,7 @@ MPlayer (1.0) * JPEG 2000 support via OpenJPEG * internal liba52 copy removed * CineForm HD (CFHD) via binary DLL + * VP8 decoding through libvpx wrapper in FFmpeg Demuxers: * support for TrueHD in Blu-ray streams in libmpdemux @@ -299,6 +299,7 @@ Codecs: --disable-libdirac-lavc disable Dirac in libavcodec [autodetect] --disable-libschroedinger-lavc disable Dirac in libavcodec (Schroedinger decoder) [autodetect] + --disable-libvpx-lavc disable libvpx in libavcodec [autodetect] --disable-libnut disable libnut [autodetect] --disable-libavutil_a disable static libavutil [autodetect] --disable-libavcodec_a disable static libavcodec [autodetect] @@ -693,6 +694,7 @@ _x264=auto _x264_lavc=auto _libdirac_lavc=auto _libschroedinger_lavc=auto +_libvpx_lavc=auto _libnut=auto _lirc=auto _lircc=auto @@ -1137,6 +1139,8 @@ for ac_option do --disable-libdirac-lavc) _libdirac_lavc=no ;; --enable-libschroedinger-lavc) _libschroedinger_lavc=yes ;; --disable-libschroedinger-lavc) _libschroedinger_lavc=no ;; + --enable-libvpx-lavc) _libvpx_lavc=yes ;; + --disable-libvpx-lavc) _libvpx_lavc=no ;; --enable-libnut) _libnut=yes ;; --disable-libnut) _libnut=no ;; --enable-libavutil_a) _libavutil_a=yes ;; @@ -7596,6 +7600,30 @@ else fi echores "$_libschroedinger_lavc" +echocheck "libvpx" +if test "$_libvpx_lavc" = auto; then + _libvpx_lavc=no + if test "$_libavcodec_a" != yes; then + res_comment="libavcodec (static) is required by libvpx, sorry" + else + cat > $TMPC << EOF +#include <vpx/vpx_decoder.h> +#include <vpx/vp8dx.h> +int main(void) { vpx_codec_dec_init(NULL, &vpx_codec_vp8_dx_algo, NULL, 0); return 0; } +EOF + cc_check -lvpx && _libvpx_lavc=yes && extra_ldflags="$extra_ldflags -lvpx" + fi +fi +if test "$_libvpx_lavc" = yes ; then + def_libvpx_lavc='#define CONFIG_LIBVPX 1' + _libavdecoders="$_libavdecoders LIBVPX_DECODER" + codecmodules="libvpx $codecmodules" +else + def_libvpx_lavc='#define CONFIG_LIBVPX 0' + nocodecmodules="libvpx $nocodecmodules" +fi +echores "$_libvpx_lavc" + echocheck "libnut" if test "$_libnut" = auto ; then cat > $TMPC << EOF diff --git a/etc/codecs.conf b/etc/codecs.conf index 3b1e356662..23bff5dc8e 100644 --- a/etc/codecs.conf +++ b/etc/codecs.conf @@ -2173,6 +2173,14 @@ videocodec vp7 out YUY2 out BGR32,BGR24 +videocodec fflibvpx + info "FFmpeg wrapper for libvpx/VP8" + status working + fourcc VP80 + driver ffmpeg + dll "libvpx" + out YV12 + videocodec mwv1 info "Motion Wavelets" status working |