ffmpeg - 如何将章节添加到 ogg 文件?

标签 ffmpeg media multimedia ogg oggvorbis

我正在尝试将章节添加到包含 vorbis 音频的 ogg 文件中。

来自 this link我复制了以下 ffmpeg 命令。

ffmpeg -threads auto -y -i in.ogg -i metadata_OGG.txt -map_metadata 1 -codec copy out_METADATA.ogg

我的 metadata_OGG.txt 文件如下所示。
CHAPTER00=00:00:00.000
CHAPTER00NAME=Chapter 01
CHAPTER01=00:00:05.000
CHAPTER01NAME=Chapter 02
CHAPTER02=00:00:10.000
CHAPTER02NAME=Chapter 03

我收到以下错误。
[ogg @ 00000000006d6900] Unsupported codec id in stream 0
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument

但是如果我改变 -codec copy-acodec copy ffmpeg 没有错误,但是文本文件被转换为视频。即输出文件将有一个静态视频帧,其中包含 metadata_OGG.txt 的文本。此外,我在转换过程中观察到以下日志消息。
  Stream #1:0 -> #0:0 (ansi (native) -> theora (libtheora))
  Stream #0:0 -> #0:1 (copy)

有人请告诉我这里出了什么问题吗?

另外,我想知道将章节添加到 ogg 的正确方法是什么。我也搜索了一些工具。我没有得到任何东西。

最佳答案

我发现了这个问题。

要使 ffmpeg 正常工作,元数据文件应具有以下 header 。

;FFMETADATA1

我按照 ffmpeg documentation for metadata 中给出的步骤进行操作.

但问题并没有完全解决。

通过上述步骤,我可以将元数据添加到 mp4、mkv 和其他容器文件,但不能添加到 ogg 文件。我不确定 ffmpeg 是否支持向 ogg 文件添加章节。

关于ffmpeg - 如何将章节添加到 ogg 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49364269/

相关文章:

ffmpeg - 为什么索尼的 .mts 文件这么大?

c++ - 如何检查麦克风和扬声器是否来自同一个声卡?

android - 如何在单个.mp4 ffmpeg android中合并多个.mp4文件

linux - 使用 "top"命令了解 Linux 中的 CPU 使用情况以了解 VLC 使用情况

android - mediaplayer.release()不起作用

css - 错误的 css 媒体语法

java - oracle ordim 为图像添加水印

ffmpeg - 在 Mpeg 流中插入用户数据

performance - ffmpeg 游戏中时光倒流非常慢

c# - 将声音发送到不同的音频设备