我正在使用 ffmpeg。
我可以通过以下命令从 rtsp 获取缩略图:
ffmpeg -itsoffset -4 -f rtsp -rtsp_transport tcp -i rtsp://fostv.com:554/test/smarttv_sample.ts.pac -vframes 1 -s 420x270 /home/guest/ffmpegsample.bmp
问题是我想要的是从我想要的位置获取缩略图。
如果是本地文件,我可以使用“-ss”选项来实现。如何使用流来实现这一点?
我想从视频开始 10 分钟后开始截取缩略图。
答案1
我按照下面的方法解决了这个问题
ffmpeg -ss 600 -f rtsp -rtsp_transport tcp -i rtsp://fostv.com:554/test/smarttv_sample.ts.pac -vframes 1 -s 420x270 /home/guest/ffmpegsample.bmp
有一个简单的方法:-)
答案2
最好的方法是在服务器端生成缩略图并单独传输。您可以尝试寻找未来 10 分钟的流,但请记住,服务器至少需要有 10 分钟的供稿存储和寻找流的能力(ffserver 也可以):
ffserver 是一个音频和视频流媒体服务器。它支持多种实时源、文件流和实时源的时间转换(您可以在每个实时源上查找过去的位置,前提是您在“ffserver.conf”中指定了足够大的源存储空间)。
这基本上取决于服务器能做什么。我不知道具体是什么参数(可能和 -ss 一样),但似乎服务器本身必须允许寻找 10 分钟后的未来才能实现这一点。