Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Audio 在linux上使用ffmpeg合并png和jpeg图像和音频文件,创建幻灯片视频_Audio_Video_Ffmpeg_Slideshow - Fatal编程技术网

Audio 在linux上使用ffmpeg合并png和jpeg图像和音频文件,创建幻灯片视频

Audio 在linux上使用ffmpeg合并png和jpeg图像和音频文件,创建幻灯片视频,audio,video,ffmpeg,slideshow,Audio,Video,Ffmpeg,Slideshow,我正在使用png、jpeg和音频文件创建幻灯片视频。我遇到的问题是,我一次只能使用png或jpeg,但我想同时使用这两种格式,所以我如何才能做到这一点?这里是我正在尝试的命令列表。请帮我看看这个 /usr/bin/ffmpeg '-framerate' '1/27' '-pattern_type' 'glob' '-i' '/var/www/html/phpvideotoolkit-v2-master/examples/media/images/*.jpg' '-i' '/var/www/htm

我正在使用png、jpeg和音频文件创建幻灯片视频。我遇到的问题是,我一次只能使用png或jpeg,但我想同时使用这两种格式,所以我如何才能做到这一点?这里是我正在尝试的命令列表。请帮我看看这个

/usr/bin/ffmpeg '-framerate' '1/27' '-pattern_type' 'glob' '-i' '/var/www/html/phpvideotoolkit-v2-master/examples/media/images/*.jpg' '-i' '/var/www/html/phpvideotoolkit-v2-master/examples/media/1.mp3' '-pix_fmt' 'yuv420p' '-shortest' '-y' '-q' '4' '-strict' 'experimental' '-threads' '1' '-acodec' 'aac' '-ar' '22050' '-vcodec' 'mpeg4' '-s' '320x240' '/var/www/html/ffmpe/1.mp4' 
通过这样做,我只能创建jpg图像视频,但我想两者兼而有之


我也使用了concat命令,但没有得到任何输出。我读过一些关于过滤器的文章,但是我不知道如何使用图像,所以请你帮我解决这个问题。

FFmpeg支持图像序列的管道,所以如果你启用扩展全局绑定,那么很简单,可以让所有文件以
.jpg
.png
结尾。但是,如果您将多种格式混合传递给FFmpeg,则FFmpeg似乎会感到困惑,因此最好将所有图像(在本例中使用ImageMagick)转换为PNG,然后再传递它们

如您所见,所有图像,甚至那些已经是PNG的图像,都将被转换。这有点低效,但除非你有很多大图像,否则不会太糟糕。
IM命令中的
-quality 01
确保图像的压缩程度最低。当FFmpeg将立即解压缩时,在压缩上花费大量时间和精力是没有意义的

shopt -s extglob

convert \
/var/www/html/phpvideotoolkit-v2-master\
/examples/media/images/*+(.jpg|.png) -quality 01 png:- |\
  /usr/bin/ffmpeg -y -framerate 1/27 \
  -f image2pipe -i - \
  -i /var/www/html/phpvideotoolkit-v2-master/examples/media/1.mp3 \
  -pix_fmt yuv420p \
  -shortest -q 4 -strict experimental -threads 1 \
  -acodec aac -ar 22050 \
  -vcodec mpeg4 -s 320x240 /var/www/html/ffmpe/1.mp4 

FFmpeg支持图像序列的管道化,因此,如果启用扩展全局绑定,则可以非常简单地将所有文件以
.jpg
.png
结尾。但是,如果您将多种格式混合传递给FFmpeg,则FFmpeg似乎会感到困惑,因此最好将所有图像(在本例中使用ImageMagick)转换为PNG,然后再传递它们

如您所见,所有图像,甚至那些已经是PNG的图像,都将被转换。这有点低效,但除非你有很多大图像,否则不会太糟糕。
IM命令中的
-quality 01
确保图像的压缩程度最低。当FFmpeg将立即解压缩时,在压缩上花费大量时间和精力是没有意义的

shopt -s extglob

convert \
/var/www/html/phpvideotoolkit-v2-master\
/examples/media/images/*+(.jpg|.png) -quality 01 png:- |\
  /usr/bin/ffmpeg -y -framerate 1/27 \
  -f image2pipe -i - \
  -i /var/www/html/phpvideotoolkit-v2-master/examples/media/1.mp3 \
  -pix_fmt yuv420p \
  -shortest -q 4 -strict experimental -threads 1 \
  -acodec aac -ar 22050 \
  -vcodec mpeg4 -s 320x240 /var/www/html/ffmpe/1.mp4 

谢谢@aksela我会尽力回复你的。谢谢@aksela我会尽力回复你的。