用户可以上传任何电影(.mov .mpg .avi .flv等等)现在我想将这个文件从15秒缩短到25秒(部分只有10秒)并将这个小部分转换为FLV电影预览。
现在我有一些问题:
我应该将所有上传的电影转换为flv吗?或仅剪切部分和所有电影文件制作为zip?
如何在php 7中剪切此文件?可能吗 ?我找到了
ffmpeg -ss [start] -i in.mp4 -t [duration] -c copy out.mp4
但这只适用于mp4?
答案 0 :(得分:0)
对于HTML5,您可以输出各种格式以实现兼容性。例如,MP4中的H.264 + AAC,MP4中的H.265 / HEVC + AAC以及Webm中的VP9 + Opus:
ffmpeg -ss 30 -t 10 -i input \
-c:v libx264 -preset medium -crf 23 -pix_fmt yuv420p -c:a aac -movflags +faststart h264.mp4 \
-c:v libx265 -preset medium -crf 28 -pix_fmt yuv420p -c:a aac -movflags +faststart h265.mp4 \
-c:v libvpx-vp9 -crf 30 -b:v 2000k -c:a libopus vp9.webm
根据您的需要调整-preset
,-crf
,anf -b:v
。对于那些熟悉PHP的人来说,将这个实现到shell_exec
应该是微不足道的。