]> git.pld-linux.org Git - packages/ffms2.git/blob - ffmpegsource-ffmpeg10.patch
- rel 3
[packages/ffms2.git] / ffmpegsource-ffmpeg10.patch
1 diff -ur ffms-2.17-src/src/core/codectype.cpp ffms-2.17-src-ffmpeg1.0/src/core/codectype.cpp
2 --- ffms-2.17-src/src/core/codectype.cpp        2012-01-22 05:46:09.000000000 +0100
3 +++ ffms-2.17-src-ffmpeg1.0/src/core/codectype.cpp      2012-11-08 13:08:43.894100438 +0100
4 @@ -25,7 +25,7 @@
5  
6  typedef struct CodecTags {
7         char str[20];
8 -       CodecID id;
9 +       AVCodecID id;
10  } CodecTags;
11  
12  static const CodecTags mkv_codec_tags[] = {
13 @@ -92,7 +92,7 @@
14  };
15  
16  typedef struct AVCodecTag {
17 -       enum CodecID id;
18 +       enum AVCodecID id;
19         unsigned int tag;
20  } AVCodecTag;
21  
22 @@ -400,7 +400,7 @@
23         }
24  }
25  
26 -CodecID MatroskaToFFCodecID(char *Codec, void *CodecPrivate, unsigned int FourCC, unsigned int BitsPerSample) {
27 +AVCodecID MatroskaToFFCodecID(char *Codec, void *CodecPrivate, unsigned int FourCC, unsigned int BitsPerSample) {
28         /* Look up native codecs */
29         for(int i = 0; mkv_codec_tags[i].id != CODEC_ID_NONE; i++){
30                 if(!strncmp(mkv_codec_tags[i].str, Codec,
31 @@ -408,7 +408,7 @@
32  
33                                 // Uncompressed and exotic format fixup
34                                 // This list is incomplete
35 -                               CodecID CID = mkv_codec_tags[i].id;
36 +                               AVCodecID CID = mkv_codec_tags[i].id;
37                                 switch (CID) {
38                                         case CODEC_ID_PCM_S16LE:
39                                                 switch (BitsPerSample) {
40 diff -ur ffms-2.17-src/src/core/codectype.h ffms-2.17-src-ffmpeg1.0/src/core/codectype.h
41 --- ffms-2.17-src/src/core/codectype.h  2012-01-22 05:46:09.000000000 +0100
42 +++ ffms-2.17-src-ffmpeg1.0/src/core/codectype.h        2012-11-08 13:08:50.330766878 +0100
43 @@ -27,5 +27,5 @@
44  #include "ffmscompat.h"
45  
46  FFMS_TrackType HaaliTrackTypeToFFTrackType(int TT);
47 -CodecID MatroskaToFFCodecID(char *Codec, void *CodecPrivate, unsigned int FourCC = 0, unsigned int BitsPerSample = 0);
48 +AVCodecID MatroskaToFFCodecID(char *Codec, void *CodecPrivate, unsigned int FourCC = 0, unsigned int BitsPerSample = 0);
49  const char *GetLAVCSampleFormatName(AVSampleFormat s);
50 diff -ur ffms-2.17-src/src/core/matroskaaudio.cpp ffms-2.17-src-ffmpeg1.0/src/core/matroskaaudio.cpp
51 --- ffms-2.17-src/src/core/matroskaaudio.cpp    2012-01-22 05:46:09.000000000 +0100
52 +++ ffms-2.17-src-ffmpeg1.0/src/core/matroskaaudio.cpp  2012-11-08 13:11:08.054095355 +0100
53 @@ -45,7 +45,7 @@
54         CodecContext.reset(avcodec_alloc_context3(NULL), DeleteMatroskaCodecContext);
55         assert(CodecContext);
56  
57 -       AVCodec *Codec = avcodec_find_decoder(MatroskaToFFCodecID(TI->CodecID, TI->CodecPrivate, 0, TI->AV.Audio.BitDepth));
58 +       AVCodec *Codec = avcodec_find_decoder(MatroskaToFFCodecID(TI->MKVCodecID, TI->CodecPrivate, 0, TI->AV.Audio.BitDepth));
59         if (!Codec) {
60                 mkv_Close(MF);
61                 throw FFMS_Exception(FFMS_ERROR_DECODING, FFMS_ERROR_CODEC, "Audio codec not found");
62 diff -ur ffms-2.17-src/src/core/matroskaindexer.cpp ffms-2.17-src-ffmpeg1.0/src/core/matroskaindexer.cpp
63 --- ffms-2.17-src/src/core/matroskaindexer.cpp  2012-01-22 05:46:09.000000000 +0100
64 +++ ffms-2.17-src-ffmpeg1.0/src/core/matroskaindexer.cpp        2012-11-08 13:11:15.454095093 +0100
65 @@ -50,7 +50,7 @@
66  
67         for (unsigned int i = 0; i < mkv_GetNumTracks(MF); i++) {
68                 TrackInfo *TI = mkv_GetTrackInfo(MF, i);
69 -               Codec[i] = avcodec_find_decoder(MatroskaToFFCodecID(TI->CodecID, TI->CodecPrivate, 0, TI->AV.Audio.BitDepth));
70 +               Codec[i] = avcodec_find_decoder(MatroskaToFFCodecID(TI->MKVCodecID, TI->CodecPrivate, 0, TI->AV.Audio.BitDepth));
71         }
72  }
73  
74 diff -ur ffms-2.17-src/src/core/matroskaparser.c ffms-2.17-src-ffmpeg1.0/src/core/matroskaparser.c
75 --- ffms-2.17-src/src/core/matroskaparser.c     2011-01-27 21:38:25.000000000 +0100
76 +++ ffms-2.17-src-ffmpeg1.0/src/core/matroskaparser.c   2012-11-08 13:12:09.934093171 +0100
77 @@ -1366,9 +1366,9 @@
78        readLangCC(mf, len, t.Language);
79        break;
80      case 0x86: // CodecID
81 -      if (t.CodecID)
82 +      if (t.MKVCodecID)
83         errorjmp(mf,"Duplicate CodecID");
84 -      STRGETA(mf,t.CodecID,len);
85 +      STRGETA(mf,t.MKVCodecID,len);
86        break;
87      case 0x63a2: // CodecPrivate
88        if (cp)
89 @@ -1459,7 +1459,7 @@
90    ENDFOR(mf);
91  
92    // validate track info
93 -  if (!t.CodecID)
94 +  if (!t.MKVCodecID)
95      errorjmp(mf,"Track has no Codec ID");
96  
97    if (t.UID != 0) {
98 @@ -1525,8 +1525,8 @@
99    // copy strings
100    if (t.Name)
101      cpadd += strlen(t.Name)+1;
102 -  if (t.CodecID)
103 -    cpadd += strlen(t.CodecID)+1;
104 +  if (t.MKVCodecID)
105 +    cpadd += strlen(t.MKVCodecID)+1;
106  
107    tp = mf->cache->memalloc(mf->cache,sizeof(*tp) + cplen + cslen + cpadd);
108    if (tp == NULL)
109 @@ -1546,7 +1546,7 @@
110  
111    cp = (char*)(tp+1) + cplen + cslen;
112    CopyStr(&tp->Name,&cp);
113 -  CopyStr(&tp->CodecID,&cp);
114 +  CopyStr(&tp->MKVCodecID,&cp);
115  
116    // set default language
117    if (!tp->Language[0])
118 @@ -1797,7 +1797,7 @@
119             proc = ASGET(mf, ch, Process);
120             memset(proc, 0, sizeof(*proc));
121           }
122 -         proc->CodecID = (unsigned)readUInt(mf,(unsigned)len);
123 +         proc->MKVCodecID = (unsigned)readUInt(mf,(unsigned)len);
124           break;
125         case 0x450d: // ChapProcessPrivate
126           if (proc == NULL) {
127 diff -ur ffms-2.17-src/src/core/matroskaparser.h ffms-2.17-src-ffmpeg1.0/src/core/matroskaparser.h
128 --- ffms-2.17-src/src/core/matroskaparser.h     2010-11-28 03:28:40.000000000 +0100
129 +++ ffms-2.17-src-ffmpeg1.0/src/core/matroskaparser.h   2012-11-08 13:10:59.050762337 +0100
130 @@ -161,7 +161,7 @@
131    /* various strings */
132    char                 *Name;
133    char                 Language[4];
134 -  char                 *CodecID;
135 +  char                 *MKVCodecID;
136  };
137  
138  typedef struct TrackInfo  TrackInfo;
139 @@ -208,7 +208,7 @@
140  };
141  
142  struct ChapterProcess {
143 -  unsigned             CodecID;
144 +  unsigned             MKVCodecID;
145    unsigned             CodecPrivateLength;
146    void                 *CodecPrivate;
147    unsigned             nCommands,nCommandsSize;
148 diff -ur ffms-2.17-src/src/core/matroskavideo.cpp ffms-2.17-src-ffmpeg1.0/src/core/matroskavideo.cpp
149 --- ffms-2.17-src/src/core/matroskavideo.cpp    2012-01-22 05:46:09.000000000 +0100
150 +++ ffms-2.17-src-ffmpeg1.0/src/core/matroskavideo.cpp  2012-11-08 13:12:29.977425796 +0100
151 @@ -71,7 +71,7 @@
152                 CodecContext->thread_count = 1;
153  #endif
154  
155 -       Codec = avcodec_find_decoder(MatroskaToFFCodecID(TI->CodecID, TI->CodecPrivate));
156 +       Codec = avcodec_find_decoder(MatroskaToFFCodecID(TI->MKVCodecID, TI->CodecPrivate));
157         if (Codec == NULL)
158                 throw FFMS_Exception(FFMS_ERROR_DECODING, FFMS_ERROR_CODEC,
159                         "Video codec not found");
160 diff -ur ffms-2.17-src/src/core/utils.cpp ffms-2.17-src-ffmpeg1.0/src/core/utils.cpp
161 --- ffms-2.17-src/src/core/utils.cpp    2012-11-08 13:13:28.604090395 +0100
162 +++ ffms-2.17-src-ffmpeg1.0/src/core/utils.cpp  2012-11-08 13:12:54.737424924 +0100
163 @@ -256,7 +256,7 @@
164         uint8_t *PrivateDataSrc = static_cast<uint8_t *>(TI->CodecPrivate);
165         size_t PrivateDataSize = TI->CodecPrivateSize;
166         size_t BIHSize = sizeof(FFMS_BITMAPINFOHEADER); // 40 bytes
167 -       if (!strncmp(TI->CodecID, "V_MS/VFW/FOURCC", 15) && PrivateDataSize >= BIHSize) {
168 +       if (!strncmp(TI->MKVCodecID, "V_MS/VFW/FOURCC", 15) && PrivateDataSize >= BIHSize) {
169                 // For some reason UTVideo requires CodecContext->codec_tag (i.e. the FourCC) to be set.
170                 // Fine, it can't hurt to set it, so let's go find it.
171                 // In a V_MS/VFW/FOURCC track, the codecprivate starts with a BITMAPINFOHEADER. If you treat that struct
This page took 0.0692 seconds and 3 git commands to generate.