所以我正在使用pngs构建视频。由于ffmpeg
制作视频并不是太难,但是我制作的大多数视频都能很好地播放,并且向后播放非常不稳定。
使用名为MPEG Streamclip和Handbrake的程序,我设法将我的视频转换为向前和向后播放的视频。但现在我无法弄清楚如何将正确的选项传递给ffmpeg
来复制此视频。
使用ffprobe
我有一些好的和坏的视频输出。我错过了哪些选择?
视频错误:
$ ffprobe tea_ffmpeg.mov
ffprobe version 3.0 Copyright (c) 2007-2016 the FFmpeg developers
built with Apple LLVM version 7.0.2 (clang-700.1.81)
configuration: --prefix=/usr/local/Cellar/ffmpeg/3.0 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-vda
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'tea_ffmpeg.mov':
Metadata:
major_brand : qt
minor_version : 512
compatible_brands: qt
encoder : Lavf57.25.100
Duration: 00:00:08.04, start: 0.000000, bitrate: 1140 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 676x450 [SAR 675:676 DAR 3:2], 1138 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
Metadata:
handler_name : DataHandler
encoder : Lavc57.24.102 libx264
好视频:
$ ffprobe test.mov
ffprobe version 3.0 Copyright (c) 2007-2016 the FFmpeg developers
built with Apple LLVM version 7.0.2 (clang-700.1.81)
configuration: --prefix=/usr/local/Cellar/ffmpeg/3.0 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-vda
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mov':
Metadata:
major_brand : qt
minor_version : 537199360
compatible_brands: qt
creation_time : 2016-03-09 15:16:37
Duration: 00:00:08.04, start: 0.000000, bitrate: 2650 kb/s
Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, smpte170m/smpte170m/bt709), 674x450, 2646 kb/s, 25 fps, 25 tbr, 25k tbn, 50k tbc (default)
Metadata:
creation_time : 2016-03-09 15:16:47
handler_name : Apple Alias Data Handler
encoder : H.264
到目前为止FFMPEG命令:
ffmpeg -y -i 'pngs/tea-%03d.png' -vf scale=674:-2 -vcodec libx264 -pix_fmt yuv420p -r 25 tea_ffmpeg.mov
我理解mov vs mp4应该只是一个容器规格,但mov是我开始工作的第一个。我非常乐意使用mp4。
答案 0 :(得分:2)
最突出的是个人资料。所以,
def count(f, s):
l = len(s)
if l > 1:
mid = l / 2
return count(f, s[:mid]) + count(f, s[mid:])
elif l == 1 and s[0] == f:
return 1
return 0
为了更安全,您可以使用基线配置文件和较小的GOP大小(以一定的成本计算文件大小)
ffmpeg -y -i 'pngs/tea-%03d.png' -vf scale=674:-2 -vcodec libx264 -profile:v main -pix_fmt yuv420p -r 25 tea_ffmpeg.mov