mov: handle h263 and flv1 for codec_tag 'H','2','6','3'
The sample in https://bugzilla.libav.org/show_bug.cgi?id=393 and samples/F4V/H263_NM_f.mp4 both have codec_tag H263 for different codecs. H263 is apparently used by Flash Media Server for Sorensen Spark videos. Patch based on commit 5442083b1c541dd166b3adf39131259fc846a62b by Carl Eugen Hoyos. Fixes bug 393.
This commit is contained in:
parent
1c8bf3bfed
commit
bb2bab92e7
@ -211,7 +211,7 @@ const AVCodecTag ff_codec_movvideo_tags[] = {
|
||||
|
||||
{ AV_CODEC_ID_DIRAC, MKTAG('d', 'r', 'a', 'c') },
|
||||
{ AV_CODEC_ID_DNXHD, MKTAG('A', 'V', 'd', 'n') }, /* AVID DNxHD */
|
||||
{ AV_CODEC_ID_FLV1, MKTAG('H', '2', '6', '3') }, /* Flash Media Server */
|
||||
{ AV_CODEC_ID_H263, MKTAG('H', '2', '6', '3') },
|
||||
{ AV_CODEC_ID_MSMPEG4V3, MKTAG('3', 'I', 'V', 'D') }, /* 3ivx DivX Doctor */
|
||||
{ AV_CODEC_ID_RAWVIDEO, MKTAG('A', 'V', '1', 'x') }, /* AVID 1:1x */
|
||||
{ AV_CODEC_ID_RAWVIDEO, MKTAG('A', 'V', 'u', 'p') },
|
||||
|
@ -1171,6 +1171,10 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
|
||||
/* codec_tag YV12 triggers an UV swap in rawdec.c */
|
||||
if (!memcmp(st->codec->codec_name, "Planar Y'CbCr 8-bit 4:2:0", 25))
|
||||
st->codec->codec_tag=MKTAG('I', '4', '2', '0');
|
||||
/* Flash Media Server uses tag H263 with Sorenson Spark */
|
||||
if (format == MKTAG('H','2','6','3') &&
|
||||
!memcmp(st->codec->codec_name, "Sorenson H263", 13))
|
||||
st->codec->codec_id = AV_CODEC_ID_FLV1;
|
||||
|
||||
st->codec->bits_per_coded_sample = avio_rb16(pb); /* depth */
|
||||
color_table_id = avio_rb16(pb); /* colortable id */
|
||||
|
Loading…
x
Reference in New Issue
Block a user