首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用FFMPEG提取无损图像序列,并将其传输到mozjpeg的cjpeg?

如何利用FFMPEG提取无损图像序列,并将其传输到mozjpeg的cjpeg?
EN

Stack Overflow用户
提问于 2019-11-07 12:00:51
回答 1查看 376关注 0票数 0

我知道它可以在imagemagick下运行,但是mozjpeg生成的图像要小得多,这是可取的。

我希望视频的所有帧都被mozjpeg.提取并转换成JPEG。

我试过的是:

代码语言:javascript
复制
$ ind = 1
$ ffmpeg -hide_banner -ss 00:00:10 -i IN.webm -t 00:00:02 -r 24 -c:v bmp -f image2pipe pipe:1 | \
    cjpeg - workDir/$((ind++)).jpeg

错误消息:

代码语言:javascript
复制
av_interleaved_write_frame(): Broken pipe time=00:00:00.00 bitrate=N/A speed=   0x    

Error writing trailer of pipe:1: Broken pipe

frame=    1 fps=0.0 q=-0.0 Lsize=    6075kB time=00:00:00.04 bitrate=1194394.4kbits/s speed=0.0765x    

video:6075kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%

Conversion failed!
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-07 19:08:56

cjpeg接受stdin管道输入,但似乎一次不接受多个输入。

输出图像,然后用cjpeg循环

代码语言:javascript
复制
ffmpeg -ss 00:00:10 -i IN.webm -t 00:00:02 %04d.bmp
for f in *.bmp; do cjpeg -quality 75 -outfile "workDir/${f%.bmp}.jpg" "$f"; done

不需要-r 24:如果强制使用与输入不匹配的任意帧速率,则可能导致删除或重复帧。省略-rffmpeg将输出所有帧。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58748355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档