diff options
author | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-10-14 12:51:55 +0000 |
---|---|---|
committer | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-10-14 12:51:55 +0000 |
commit | fc499bc5362f8c866426b3d9b3b68cab8c351886 (patch) | |
tree | fdae5a298a1156f8219c27a9a6c3bc4923fd1453 /libmpcodecs/vd_ffmpeg.c | |
parent | 1162a169a121bad0dcf91239b7d9afa0e2dd616a (diff) | |
download | mpv-fc499bc5362f8c866426b3d9b3b68cab8c351886.tar.bz2 mpv-fc499bc5362f8c866426b3d9b3b68cab8c351886.tar.xz |
put M4S2 & MP4S headers in avctx->extradata (in the unlikely case that they arent missing completly)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7737 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs/vd_ffmpeg.c')
-rw-r--r-- | libmpcodecs/vd_ffmpeg.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libmpcodecs/vd_ffmpeg.c b/libmpcodecs/vd_ffmpeg.c index efcfbc7ba6..01ab2de994 100644 --- a/libmpcodecs/vd_ffmpeg.c +++ b/libmpcodecs/vd_ffmpeg.c @@ -229,6 +229,14 @@ static int init(sh_video_t *sh){ // printf("%X %X %d %d\n", extrahdr[0], extrahdr[1]); } + if (sh->bih && (sh->bih->biSize != sizeof(BITMAPINFOHEADER)) && + (sh->format == mmioFOURCC('M','4','S','2') || + sh->format == mmioFOURCC('M','P','4','S'))) + { + avctx->extradata_size = sh->bih->biSize-sizeof(BITMAPINFOHEADER); + avctx->extradata = malloc(avctx->extradata_size); + memcpy(avctx->extradata, sh->bih+1, avctx->extradata_size); + } /* open it */ if (avcodec_open(avctx, lavc_codec) < 0) { |