summaryrefslogtreecommitdiff
path: root/src/libffmpeg/libavcodec/utils.c
diff options
context:
space:
mode:
authorGuenter Bartsch <guenter@users.sourceforge.net>2002-04-06 20:51:22 +0000
committerGuenter Bartsch <guenter@users.sourceforge.net>2002-04-06 20:51:22 +0000
commit55e772ec62ef638f8a0b44e379da663f78245355 (patch)
tree3b90a73ab2e800ed32f68e24f125164de7a655b3 /src/libffmpeg/libavcodec/utils.c
parent0176e107fd9b6672d87f75a9eb5d83e163e0179f (diff)
downloadxine-lib-55e772ec62ef638f8a0b44e379da663f78245355.tar.gz
xine-lib-55e772ec62ef638f8a0b44e379da663f78245355.tar.bz2
update to latest ffmpeg cvs, this should add mpeg-4 bframe support :-) (BTW: ffmpeg-guys: impressive work\!\!)
CVS patchset: 1690 CVS date: 2002/04/06 20:51:22
Diffstat (limited to 'src/libffmpeg/libavcodec/utils.c')
-rw-r--r--src/libffmpeg/libavcodec/utils.c41
1 files changed, 39 insertions, 2 deletions
diff --git a/src/libffmpeg/libavcodec/utils.c b/src/libffmpeg/libavcodec/utils.c
index f84b17e63..180712314 100644
--- a/src/libffmpeg/libavcodec/utils.c
+++ b/src/libffmpeg/libavcodec/utils.c
@@ -113,7 +113,8 @@ int avcodec_decode_video(AVCodecContext *avctx, AVPicture *picture,
ret = avctx->codec->decode(avctx, picture, got_picture_ptr,
buf, buf_size);
- avctx->frame_number++;
+ if (*got_picture_ptr)
+ avctx->frame_number++;
return ret;
}
@@ -367,21 +368,57 @@ int avpicture_get_size(int pix_fmt, int width, int height)
/* must be called before any other functions */
void avcodec_init(void)
{
+ static int inited = 0;
+
+ if (inited != 0)
+ return;
+ inited = 1;
+
dsputil_init();
}
/* simple call to use all the codecs */
void avcodec_register_all(void)
{
+ static int inited = 0;
+
+ if (inited != 0)
+ return;
+ inited = 1;
+
+ /* encoders */
+#ifdef CONFIG_ENCODERS
+ register_avcodec(&ac3_encoder);
+ register_avcodec(&mp2_encoder);
+#ifdef CONFIG_MP3LAME
+ register_avcodec(&mp3lame_encoder);
+#endif
+ register_avcodec(&mpeg1video_encoder);
+ register_avcodec(&h263_encoder);
+ register_avcodec(&h263p_encoder);
+ register_avcodec(&rv10_encoder);
+ register_avcodec(&mjpeg_encoder);
+ register_avcodec(&mpeg4_encoder);
+ register_avcodec(&msmpeg4v1_encoder);
+ register_avcodec(&msmpeg4v2_encoder);
+ register_avcodec(&msmpeg4v3_encoder);
+#endif /* CONFIG_ENCODERS */
+ register_avcodec(&rawvideo_codec);
+
/* decoders */
#ifdef CONFIG_DECODERS
register_avcodec(&h263_decoder);
register_avcodec(&mpeg4_decoder);
- register_avcodec(&msmpeg4_decoder);
+ register_avcodec(&msmpeg4v1_decoder);
+ register_avcodec(&msmpeg4v2_decoder);
+ register_avcodec(&msmpeg4v3_decoder);
register_avcodec(&mpeg_decoder);
register_avcodec(&h263i_decoder);
register_avcodec(&rv10_decoder);
register_avcodec(&mjpeg_decoder);
+#ifdef CONFIG_AC3
+ register_avcodec(&ac3_decoder);
+#endif
#endif /* CONFIG_DECODERS */
}