[FFmpeg-cvslog] r24793 - trunk/libavformat/mms.c

rbultje subversion
Fri Aug 13 19:08:57 CEST 2010


Author: rbultje
Date: Fri Aug 13 19:08:57 2010
New Revision: 24793

Log:
Set fixed chunksize for ASF header in MMS streams, as per MSDN documentation.
This fixes playback of at least one MMST stream.

Patch by Zhentan Feng <spyfeng gmail com>.

Modified:
   trunk/libavformat/mms.c

Modified: trunk/libavformat/mms.c
==============================================================================
--- trunk/libavformat/mms.c	Fri Aug 13 19:02:37 2010	(r24792)
+++ trunk/libavformat/mms.c	Fri Aug 13 19:08:57 2010	(r24793)
@@ -68,7 +68,12 @@ int ff_mms_asf_header_parser(MMSContext 
 
     p += sizeof(ff_asf_guid) + 14;
     while(end - p >= sizeof(ff_asf_guid) + 8) {
-        uint64_t chunksize = AV_RL64(p + sizeof(ff_asf_guid));
+        uint64_t chunksize;
+        if (!memcmp(p, ff_asf_data_header, sizeof(ff_asf_guid))) {
+            chunksize = 50; // see Reference [2] section 5.1
+        } else {
+            chunksize = AV_RL64(p + sizeof(ff_asf_guid));
+        }
         if (!chunksize || chunksize > end - p) {
             av_log(NULL, AV_LOG_ERROR,
                    "Corrupt stream (header chunksize %"PRId64" is invalid)\n",



More information about the ffmpeg-cvslog mailing list