V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yodhcn
V2EX  ›  程序员

请教下,怎么用 ffprobe 查看音频文件的 "位深" ? bits_per_raw_sample = N/A; bits_per_sample = 0 是啥情况?

  •  
  •   yodhcn ·
    yodhcn · 2021-01-27 21:34:48 +08:00 · 1922 次点击
    这是一个创建于 1407 天前的主题,其中的信息可能已经有所发展或是发生改变。
    用 ffprobe 查看音频文件的信息时,发现两个看不懂的数据项,`bits_per_raw_sample` 和 `bits_per_sample` 有什么区别?

    出现
    bits_per_raw_sample = N/A
    bits_per_sample = 0
    又意味着什么?

    据我了解,应有公式:比特率 = 采样率 * 位深 * 声道数

    用 `MPC-BE` 这个软件检查某些 MP3 文件的信息时,也会出现不显示 "位深" 的情况,
    这是 "位深" 低于 16bit 时就没有必要看了的意思吗?

    另外,位深、采样率、比特率等,这些值,哪一个最能反映音质?
    7 条回复    2021-01-28 12:03:20 +08:00
    no1xsyzy
        1
    no1xsyzy  
       2021-01-27 22:46:00 +08:00
    MPC-BE 我记得是基于 LavFilter,而 Lav 又是基于 ffmpeg……
    比特率还要考虑到压缩,尤其 mp3 是有损压缩

    决定音质的因素很多,如果拿 5 块钱爆音麦录 96kHz 48bit,音质也好不到哪去。何况单就文件来说,你可以随便升降采样
    就算问,在降采样的过程中降低哪个对音质还原度影响最大,那也是个偏微分方程。
    何况这三个值还有联动关系……
    具体你只能凭你的耳朵。
    如果你是想自动挑选,无脑选比特率大的吧,未必最好,但最让你感觉舒服,“我选了比特率最大的,其他多半只会更差吧”这样安慰自己。
    AX5N
        2
    AX5N  
       2021-01-27 22:47:50 +08:00
    理论上哪个都能反应出音质,实际上哪个都反应不出音质。

    人耳听不出位深高低的区别,采样率早已超出人耳极限,比特率和压缩算法有关,不同算法的比特率没有比较价值。
    mmlmml1
        3
    mmlmml1  
       2021-01-27 23:36:27 +08:00
    这三个都不能反映音质。举个极端的例子,一段原始为 16kHz/16bit 音频,将它先压缩到 8kHz/8bit 再 upscale 到 96kHz/24bit,处理前和处理后的哪个更好?

    更加准确的做法有,分析频谱图,分析 SNR 等等,而不是简单分析这几项数据。
    mmlmml1
        4
    mmlmml1  
       2021-01-27 23:39:33 +08:00
    另外,bits_per_raw_sample 表示每个样本在文件中占用的位数,bits_per_sample 表示每个样本实际的位数。举个例子:一个样本可以是 16 位的( bits_per_sample ),但在文件中占用 24 位( bits_per_raw_sample ),剩下的 8 位全部为 0 。
    Jirajine
        5
    Jirajine  
       2021-01-27 23:41:09 +08:00 via Android
    你可以理解为瓶子里装水,参数越高代表瓶子越大,“能够”装下更多地水。但实际装的水有多少,没有任何参数能够直接反映出。
    scarllium
        6
    scarllium  
       2021-01-28 10:33:42 +08:00   ❤️ 1
    位深是针对无损压缩的 wav 等格式,mp3/aac 有损格式的位深不是恒定的
    msg7086
        7
    msg7086  
       2021-01-28 12:03:20 +08:00 via Android   ❤️ 1
    有损压缩的位深没有具体意义。位深是指数据的精度,有损压缩中,数据都变了,还谈什么精度。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1000 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 21:33 · PVG 05:33 · LAX 13:33 · JFK 16:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.