我正在使用UWP平台构建视频服务应用程序,用户可以从该应用程序上传和观看视频。我使用Azure存储作为后端。
以下是使用场景:
video/mp4
块blob上传到Azure存储。视频文件在本地下载,以便由MediaElement播放。
但是,即使下载没有完全完成,我也希望它可用。
经过一些研究后,我发现QTIndexSwapper,ffmpeg -movflags faststart
和qt-faststart将MP4文件的元数据放在数据之前,因此可以进行流式传输。
Here is an MP4 video which has its metadata at start
and here is one which has it at the end
MediaElement与Web播放器具有相同的行为。
在UWP应用程序或Azure上实现它的最佳方法是什么?
Smooth Streaming Client SDK Extension能帮忙吗?
只要视频上传到Azure存储上以移动元数据,运行WebJob或类似内容会怎么样?
感谢您的时间,
乔治
答案 0 :(得分:1)
我最终使用ffmpeg repo中的qt-faststart
工具。
我创建了该代码的修改版本作为Windows运行时组件并在我的项目中使用它。它运作得很好。
以下是我撰写的关于Create ready to be streamed over the web videos in UWP Applications
的博客文章希望它有所帮助!