首页 > 解决方案 > 无法使用 FFMPEG CLI 将缩略图添加到 MP4

问题描述

在搜索了几个小时后,关于使用 CLI 将缩略图添加到 MP4 的最简单解决方案,我回到了开头的“FFMPEG”。虽然我一开始希望我能得到一个工作工具但没有,但我会坚持使用“FFMPEG”。

即使在更新存储库之后==> 同样的问题。

我遵循了官方文档中的确切代码,上面写着:

ffmpeg -i path/to/in.mp4 -i path/to/IMAGE.png -map 0 -map 1 -c copy -c:v:1 png -disposition:v:1 attached_pic path/to/out.mp4

以下错误日志显示:

Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
  Stream #1:0 -> #0:2 (mjpeg (native) -> png (native))
Press [q] to stop, [?] for help
[swscaler @ 0x1fd0860] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x1fd0860] No accelerated colorspace conversion found from yuv420p to rgb24.
[mp4 @ 0x1f747e0] track 1: codec frame size is not set
[mp4 @ 0x1f747e0] opus in MP4 support is experimental, add '-strict -2' if you want to use it.
Could not write header for output file #0 (incorrect codec parameters ?): Experimental feature
Error initializing output stream 0:2 -- 
Conversion failed!

我不知道如何解决这个问题。我阅读了网站的问题论坛,但没有发现类似的问题。所以我希望你们能伸出援手。

将考虑任何建议的编辑。

编辑1:

测试1:我从视频本身带来了一张图片(缩略图)并运行了命令。

Test2:我带来了一个独特的图像(缩略图),其分辨率与视频不同,但出现了相同的错误。

==>没用

编辑2:

第一的:

在将我的命令修复为这样之后, ffmpeg -i path/to/in.mp4 -i path/to/IMAGE.png -map 0 -map 1 -c copy -c:v:1 png -disposition:v:1 attached_pic -strict -2 path/to/out.mp4 我使用 VLC(视频播放器)查看了缩略图,所以它首先出现了。但是,当我用其他人替换视频和缩略图图像时,我运行了它运行平稳的命令,直到我再次使用 VLC 查看缩略图时,它才显示旧的缩略图图像,它似乎在“FFMPEG”过程中被缓存在某处。我不得不删除该文件夹并创建一个新文件夹以更新新的缩略图,但它再次“缓存”了第一个使用的缩略图并在 VLC 中显示。

这是 VLC 的问题还是“FFMPEG”正在做一些奇怪的事情?

第二:

在 VLC 中显示缩略图后,我想通过将其发送给 WhatsApp 上的联系人来测试此功能,但它没有显示。经过一番搜索,我意识到它可能与“og:image”元数据有关。有没有办法使用 CLI 编辑它?

第三:

此外,嵌入缩略图的视频无法在 Windows、iPhone 和 Android 上播放。当我使用 Windows 媒体播放器打开它时,它说

Windows Media Player 无法播放该文件。播放器可能不支持文件类型或可能不支持用于压缩文件的编解码器。

从这里我认为我必须与编解码器有关。

注意:缩略图显示在 Windows 文件资源管理器中(但不能播放视频)

你有什么主意吗?

标签: ffmpegraspberry-pimetadatathumbnailsmp4

解决方案


推荐阅读