[SCM] libav/experimental: Explicitely set the size of the "ff_asf_head1_guid" header chunk, this is part of the spec and causes problems otherwise.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:11:56 UTC 2013


The following commit has been merged in the experimental branch:
commit d6cc1123e37fb3b795b13e66315d90711c6fd9a7
Author: Zhentan Feng <spyfeng at gmail.com>
Date:   Tue Jul 20 15:11:44 2010 +0000

    Explicitely set the size of the "ff_asf_head1_guid" header chunk, this is
    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

diff --git a/libavformat/mmst.c b/libavformat/mmst.c
index cfd8919..b2f956e 100644
--- a/libavformat/mmst.c
+++ b/libavformat/mmst.c
@@ -20,6 +20,14 @@
  * 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;
     }

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list