关于视频分析和关键帧提取的开源库
Open sourced library on video analysis and key frame extraction
我是多媒体分析领域的新手。
最近,我正在做一个基于 AngularJS 和 [= 的项目22=]Flask框架,我想在本站实现以下功能:
- 用户可以将视频剪切成段,网站可以合并所有
将选定的片段合成一个新视频;
- 网站可以提取新视频的关键帧
由第一步生成;
- 玩家可以获得一个'start time'参数和一个'end time'参数
(或 'duration' 参数)由用户给出并根据播放剪辑
用户输入参数。
目前,我搜索了几个工具,如JWPlayer、FFMpeg。但我真的不知道如何使用它们以及它们是否是满足这些要求的最佳工具。我想知道你是否可以给我一些建议。
[2015 年 12 月 10 日更新]
我通过JavaScript制作了一个进度条,可以满足第三个要求,所以视频分析部分成为最难的部分。我还找到了一些其他工具或库,例如 Video.js、OpenCV、VLC等。谁能给一些开源视频分析工具的建议?如果能与Python服务器配合使用就更好了。
谢谢。
对于关键帧快照,您可以使用像 https://jwplayer.electroteque.org/snapshot
这样的插件
还有其他拍摄快照的方法,但并不十分简单。
如果您正在开发用户可以下载的文件,FFMpeg 是极少数的选择之一,如果您有兴趣创建服务器端代码来操作视频文件。您还可以使用 Flip Factory、Carbon Coder 或更好的工具——encoding.com
或者,您可以只使用 JW Player 的 API 在特定时间加载您想要的视频。即:
jwplayer('yourDiv').pause();
jwplayer('yourDiv').setup({ file: secondfile.mp4 });
jwplayer('yourDiv').seek(seekVariable);
etc...
另一种选择是使用 http://popcornjs.org/ which gives you some more flexibility in manipulating the native HTML5 video element, allowing you to fire events off at specific time markers, like in this really cool demo which shows just one powerful way it can be implemented. Though not quite what you might need, it's something to keep in mind. http://hello.processing.org/editor/
(编辑)更多信息...
要安装 ffmpeg 和 运行:
http://www.hongkiat.com/blog/ffmpeg-guide/
要创建您自己的视频播放器:
https://github.com/chelyaev/ffmpeg-tutorial
官方文档:https://ffmpeg.org/documentation.html
编码教程:
https://www.virag.si/2012/01/web-video-encoding-tutorial-with-ffmpeg-0-9/
创建视频悬停滚动预览的精彩教程:
https://www.binpress.com/tutorial/how-to-generate-video-previews-with-ffmpeg/138
和演示:http://jsfiddle.net/r6wz0nz6/2/
还要注意社区中的大分支 Libav,我认为这是另一种选择:http://blog.pkh.me/p/13-the-ffmpeg-libav-situation.html
我是多媒体分析领域的新手。
最近,我正在做一个基于 AngularJS 和 [= 的项目22=]Flask框架,我想在本站实现以下功能:
- 用户可以将视频剪切成段,网站可以合并所有 将选定的片段合成一个新视频;
- 网站可以提取新视频的关键帧 由第一步生成;
- 玩家可以获得一个'start time'参数和一个'end time'参数 (或 'duration' 参数)由用户给出并根据播放剪辑 用户输入参数。
目前,我搜索了几个工具,如JWPlayer、FFMpeg。但我真的不知道如何使用它们以及它们是否是满足这些要求的最佳工具。我想知道你是否可以给我一些建议。
[2015 年 12 月 10 日更新]
我通过JavaScript制作了一个进度条,可以满足第三个要求,所以视频分析部分成为最难的部分。我还找到了一些其他工具或库,例如 Video.js、OpenCV、VLC等。谁能给一些开源视频分析工具的建议?如果能与Python服务器配合使用就更好了。
谢谢。
对于关键帧快照,您可以使用像 https://jwplayer.electroteque.org/snapshot
这样的插件还有其他拍摄快照的方法,但并不十分简单。
如果您正在开发用户可以下载的文件,FFMpeg 是极少数的选择之一,如果您有兴趣创建服务器端代码来操作视频文件。您还可以使用 Flip Factory、Carbon Coder 或更好的工具——encoding.com
或者,您可以只使用 JW Player 的 API 在特定时间加载您想要的视频。即:
jwplayer('yourDiv').pause();
jwplayer('yourDiv').setup({ file: secondfile.mp4 });
jwplayer('yourDiv').seek(seekVariable);
etc...
另一种选择是使用 http://popcornjs.org/ which gives you some more flexibility in manipulating the native HTML5 video element, allowing you to fire events off at specific time markers, like in this really cool demo which shows just one powerful way it can be implemented. Though not quite what you might need, it's something to keep in mind. http://hello.processing.org/editor/
(编辑)更多信息...
要安装 ffmpeg 和 运行: http://www.hongkiat.com/blog/ffmpeg-guide/
要创建您自己的视频播放器: https://github.com/chelyaev/ffmpeg-tutorial
官方文档:https://ffmpeg.org/documentation.html
编码教程: https://www.virag.si/2012/01/web-video-encoding-tutorial-with-ffmpeg-0-9/
创建视频悬停滚动预览的精彩教程: https://www.binpress.com/tutorial/how-to-generate-video-previews-with-ffmpeg/138 和演示:http://jsfiddle.net/r6wz0nz6/2/
还要注意社区中的大分支 Libav,我认为这是另一种选择:http://blog.pkh.me/p/13-the-ffmpeg-libav-situation.html