我想要做的是将视频转换为将在Android中播放的mp4格式.
我已经浏览了http://developer.android.com/guide/appendix/media-formats.html
我正在设置以下选项
-vcodec libx264 -vprofile baseline -acodec libfaac -ar 44100 -ac 1 -ab 128k
Run Code Online (Sandbox Code Playgroud)
但我收到错误消息"抱歉,此视频无法流式传输到此设备"
我使用videoJS http://video-js.zencoder.com/oceans-clip.mp4在Android浏览器中播放视频,它运行正常.
我下载视频oceans-clip.mp4并尝试使用极简主义选项进行转换
-y -i working.mp4 -vprofile baseline pleasework.mp4
Run Code Online (Sandbox Code Playgroud)
但我收到相同的错误消息.
以下是视频文件的FFMPEG信息转储
Working.mp4
Array
(
[0] => ffmpeg version N-40229-g24e3f44-syslint Copyright (c) 2000-2012 the FFmpeg developers
[1] => built on Apr 29 2012 22:01:41 with gcc 4.1.2 20080704 (Red Hat 4.1.2-52)
[2] => configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-version3 --extra-version=syslint
[3] …Run Code Online (Sandbox Code Playgroud) 我看到很多关于将moov原子从MP4视频容器的末端重新定位到开头的问题,以使视频"网络优化"或更容易流式传输.似乎大多数工具在首次编码视频时都需要一个明确的选项才能执行此操作(如果它完全可用).
如果将原子置于开头使得流式传输工作更好,并且事后做到这一点成本很高,为什么我最初想要用原子对视频进行编码?有什么好处?
我正在使用android中的实时设备到服务器流.我能够在服务器上以字节为单位发送数据,但是当我在服务器VLC上录制期间播放该文件时,表示未找到MOOV原子.经过大量的解决方法后,我发现mp4文件的MOOV原子最终生成了.但我必须在服务器上播放该文件,而录制意味着直播.我浏览了SPYDROID和SIPDROID的源代码,但没有它们正在工作.我尝试使用FFMPEG在服务器端添加move atom 但没有取得任何成功.任何人都知道如何实现这一目标.Thanx提前.
我正在使用c ++中的ffmpeg将一些h264视频编码到mp4容器中。但是结果视频将moov原子(或元数据?)放在视频文件的末尾,这对于Internet流传输是不利的。那么如何将moov原子的位置设置在前面呢?
是否有任何命令行工具将h264/mp4索引移动到开头,以便flash可以通过网络更快地开始播放文件?我知道QTIndexSwapper工具,但它不是命令行.
或者是否有一个ffmpeg命令在编码期间将索引放在前面?
谢谢.
嗨,最近我使用 FFMpeg 将一些视频转换为 MP4,但是当我尝试流式传输此视频文件时,播放器需要完全加载文件,直到它开始播放为止,我正在尝试找到一种方法让它开始播放文件从一开始就继续加载。我正在使用此 FFMpeg 命令进行转换:
ffmpeg -i input.mp4 -vcodec libx264 -vpre default -crf 28 -ac 1 -ar 44100 -b 284k -ab 70k -r 15 -s 640x360 output.mp4 2>&1
Run Code Online (Sandbox Code Playgroud)