changeset 10568:aacf5f712ba7 libavcodec

Support compiling against libtheora older than 1.1
author conrad
date Wed, 25 Nov 2009 16:00:14 +0000
parents d4ca61e293a3
children 7a8b35405591
files libtheoraenc.c
diffstat 1 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/libtheoraenc.c	Tue Nov 24 16:58:50 2009 +0000
+++ b/libtheoraenc.c	Wed Nov 25 16:00:14 2009 +0000
@@ -86,6 +86,7 @@
 
 static int get_stats(AVCodecContext *avctx, int eos)
 {
+#ifdef TH_ENCCTL_2PASS_OUT
     TheoraContext *h = avctx->priv_data;
     uint8_t *buf;
     int bytes;
@@ -108,12 +109,17 @@
         av_base64_encode(avctx->stats_out, b64_size, h->stats, h->stats_offset);
     }
     return 0;
+#else
+    av_log(avctx, AV_LOG_ERROR, "libtheora too old to support 2pass\n");
+    return -1;
+#endif
 }
 
 // libtheora won't read the entire buffer we give it at once, so we have to
 // repeatedly submit it...
 static int submit_stats(AVCodecContext *avctx)
 {
+#ifdef TH_ENCCTL_2PASS_IN
     TheoraContext *h = avctx->priv_data;
     int bytes;
     if (!h->stats) {
@@ -138,6 +144,10 @@
         h->stats_offset += bytes;
     }
     return 0;
+#else
+    av_log(avctx, AV_LOG_ERROR, "libtheora too old to support 2pass\n");
+    return -1;
+#endif
 }
 
 static av_cold int encode_init(AVCodecContext* avc_context)