如何从 WebM 文件中提取音频

use*_*549 8 parsing mkv webm opus

我只想获取仅在 webm 文件中的音频文件(使用 opus 编解码器)。我尝试搜索什么是 webm 格式,如何解析,但我无法很好地获取信息。我检查webm格式来自mkv,那么我应该先检查mkv吗?

只有一个 github 代码,但我找不到如何解析 webm 音频的方法。 https://github.com/webmproject/libwebm/tree/master/webm_parser

小智 10

您确实需要MKVToolNix。其中包括另一个答案中的 mkvextract 工具。

MKVToolNix 实际上是一系列工具( mkvmerge, mkvinfo, mkvextract, mkvpropedit)。首先你问如何解析信息。您可以使用以下方式找到详细信息:

mkvinfo file.webm
mkvinfo file.webm -a
Run Code Online (Sandbox Code Playgroud)

第一个命令将解析整体结构。第二个给出了每帧的细节。如果您需要所有命令,请使用 --help 开关。

要提取音频,请执行以下操作

mkvextract file.webm tracks X:newfile.opus
Run Code Online (Sandbox Code Playgroud)

其中 X 是您之前从 mkvinfo 中识别出的轨道编号。Webm 和 MKV 可以有多个轨道。“newfile.opus”是您要创建的新文件,选择您想要的名称。

还有一个 mkvtoolnix gui,但我从未使用过。


Ant*_*ris 3

mkvextract可以为您提取音频,我建议您查看mkvtoolsnix 源代码

例如,您可以将音频从 WebM 文件提取到 Ogg Opus 文件中,如下所示:

$ mkvextract ~/audio/bubbles.webm tracks 0:audio.opus

Extracting track 0 with the CodecID 'A_OPUS' to the file 'audio.opus'. Container format: Ogg (Opus in Ogg)
Progress: 100%
Run Code Online (Sandbox Code Playgroud)