mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
Support compiling against libtheora older than 1.1
Originally committed as revision 20609 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
b5a683eb11
commit
800841fd0c
@ -86,6 +86,7 @@ static int concatenate_packet(unsigned int* offset,
|
||||
|
||||
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 @@ static int get_stats(AVCodecContext *avctx, int eos)
|
||||
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 @@ static int submit_stats(AVCodecContext *avctx)
|
||||
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)
|
||||
|
Loading…
Reference in New Issue
Block a user