Mercurial > mplayer.hg
annotate libmpdemux/mp_taglists.c @ 32676:db882cd69776
Do not #define _WIN32 on the command line for Cygwin.
Newer Cygwin versions no longer do this and hopefully we should be able
to survive without this hack as well. This change necessitates adapting
two #ifdefs in the MPlayer codebase. It is committed untested as I do
not have access to a Cygwin system.
author | diego |
---|---|
date | Thu, 06 Jan 2011 12:42:59 +0000 |
parents | 43d793e6e5b7 |
children | 8174931b0483 |
rev | line source |
---|---|
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
1 /* |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
2 * This file is part of MPlayer. |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
3 * |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
4 * MPlayer is free software; you can redistribute it and/or modify |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
5 * it under the terms of the GNU General Public License as published by |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
6 * the Free Software Foundation; either version 2 of the License, or |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
7 * (at your option) any later version. |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
8 * |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
9 * MPlayer is distributed in the hope that it will be useful, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
12 * GNU General Public License for more details. |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
13 * |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
14 * You should have received a copy of the GNU General Public License along |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
17 */ |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
18 |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
19 #include "config.h" |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
20 |
29859
1a2c12c0de26
Fix declarations in mp_taglists.h and include it in mp_taglists.c to
reimar
parents:
29778
diff
changeset
|
21 #include "mp_taglists.h" |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
22 #include "libavformat/avformat.h" |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
23 #include "libavformat/riff.h" |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
24 |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
25 static const AVCodecTag mp_wav_tags[] = { |
30834 | 26 { CODEC_ID_ADPCM_4XM, MKTAG('4', 'X', 'M', 'A')}, |
30833 | 27 { CODEC_ID_ADPCM_ADX, MKTAG('S', 'a', 'd', 'x')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
28 { CODEC_ID_ADPCM_EA, MKTAG('A', 'D', 'E', 'A')}, |
26760 | 29 { CODEC_ID_ADPCM_EA_MAXIS_XA, MKTAG('A', 'D', 'X', 'A')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
30 { CODEC_ID_ADPCM_IMA_WS, MKTAG('A', 'I', 'W', 'S')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
31 { CODEC_ID_ADPCM_THP, MKTAG('T', 'H', 'P', 'A')}, |
27101 | 32 { CODEC_ID_ADPCM_XA, MKTAG('P', 'S', 'X', 'A')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
33 { CODEC_ID_AMR_NB, MKTAG('n', 'b', 0, 0)}, |
30637 | 34 { CODEC_ID_BINKAUDIO_DCT, MKTAG('B', 'A', 'U', '1')}, |
35 { CODEC_ID_BINKAUDIO_RDFT, MKTAG('B', 'A', 'U', '2')}, | |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
36 { CODEC_ID_COOK, MKTAG('c', 'o', 'o', 'k')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
37 { CODEC_ID_DSICINAUDIO, MKTAG('D', 'C', 'I', 'A')}, |
27482 | 38 { CODEC_ID_EAC3, MKTAG('E', 'A', 'C', '3')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
39 { CODEC_ID_INTERPLAY_DPCM, MKTAG('I', 'N', 'P', 'A')}, |
27200 | 40 { CODEC_ID_MLP, MKTAG('M', 'L', 'P', ' ')}, |
30208 | 41 { CODEC_ID_MP1, 0x50}, |
30562 | 42 { CODEC_ID_MP4ALS, MKTAG('A', 'L', 'S', ' ')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
43 { CODEC_ID_MUSEPACK7, MKTAG('M', 'P', 'C', ' ')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
44 { CODEC_ID_MUSEPACK8, MKTAG('M', 'P', 'C', '8')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
45 { CODEC_ID_NELLYMOSER, MKTAG('N', 'E', 'L', 'L')}, |
26846 | 46 { CODEC_ID_QCELP, MKTAG('Q', 'c', 'l', 'p')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
47 { CODEC_ID_QDM2, MKTAG('Q', 'D', 'M', '2')}, |
29553 | 48 { CODEC_ID_RA_144, MKTAG('1', '4', '_', '4')}, |
49 { CODEC_ID_RA_288, MKTAG('2', '8', '_', '8')}, | |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
50 { CODEC_ID_ROQ_DPCM, MKTAG('R', 'o', 'Q', 'A')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
51 { CODEC_ID_SHORTEN, MKTAG('s', 'h', 'r', 'n')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
52 { CODEC_ID_SPEEX, MKTAG('s', 'p', 'x', ' ')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
53 { CODEC_ID_TTA, MKTAG('T', 'T', 'A', '1')}, |
29613
7386b883fba6
Add support for lavf vqf demuxer and lavc TwinVQ decoder.
vitor
parents:
29558
diff
changeset
|
54 { CODEC_ID_TWINVQ, MKTAG('T', 'W', 'I', '2')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
55 { CODEC_ID_WAVPACK, MKTAG('W', 'V', 'P', 'K')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
56 { CODEC_ID_WESTWOOD_SND1, MKTAG('S', 'N', 'D', '1')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
57 { CODEC_ID_XAN_DPCM, MKTAG('A', 'x', 'a', 'n')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
58 { 0, 0 }, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
59 }; |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
60 |
29621 | 61 const struct AVCodecTag * const mp_wav_taglists[] = {ff_codec_wav_tags, mp_wav_tags, 0}; |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
62 |
29551
19fa7aedb519
Rename mp_wav_override_tag* as mp_codecid_override_tag* to reflect that
cehoyos
parents:
29549
diff
changeset
|
63 static const AVCodecTag mp_codecid_override_tags[] = { |
29554
2d5e5e34c0f0
Fix AAC in MPEG transport stream for -demuxer lavf.
cehoyos
parents:
29553
diff
changeset
|
64 { CODEC_ID_AAC, MKTAG('M', 'P', '4', 'A')}, |
32497 | 65 { CODEC_ID_AAC_LATM, MKTAG('M', 'P', '4', 'L')}, |
29553 | 66 { CODEC_ID_AC3, 0x2000}, |
29622
d5662ea3a5d0
Add CODEC_ID_ADPCM_IMA_AMV to lavf codec_tag override list instead of
reimar
parents:
29621
diff
changeset
|
67 { CODEC_ID_ADPCM_IMA_AMV, MKTAG('A', 'M', 'V', 'A')}, |
29555
169757b719a4
Fix DTS in MPEG transport streams with -demuxer lavf.
cehoyos
parents:
29554
diff
changeset
|
68 { CODEC_ID_DTS, 0x2001}, |
29557
f1f13389cd49
Fix EAC3 in MPEG transport streams with -demuxer lavf.
cehoyos
parents:
29555
diff
changeset
|
69 { CODEC_ID_EAC3, MKTAG('E', 'A', 'C', '3')}, |
32674 | 70 { CODEC_ID_FLAC, MKTAG('f', 'L', 'a', 'C')}, |
29553 | 71 { CODEC_ID_H264, MKTAG('H', '2', '6', '4')}, |
29558
e71981bd196c
Fix MPEG-4 ASP in MPEG transport streams with -demuxer lavf.
cehoyos
parents:
29557
diff
changeset
|
72 { CODEC_ID_MPEG4, MKTAG('M', 'P', '4', 'V')}, |
29553 | 73 { CODEC_ID_PCM_BLURAY, MKTAG('B', 'P', 'C', 'M')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
74 { CODEC_ID_PCM_S8, MKTAG('t', 'w', 'o', 's')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
75 { CODEC_ID_PCM_U8, 1}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
76 { CODEC_ID_PCM_S16BE, MKTAG('t', 'w', 'o', 's')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
77 { CODEC_ID_PCM_S16LE, 1}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
78 { CODEC_ID_PCM_S24BE, MKTAG('i', 'n', '2', '4')}, |
29071
02d3778bf947
override lavf tag for pcm s24le, mov uses the same for s24be
bcoudurier
parents:
27482
diff
changeset
|
79 { CODEC_ID_PCM_S24LE, 1}, |
29085
07d177c306ce
override codec tag for pcm s32le and s32be, used in mov
bcoudurier
parents:
29071
diff
changeset
|
80 { CODEC_ID_PCM_S32BE, MKTAG('i', 'n', '3', '2')}, |
07d177c306ce
override codec tag for pcm s32le and s32be, used in mov
bcoudurier
parents:
29071
diff
changeset
|
81 { CODEC_ID_PCM_S32LE, 1}, |
29547
e86e60afd8b8
Fix MP2 and AC3 with demuxer lavf in MPEG transport streams.
cehoyos
parents:
29546
diff
changeset
|
82 { CODEC_ID_MP2, 0x50}, |
29549
a97c9fd97336
Fix MPEG2 and H264 in MPEG transport stream with demuxer lavf.
cehoyos
parents:
29547
diff
changeset
|
83 { CODEC_ID_MPEG2VIDEO, MKTAG('M', 'P', 'G', '2')}, |
29709 | 84 { CODEC_ID_TRUEHD, MKTAG('T', 'R', 'H', 'D')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
85 { 0, 0 }, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
86 }; |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
87 |
29621 | 88 const struct AVCodecTag * const mp_codecid_override_taglists[] = |
29551
19fa7aedb519
Rename mp_wav_override_tag* as mp_codecid_override_tag* to reflect that
cehoyos
parents:
29549
diff
changeset
|
89 {mp_codecid_override_tags, 0}; |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
90 |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
91 static const AVCodecTag mp_bmp_tags[] = { |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
92 { CODEC_ID_AMV, MKTAG('A', 'M', 'V', 'V')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
93 { CODEC_ID_BETHSOFTVID, MKTAG('B', 'E', 'T', 'H')}, |
26459 | 94 { CODEC_ID_BFI, MKTAG('B', 'F', 'I', 'V')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
95 { CODEC_ID_C93, MKTAG('C', '9', '3', 'V')}, |
30062
54002b08fc78
create CDGR fourcc in mp_taglist and add ffcdgraphics to codecs.conf
compn
parents:
29859
diff
changeset
|
96 { CODEC_ID_CDGRAPHICS, MKTAG('C', 'D', 'G', 'R')}, |
29658
6235d300cf7e
Allow playback of dnxhd files, as produced by FFmpeg regression test.
cehoyos
parents:
29622
diff
changeset
|
97 { CODEC_ID_DNXHD, MKTAG('A', 'V', 'd', 'n')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
98 { CODEC_ID_DSICINVIDEO, MKTAG('D', 'C', 'I', 'V')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
99 { CODEC_ID_DXA, MKTAG('D', 'X', 'A', '1')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
100 { CODEC_ID_FLIC, MKTAG('F', 'L', 'I', 'C')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
101 { CODEC_ID_IDCIN, MKTAG('I', 'D', 'C', 'I')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
102 { CODEC_ID_INTERPLAY_VIDEO, MKTAG('I', 'N', 'P', 'V')}, |
27101 | 103 { CODEC_ID_MDEC, MKTAG('M', 'D', 'E', 'C')}, |
27323 | 104 { CODEC_ID_MOTIONPIXELS, MKTAG('M', 'V', 'I', '1')}, |
29553 | 105 { CODEC_ID_NUV, MKTAG('N', 'U', 'V', '1')}, |
26735 | 106 { CODEC_ID_RL2, MKTAG('R', 'L', '2', 'V')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
107 { CODEC_ID_ROQ, MKTAG('R', 'o', 'Q', 'V')}, |
27429
bc54ab99e5b6
add mapping for real audio and video CODEC_ID to MPlayer's fourcc
aurel
parents:
27324
diff
changeset
|
108 { CODEC_ID_RV10, MKTAG('R', 'V', '1', '0')}, |
bc54ab99e5b6
add mapping for real audio and video CODEC_ID to MPlayer's fourcc
aurel
parents:
27324
diff
changeset
|
109 { CODEC_ID_RV20, MKTAG('R', 'V', '2', '0')}, |
bc54ab99e5b6
add mapping for real audio and video CODEC_ID to MPlayer's fourcc
aurel
parents:
27324
diff
changeset
|
110 { CODEC_ID_RV30, MKTAG('R', 'V', '3', '0')}, |
bc54ab99e5b6
add mapping for real audio and video CODEC_ID to MPlayer's fourcc
aurel
parents:
27324
diff
changeset
|
111 { CODEC_ID_RV40, MKTAG('R', 'V', '4', '0')}, |
32573 | 112 { CODEC_ID_SVQ3, MKTAG('S', 'V', 'Q', '3')}, |
29778 | 113 { CODEC_ID_TGV, MKTAG('f', 'V', 'G', 'T')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
114 { CODEC_ID_THP, MKTAG('T', 'H', 'P', 'V')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
115 { CODEC_ID_TIERTEXSEQVIDEO, MKTAG('T', 'S', 'E', 'Q')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
116 { CODEC_ID_TXD, MKTAG('T', 'X', 'D', 'V')}, |
27324 | 117 { CODEC_ID_VP6A, MKTAG('V', 'P', '6', 'A')}, |
26328
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
118 { CODEC_ID_VMDVIDEO, MKTAG('V', 'M', 'D', 'V')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
119 { CODEC_ID_WS_VQA, MKTAG('V', 'Q', 'A', 'V')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
120 { CODEC_ID_XAN_WC3, MKTAG('W', 'C', '3', 'V')}, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
121 { 0, 0 }, |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
122 }; |
11aac031b4b7
Split the lavf taglists out of the lavf muxer to allow using libmpmux
albeu
parents:
diff
changeset
|
123 |
29621 | 124 const struct AVCodecTag * const mp_bmp_taglists[] = {ff_codec_bmp_tags, mp_bmp_tags, 0}; |