我目前正在使用ubuntu 10.04和ffmpeg。这是我的情况:
我有这个命令创建一个窗口并在其中再现一个视频:
video_handle/static/simpleVRML media/generated/video1330515739317/chunk0.avi
我需要录制正在该视频容器中显示的视频并将其保存到视频文件中; webm是首选。视频长度恰好是1秒,fps是29.97
我已经尝试过这个命令:
ffmpeg -loglevel panic -f x11grab -s 640x480 -r 25 -i :0.0+0,50 -vframes 30 -sameq -y out.mpg >/dev/null 2>&1
它实际上会在容器出现时记录屏幕,但我需要输出非常准确
任何想法???
答案 0 :(得分:1)
这是一个解决方案:从X11捕获到一系列静止图像,添加几秒填充;浏览静止图像并删除不需要的图像;将好的帧集编码成视频。这有利于无损,至少在捕获阶段;你的例子编码为有损的MPEG格式。
捕获一系列静止图像:
mkdir images
ffmpeg -f x11grab -s 640x480 -r 25 -i :0.0+0,50 -vframes 90 -y images/out%04d.bmp
由于您使用的是Ubuntu Linux,因此您可以使用以下方式浏览图像:
gnome-open images
这将包含一系列图像,文件名为out0001.bmp,out0002.bmp等。删除不需要的图像。最后,编码WebM文件:
ffmpeg -i images/out%04d.bmp -y out.webm
请注意,这假设您使用libvpx支持构建了FFmpeg。