使用 ffmpeg 命令在视频中添加多个元数据

Add multiple metadata in video using ffmpeg command

添加单个元数据的命令运行良好

ffmpeg -i '/var/www/html/public/uploads/wp-video/akka.mov' -metadata kKeyContentIdentifier='com.apple.quicktime.content.identifier' '/var/www/html/public/uploads/video-thumb/updated-akka.mov'

添加多元数据命令,我像下面这样传递多元数据标签

ffmpeg -i '/var/www/html/public/uploads/wp-video/akka.mov' -metadata kKeyContentIdentifier='com.apple.quicktime.content.identifier' -metadata kKeyStillImageTime = 'com.apple.quicktime.still-image-time' -metadata kKeySpaceQuickTimeMetadata = 'mdta' '/var/www/html/public/uploads/video-thumb/updated-akka.mov'

它不起作用,有没有其他方法可以在命令中传递多个元数据?

试试这个

ffmpeg -i "/var/www/html/public/uploads/wp-video/akka.mov" -c copy -metadata kKeyContentIdentifier="com.apple.quicktime.content.identifier" -metadata kKeyStillImageTime="com.apple.quicktime.still-image-time" -metadata kKeySpaceQuickTimeMetadata="mdta" "/var/www/html/public/uploads/video-thumb/updated-akka.mov"

我用 " 替换了 ',添加了 -c copy 标志,最后删除了第二个和第三个 -metadata 声明中的空格。我不太确定是否有必要将 ' 替换为 " 但我过去经常在使用 ' 时遇到麻烦,因为它被读取为好像被转义而不是分隔符。我很确定你不应该在 '" 之外有空格,这就是我删除它们的原因。省略 -c copy 还会使 ffmpeg 使用标准预设重新编码文件,可能会给您带来不好的结果