linux - 用于具有立体声或多个音频流的媒体流的音频持续时间的特定 mediainfo 命令

标签 linux audio mediainfo

我通过以下命令获取文件中存在的音频的串联持续时间:

mediainfo --Output="Audio;%Duration%" "filename"

此命令将为我提供数字 130406130468,它是文件中存在的 2 个音频的串联持续时间。 使用以下命令:

mediainfo --Inform="Audio;%Duration/String1%" "filename"

持续时间采用“xxmn yys zzmsxxmn yys zzn”格式,其中 mn、s、ms 分别是分钟、秒和毫秒。对于此输出,它再次需要上下文级别解析,并且在使用 C 语言 进行解析时容易出错。 是否有任何特定命令可以分别获取单独音频流的音频持续时间。

最佳答案

只需在 MediaInfo 模板中添加分隔符即可。 例如:

mediainfo --Output="Audio;%Duration%\n" "filename"

(注意“\n”,它是表示“换行”的字符)

或者如果您想保留一行:

mediainfo --Output="Audio;%Duration%, " "filename"

还显示与持续时间相对应的 ID 可能更安全,例如

mediainfo --Output="Audio;Duration for track having ID %ID% is %Duration/String1%\n" "filename"

Jérôme,MediaInfo 开发人员。

关于linux - 用于具有立体声或多个音频流的媒体流的音频持续时间的特定 mediainfo 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52622674/

相关文章:

linux - 排除零后数组(长度未知)中每个唯一数字的概率分布

c++ - libudev 如何将 poll 与文件描述符一起使用

javascript - 使用 JavaScript 检测声音

audio - ffmpeg FLAC 24 位 96khz 到 16 位 48khz

powershell - 如何从 Mediainfo 中获取特定信息

linux - 为 Linux 托管服务器添加 MIME 类型 (GoDaddy)

C - 尝试在 linux 中构建一个简单的 shell 并在循环中使用 strtok、realloc 时遇到问题

java - 使用字符串变量作为我想要播放的声音的名称,Java (Android)

html5-video - 我如何(或是否可能)将 AVC 编解码器配置文件和级别转换为 MIME 编解码器定义?

inno-setup - 在 Inno Setup Pascal 脚本中使用 MediaInfo 库获取图像文件信息