将 2 张图片添加到具有持续时间的视频中? [复制]
Posted
技术标签:
【中文标题】将 2 张图片添加到具有持续时间的视频中? [复制]【英文标题】:Add 2 pictures to video with durations? [duplicate] 【发布时间】:2013-06-20 08:48:16 【问题描述】:我正在尝试使用 ffmpeg 将 2 个不同的图像添加到视频中。
image1.jpg 应显示电影的前 10 秒,youtubeLOL.png 应显示视频的后 6 分钟。
所以命令应该告诉我们重复图片以获得 6 分 10 秒的长度。我怎样才能做到这一点?我试过这个:
(它甚至不工作)
passthru("ffmpeg -f image2 -loop 1 -vframes 100 -i /home/psafari/public_html/youtube_images/movie_" . $id . ".jpg -vcodec mpeg4 /home/psafari/public_html/youtube_videos/movie_" . time().".avi");
这是输出:
FFmpeg version 0.6.5, Copyright (c) 2000-2010 the FFmpeg developers built on Jan 29 2012 17:52:15 with gcc 4.4.5 20110214 (Red Hat 4.4.5-6) configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --enable-avfilter --enable-avfilter-lavf --enable-libdc1394 --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau --enable-version3 --enable-x11grab libavutil 50.15. 1 / 50.15. 1 libavcodec 52.72. 2 / 52.72. 2 libavformat 52.64. 2 / 52.64. 2 libavdevice 52. 2. 0 / 52. 2. 0 libavfilter 1.19. 0 / 1.19. 0 libswscale 0.11. 0 / 0.11. 0 libpostproc 51. 2. 0 / 51. 2. 0
Invalid value '1' for option 'loop'
输出内存代码
MEncoder SVN-r31628-4.4.6 (C) 2000-2010 MPlayer Team
get_path("config") problem
success: format: 0 data: 0x0 - 0x1251b
libavformat file format detected.
[lavf] stream 0: video (h264), -vid 0
VIDEO: [H264] 540x800 24bpp 25.000 fps 116.3 kbps (14.2 kbyte/s)
[V] filefmt:44 fourcc:0x34363248 size:540x800 fps:25.000 ftime:=0.0400
videocodec: framecopy (540x800 24bpp fourcc=34363248)
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Pos: 0.0s 1f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.1s 2f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.1s 3f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.2s 4f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.2s 5f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.2s 6f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.3s 7f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.3s 8f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.4s 9f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.4s 10f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.4s 11f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.5s 12f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.5s 13f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.6s 14f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.6s 15f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.6s 16f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.7s 17f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.7s 18f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.8s 19f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.8s 20f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.8s 21f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.9s 22f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 0.9s 23f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 1.0s 24f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 1.0s 25f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
Pos: 1.0s 26f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [538:0]
Pos: 1.1s 27f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [518:0]
Pos: 1.1s 28f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [500:0]
Pos: 1.2s 29f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [483:0]
Pos: 1.2s 30f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [467:0]
Pos: 1.2s 31f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [452:0]
Pos: 1.3s 32f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [438:0]
Pos: 1.3s 33f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [425:0]
Pos: 1.4s 34f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [413:0]
Pos: 1.4s 35f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [401:0]
Pos: 1.4s 36f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [390:0]
Pos: 1.5s 37f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [380:0]
Pos: 1.5s 38f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [370:0]
Pos: 1.6s 39f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [360:0]
Pos: 1.6s 40f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [351:0]
Pos: 1.6s 41f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [343:0]
Pos: 1.7s 42f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [335:0]
Pos: 1.7s 43f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [327:0]
Pos: 1.8s 44f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [320:0]
Pos: 1.8s 45f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [313:0]
Pos: 1.8s 46f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [306:0]
Pos: 1.9s 47f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [300:0]
Pos: 1.9s 48f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [294:0]
Pos: 2.0s 49f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [288:0]
Pos: 2.0s 50f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [282:0]
Pos: 2.0s 51f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [277:0]
Pos: 2.1s 52f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [272:0]
Pos: 2.1s 53f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [266:0]
Pos: 2.2s 54f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [262:0]
Pos: 2.2s 55f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [257:0]
Pos: 2.2s 56f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [252:0]
Pos: 2.3s 57f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [248:0]
Pos: 2.3s 58f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [244:0]
Pos: 2.4s 59f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [240:0]
Pos: 2.4s 60f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [236:0]
Pos: 2.4s 61f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [232:0]
Pos: 2.5s 62f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [229:0]
Pos: 2.5s 63f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [225:0]
Pos: 2.6s 64f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [222:0]
Pos: 2.6s 65f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [218:0]
Pos: 2.6s 66f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [215:0]
Pos: 2.7s 67f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [212:0]
Pos: 2.7s 68f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [209:0]
Pos: 2.8s 69f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [206:0]
Pos: 2.8s 70f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [203:0]
Pos: 2.8s 71f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [200:0]
Pos: 2.9s 72f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [197:0]
Pos: 2.9s 73f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [195:0]
Pos: 3.0s 74f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [192:0]
Pos: 3.0s 75f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [190:0]
Pos: 3.0s 76f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [187:0]
Pos: 3.1s 77f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [185:0]
Pos: 3.1s 78f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [183:0]
Pos: 3.2s 79f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [180:0]
Pos: 3.2s 80f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [178:0]
Pos: 3.2s 81f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [176:0]
Pos: 3.3s 82f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [174:0]
Pos: 3.3s 83f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [172:0]
Pos: 3.4s 84f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [170:0]
Pos: 3.4s 85f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [168:0]
Pos: 3.4s 86f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [166:0]
Pos: 3.5s 87f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [164:0]
Pos: 3.5s 88f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [162:0]
Pos: 3.6s 89f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [161:0]
Pos: 3.6s 90f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [159:0]
Pos: 3.6s 91f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [157:0]
Pos: 3.7s 92f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [156:0]
Pos: 3.7s 93f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [154:0]
Pos: 3.8s 94f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [152:0]
Pos: 3.8s 95f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [151:0]
Pos: 3.8s 96f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [149:0]
Pos: 3.9s 97f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [148:0]
Pos: 3.9s 98f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [146:0]
Pos: 4.0s 99f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [145:0]
Pos: 4.0s 100f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [144:0]
Pos: 4.0s 101f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [142:0]
Pos: 4.1s 102f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [141:0]
Pos: 4.1s 103f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [140:0]
Pos: 4.2s 104f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [138:0]
Pos: 4.2s 105f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [137:0]
Pos: 4.2s 106f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [136:0]
Pos: 4.3s 107f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [135:0]
Pos: 4.3s 108f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [133:0]
Pos: 4.4s 109f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [132:0]
Pos: 4.4s 110f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [131:0]
Pos: 4.4s 111f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [130:0]
Pos: 4.5s 112f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [129:0]
Pos: 4.5s 113f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [128:0]
Pos: 4.6s 114f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [127:0]
Pos: 4.6s 115f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [126:0]
Pos: 4.6s 116f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [124:0]
Pos: 4.7s 117f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [123:0]
Pos: 4.7s 118f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [122:0]
Pos: 4.8s 119f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [121:0]
Pos: 4.8s 120f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [120:0]
Pos: 4.8s 121f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [119:0]
Pos: 4.9s 122f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [119:0]
Pos: 4.9s 123f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [118:0]
Pos: 5.0s 124f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [117:0]
Pos: 5.0s 125f (100%) 0.00fps Trem: 0min 0mb A-V:0.000 [116:0]
success: format: 0 data: 0x0 - 0x9daf8
libavformat file format detected.
[lavf] stream 0: video (h264), -vid 0
VIDEO: [H264] 640x400 24bpp 25.000 fps 21.8 kbps ( 2.7 kbyte/s)
[V] filefmt:44 fourcc:0x34363248 size:640x400 fps:25.000 ftime:=0.0400
videocodec: framecopy (540x800 24bpp fourcc=34363248)
videocodec: framecopy (640x400 24bpp fourcc=34363248)
All video files must have identical fps, resolution, and codec for -ovc copy.
Exiting...
【问题讨论】:
【参考方案1】:假设您有一组名为picture1、picture2 等的图像保存在磁盘的某个位置,您可以使用shell_exec 调用ffmpeg
ffmpeg 可以将您的图像转换为具有类似于此的语法的视频中的图像
ffmpeg -i picture1%d.jpg -vcodec mpeg4 myConvertedMovie.avi
问题是我认为不可能像您要求的那样单独设置每张图片的持续时间
编辑:
您可以使用 -loop 1 -vframes NUMBER_OF_FRAMES 设置持续时间 所以例如一个100帧的视频将是
ffmpeg -f image2 -loop 1 -vframes 100 -i /home/psafari/public_html/common/images/icon3.png -vcodec mpeg4 /home/psafari/public_html/" . time().".avi
对于第二个问题,我认为唯一的方法是将视频中的每张图片都转换成自己的长度,然后再将它们合并在一起。
【讨论】:
嗯.. 抱歉,-f image2
是格式,不是第二张图片
我已经检查了帖子,但我的答案没有改变。您应该为每个图像运行一次上述命令,然后再次运行 ffmpeg 以连接两个视频。我不知道为什么它甚至不适合你。再次,您可以发布错误消息吗?
@jesper - 一般来说,如果你说“它不工作”而不提供更多细节,那么你的对话者很难在不询问更多细节的情况下给你建议。最好从这里获取答案作为进一步探索的线索,而不是完善的解决方案——这是你的工作。如果某些事情没有按您的预期工作,请尝试提供一些关于为什么它不起作用的想法,并花一些额外的时间自己解决。 (+1 表示答案,-1 表示问题)。
好的,你试过在真正的shell中运行它吗?这里可能存在任何问题。如果它在 shell 中工作,那么尝试在 php exec 中运行另一个命令,看看是否有效。
你的ffmpeg版本过时了以上是关于将 2 张图片添加到具有持续时间的视频中? [复制]的主要内容,如果未能解决你的问题,请参考以下文章