]> git.sesse.net Git - ffmpeg/commitdiff
Explicitely set the size of the "ff_asf_head1_guid" header chunk, this is
authorZhentan Feng <spyfeng@gmail.com>
Tue, 20 Jul 2010 15:11:44 +0000 (15:11 +0000)
committerRonald S. Bultje <rsbultje@gmail.com>
Tue, 20 Jul 2010 15:11:44 +0000 (15:11 +0000)
part of the spec and causes problems otherwise.

Patch by Zhentan Feng <spyfeng gmail com>.

Originally committed as revision 24362 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/mmst.c

index cfd8919b34c67c0d031ba71e1669b381b9fc8671..b2f956e65729784c34d3f46ffe8e47f976ebf70f 100644 (file)
  * License along with FFmpeg; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
+
+/* References
+ * MMS protocol specification:
+ *  [1]http://msdn.microsoft.com/en-us/library/cc234711(PROT.10).aspx
+ * ASF specification. Revision 01.20.03.
+ *  [2]http://msdn.microsoft.com/en-us/library/bb643323.aspx
+ */
+
 #include "avformat.h"
 #include "internal.h"
 #include "libavutil/intreadwrite.h"
@@ -473,6 +481,8 @@ static int asf_header_parser(MMSContext *mms)
                 dprintf(NULL, "Too many streams.\n");
                 return -1;
             }
+        } else if (!memcmp(p, ff_asf_head1_guid, sizeof(ff_asf_guid))) {
+            chunksize = 46; // see references [2] section 3.4. This should be set 46.
         }
         p += chunksize;
     }