C++ 媒体基金会撰稿人(MP4 FASTSTART) 我使用MediaFoundation在一系列的过滤器之后创建一个MP4(H264+AAC)输出文件。视频的制作非常完美,视频在本地复制时没有任何问题。问题是,当远程执行时(通过web播放器甚至VLC),视频直到完全下载才开始

C++ 媒体基金会撰稿人(MP4 FASTSTART) 我使用MediaFoundation在一系列的过滤器之后创建一个MP4(H264+AAC)输出文件。视频的制作非常完美,视频在本地复制时没有任何问题。问题是,当远程执行时(通过web播放器甚至VLC),视频直到完全下载才开始,c++,winapi,video,com,ms-media-foundation,C++,Winapi,Video,Com,Ms Media Foundation,我检查并确认承载该文件的http网站支持Accepts Ranges标头字段,过了一段时间,我发现出现问题的原因是该文件没有使用允许渐进下载视频的“fast start”标志创建 我试着在网上搜索解决方案,但我一直找不到一种方法将这个标志应用到媒体基金会的Sinkwriter上。有什么想法吗?(我无法使用任何外部应用程序来执行此操作,因为此代码将在Windows应用商店环境中运行)渐进式下载要求MPEG-4文件中的moov框在mdat框之前,这通常需要在生成文件时付出额外的努力,这不是媒体基础的

我检查并确认承载该文件的http网站支持Accepts Ranges标头字段,过了一段时间,我发现出现问题的原因是该文件没有使用允许渐进下载视频的“fast start”标志创建


我试着在网上搜索解决方案,但我一直找不到一种方法将这个标志应用到媒体基金会的Sinkwriter上。有什么想法吗?(我无法使用任何外部应用程序来执行此操作,因为此代码将在Windows应用商店环境中运行)

渐进式下载要求MPEG-4文件中的
moov
框在
mdat
框之前,这通常需要在生成文件时付出额外的努力,这不是媒体基础的默认行为。

媒体基金会介绍处理这个问题:

mpeg4媒体接收器的默认行为是在 “mdat”框。设置此属性将导致生成的文件写入 “mdat”框前面的“moov”

为了让mpeg4接收器使用此属性,字节流 传入的对象不能是慢速搜索或远程搜索

此功能涉及额外的文件复制/删除

注意最低要求。或者,您需要对文件进行后期处理,以将
moov
框移到开头

另见:


渐进式下载要求 MOOV框在MPEG-4文件的MdAT框之前,这通常需要文件生成时的额外努力,而这不是媒体基础的默认行为。

媒体基金会介绍处理这个问题:

mpeg4媒体接收器的默认行为是在 “mdat”框。设置此属性将导致生成的文件写入 “mdat”框前面的“moov”

为了让mpeg4接收器使用此属性,字节流 传入的对象不能是慢速搜索或远程搜索

此功能涉及额外的文件复制/删除

注意最低要求。或者,您需要对文件进行后期处理,以将
moov
框移到开头

另见:


渐进式下载要求 MOOV框在MPEG-4文件的MdAT框之前,这通常需要文件生成时的额外努力,而这不是媒体基础的默认行为。

媒体基金会介绍处理这个问题:

mpeg4媒体接收器的默认行为是在 “mdat”框。设置此属性将导致生成的文件写入 “mdat”框前面的“moov”

为了让mpeg4接收器使用此属性,字节流 传入的对象不能是慢速搜索或远程搜索

此功能涉及额外的文件复制/删除

注意最低要求。或者,您需要对文件进行后期处理,以将
moov
框移到开头

另见:


渐进式下载要求 MOOV框在MPEG-4文件的MdAT框之前,这通常需要文件生成时的额外努力,而这不是媒体基础的默认行为。

媒体基金会介绍处理这个问题:

mpeg4媒体接收器的默认行为是在 “mdat”框。设置此属性将导致生成的文件写入 “mdat”框前面的“moov”

为了让mpeg4接收器使用此属性,字节流 传入的对象不能是慢速搜索或远程搜索

此功能涉及额外的文件复制/删除

注意最低要求。或者,您需要对文件进行后期处理,以将
moov
框移到开头

另见:


谢谢,该标志在我的情况下不起作用,我最终编写了一个小型MP4解析器,并手动将MOOV移动到MDAT之前(也更改STCO的偏移量)。谢谢,该标志在我的情况下不起作用,我最终编写了一个小型MP4解析器,并手动将MOOV移动到MDAT之前(也更改STCO的偏移量)。谢谢,该标志在我的情况下不起作用,我最终编写了一个MP4的小型解析器,并手动将MOOV移动到MDAT之前(也更改STCO的偏移量)。谢谢,该标志在我的情况下不起作用,我最终编写了一个MP4的小型解析器,并手动将MOOV移动到MDAT之前(也更改STCO的偏移量)