我尝试了许多不同的方法,试图创建一个10秒的视频文件从一个图像文件,并使用了所有相同的开关和编解码器,因为我曾经编码我的视频文件。但是,当我使用complex_filter以外的任何东西将两者连接起来(这会强制视频通过另一轮转码)时,结果视频文件是损坏的。我相信这是由于ffmpeg从图像中创建的10秒剪辑的固有差异,但一定有一些方法可以让它像我的视频文件一样编码。
下面是我用来将图像转换成10s视频剪辑的命令(我添加了一个静音mp3,因为我认为从视频开始的音频流会把事情搞砸):
ffmpeg -loop 1 -i splash.jpg -i silence.mp3 -c:v libx264 -preset slow -g 60 -r 29.97 -crf 16 -c:a libfdk_aac -b:a 256k -cutoff 18000 -t 5 tmpoutput1.mp4
下面是我用来编码视频的命令:
ffmpeg -i input.f4v -c:v libx264 -preset slow -g 60 -r 29.97 -crf 16 -c:a libfdk_aac -b:a 256k -cutoff 18000 tmpoutput2.mp4
下面是我用来将它们都转换为。ts的命令,以便为concat做好准备:
ffmpeg -i tmpoutput1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts tmpoutput1.ts
ffmpeg -i "concat:tmpoutput1.ts|tmpoutput2.ts" -c copy output.mp4
同样,问题是,我已经对所有代码进行了一次转码,我应该能够以足够相似的结构对其进行转码,这样它就可以连接起来,而不会在末尾添加另一个转码。
以前有没有人用ffmpeg成功地在视频前面添加了全帧飞溅图形?我正在使用一个全新的ffmpeg交叉编译,因为我认为这可能是一个问题,但唉,这个问题在更新后仍然存在。
谢了!
下面是一个使用ffmpeg的过程,它只对源视频使用1个转码:
>
将图像循环到与源视频格式相同的静音音轨视频中。包括任何滤镜(例如褪色)
c:\ffmpeg\ffmpeg.exe -loop 1 -i "test_image.png" -i silence.mp3 -vf "fade=t=in:st=0:d=0.5,fade=t=out:st=4.5:d=0.5,scale=1920x1080" -c:v libx264 -preset slow -profile:v high -r 29.97 -crf 16 -pix_fmt yuv420p -c:a libfdk_aac -b:a 256k -cutoff 18000 -t 5 "~tmptest_final_fade1.mp4"
[可选]剪切源视频,包括任何筛选器
c:\ffmpeg\ffmpeg.exe -y -i "test_source.mp4" -af "afade=t=in:st=0:d=0.5,afade=t=out:st=29.5:d=0.5" -vf "fade=t=in:st=0:d=0.5,fade=t=out:st=29.5:d=0.5" -c:v libx264 -preset slow -profile:v high -r 29.97 -crf 16 -pix_fmt yuv420p -c:a libfdk_aac -b:a 256k -cutoff 18000 -ss 0 -t 30 -shortest "~tmptest_final_fade2.mp4"
[如果源已经是mpegts,则不需要]如果源不是可连接的格式,请将其转换为mpegts。这个使用mp4作为源格式的例子是无损和快速的。
c:\ffmpeg\ffmpeg.exe -i "~tmptest_final_fade1.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts "~tmptest_final1.ts"
c:\ffmpeg\ffmpeg.exe -i "~tmptest_final_fade2.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts "~tmptest_final2.ts"
连接您的2个视频文件和可选地改变包装回MP4。这一步也是无损和快速的。
c:\ffmpeg\ffmpeg.exe -y -i "concat:~tmptest_final_fade1.ts|~tmptest_final_fade2.ts" -c copy -bsf:a aac_adtstoasc "test_final.mp4"
正在尝试从图像(1080p.png)音乐(320kbmp3)为youtube制作视频。 但转化是缓慢的。有什么想法吗,它是如何使优化的<代码>E:\U测试
我正在尝试使用ffmpeg逐帧编写视频,如下所述:http://zulko.github.io/blog/2013/09/27/read-and-write-video-frames-in-python-using-ffmpeg/ 然而,我总是得到一个OSError:[Errno 22]无效参数。我在Windows7上使用Python 3.4。代码如下: 任何帮助都非常感谢。 编辑:根据此处的要求
crf 20是相当高的质量,接近100%,恢复的帧应该接近原始。视频播放器暂停帧显示足够的质量。(虽然我不能说它是否在关键帧上) ffmpeg版本信息:
我想把一个颜色覆盖(蓝色,红色或绿色或十六进制值)在一个视频给它一个Instagram滤镜一样的效果。 我认为应该是这样的: 也可以使用 但我发现一个错误: 我还尝试使用,但这并没有给它一个红色(它把红色去掉了)。 我做错了什么?
在用图像创建mp4幻灯片时,我在网上为zoompan提供了一些示例,但我仍然没有完全掌握如何使它们从图像中的某个位置开始。下面是典型的命令: ffmpeg-i image-000。jpg-filter_complex“color=c=black:r=60:s=1920x1080[demo];[0:v]格式=pix_fmts=yuva420p,比例=8000:-1,zoompan=z='min(zo