译:HTPC 音频食用指南
本文翻译自r/HTPC - AUDIO SETUP GUIDE;受限于本人水平,如有错误,请参考原文。(本文持续更新)
如何设置电脑 / 媒体设备的音频
在开始下面的设置部分之前,请先阅读音频格式和传输部分,以便理解所提到的术语和概念。
为了简单起见,后文中出现的术语 "HTPC " 可以指个人电脑和流媒体设备,如 Roku,Fire TV 等(盒子或者电视棒),除非有其他的注明。术语 " 音响系统 " 可以指 AV 功放、音频放大器、Soundbar、DAC、扬声器或耳机。
音频格式 / 编解码
来自 HTPC 的音频主要分为模拟和数字两种形式,我们在这里主要讨论的是数字音频。这些形式以 " 格式 "(Formats)或 “编解码器”(Codecs)来实现。简单起见,除非有注明,我们将在下文中使用 " 编解码器 " 这一术语。
音频可以有很多数字形式,但主要有以下两种。
以特定编解码器编码的音频,如杜比全景声 (Dolby Atmos), DTS, AAC 等。每个编解码器都有自己的带宽和支持的声道数量。一般情况下,无损(未压缩)编解码器比有损(压缩)编解码器的质量要好。正如你将读到的,你是否能听无损(Lossless) 与有损 (Lossy) 的编解码器,将取决于你使用的接口音频系统的支持情况。
以普遍的、未压缩的、非特定的编解码器编码的音频 —— 就是所谓的 PCM。PCM 是模拟信号的数字化方法,它与正在使用的编解码器无关。有时候会被作为默认设置使用(取决于应用程序),在其他时候,当某一个接口或声音系统不支持你想要播放的特定编解码器时,就会使用 PCM。比如说,你的音响系统并不支持 Atmos,因此你的 HTPC 会对 Atmos 进行解码,在其输出到音响系统之前对其进行单独的 PCM 声道编码。接下来我们在讲到设置时,会提出解决方案。
多样化的音响系统支持不同的编解码器。在研究一套系统时(如声屏障和 AV 接收机),首先应该了解其是否支持你需要的编解码器和接口(Interfaces)。
由于带宽的限制,对编解码器的接口支持也是不同的。请看下一节,每种接口能够支持哪些编解码器。一个非常常见的受限例子——使用 HDMI ARC 连接传输的编解码器 (其在显示器上被广泛用于音频回传),在正常情况下,HDMI ARC 只支持立体声 PCM 和有损 DD 5.1/DTS 5.1 传输。不过,在显示器和音响系统都支持的情况下,它可以使用一种被称为 “共同模式(Common Mode)”(例如 Dolby MAT 编码器) 的技术来支持有损 DD+,也能够使用杜比全景声的有损版本。检查你的设备说明书或者手册,看看有没有这个功能。
如果你将编解码器原封不动地发送到你的音响系统(以比特流的形式),你就不需要在 HTPC 上为它们提供音频驱动 / 软件。但是,如果你使用特定的编解码器对音频流进行解码,比如使用耳机接入或者为游戏重新编码音频流,你可能就需要驱动的帮助。
一些 (影片) 音轨会有多个编解码流,以利于播放兼容。例如,你可能会看到一个音轨中同时有杜比 TrueHD 和 DD,假设 TrueHD 不能被播放,那么就会尝试有损的 DD 版本。以下是你可能会遇到的编解码器:
PCM:无损。声道的数量取决于接口。可以通过光纤(Optical)/HDMI/HDMI ARC/Displayport/RCA/3.5mm 播放。
AAC/HE-AAC:有损,码率 <=320 Kbps。多达 48 个声道。
DD/AC-3:杜比数字(Dolby Digital);有损,码率 <=640 kbps。多达 5.1 个频道。非常普遍。可以通过光学 /HDMI/HDMI ARC 播放。
Dolby Digital Live:杜比数字实时编码;将 PC 多声道音频编码为有损的 5.1 16 位 /48kHz 640 Kbps DD 流,通过 S/PDIF 传输。在游戏中使用特定的声卡或修改过的 APO 驱动程序实现。
DTS Connect / Interactive:DTS 版的杜比数字实时编码。编码为有损的 5.1 24 位 /48kHz 1.5 Mbps DTS 流。
DTS:有损,码率 <=1.5 Mbps;多达 5.1 声道。非常普遍,DD 的竞争者。可以通过光纤 /HDMI/HDMI ARC 播放。
DD+/E-AC-3:杜比数字 plus;有损,码率 <=6 Mbps(蓝光上为 1.7)。高达 15.1 声道。可以通过全 HDMI 或 HDMI eARC 播放。一般通过 HDMI ARC 传输(同 DD/AC-3)。
杜比 TrueHD:无损,<=18 Mbps。多达 7.1 个声道。常见于物理媒体,流媒体不采用。可以通过全 HDMI 或 HDMI eARC 播放。DD 5.1 可通过光学 /HDMI ARC 播放。
DTS-HD HRA: 有损,码率 <=6Mbps。高达 7.1 声道。DD+ 竞争者。可以通过完整协议的 HDMI 和 eARC[1]播放。
DTS-HD MA:无损,码率 <=25.4 Mbps。多达 7.1 个声道。常见于物理媒体,流媒体不采用。TrueHD 的竞争者。可以通过 HDMI 和 eARC 播放。有损版本的 DTS 还支持光纤 /HDMI ARC 传输。
Dolby Atmos:环绕声版本的 TrueHD/DD+ 编解码器的元数据;无损 / 有损都有;支持高达 24.1.10 声道。黄金标准,无损的可以通过完整 HDMI 或 eARC 播放。有损 DD+ 版本可通过 HDMI ARC 播放。
DTS:X: 环绕声版本的 DTS-HD MA/DTS 编解码器的元数据;无损,高达 24.1.10 声道。黄金标准;Atmos 的竞争者。无损的可以通过全 HDMI 或 eARC 播放。有损的 DTS 可通过光纤 /HDMI ARC 传输。
按质量大小排序:Dolby Atmos/DTS:X > Dolby TrueHD/DTS-HD MA > DD+/DTS-HD HRA > DD/DTS > 立体声。
音频传输线材 / 接口
HDMI 1.3+(完整协议):数字 / 比特流,无损杜比 TrueHD/DTS-HD MA(Atmos/DTS:X);PCM:8 通道(1.x),32 通道(2.x)。
HDMI 1.4+(ARC):数字 / 比特流,有损的杜比数字,有损的 DTS,有损的杜比数字 +/Atmos(有时,如果硬件使用 Common Mode);PCM:2.0 通道。
HDMI 2.1+(eARC):数字 / 比特流,无损的 Dolby TrueHD/DTS-HD MA(Atmos/DTS:X);PCM:32 通道。
Displayport(原生):数字信号,必须两端都用 Displayport 连接;无法使用比特流传输;PCM:8 通道(1.0-1.3),32 通道(1.4 以上)。
Displayport(转换后):数字信号;要求设备端口 ->HDMI 电缆 / 适配器;比特流:支持转换 HDMI 后传输;PCM:8 通道。
光纤 /TOSLINK/RCA(橙色 / 黑色):数字信号,支持 S/PDIF 接口;有损杜比数字,有损 DTS;PCM:2.0 通道。
RCA(红 / 白 / 等):模拟信号;1 个通道 / 连接器(Connector);比特流 /PCM:无
3.5mm:模拟信号;1-2 个通道 / 连接器;比特流 /PCM:无
USB/ 蓝牙:数字。通道取决于连接的外部声音设备。由于蓝牙协议的延迟性较差,不建议将其用于传输视频内容的音频,详见下面的音频同步部分。
准备工作
硬件准备
我们有很多方法可以将 HTPC/ 媒体设备连接到音响系统和电视。比如说 HDMI、DisplayPort、光纤 /SPDIF、RCA 或者是 3.5mm。
关于电缆 / 适配器的选择建议,请参考 主贴 FAQ的这一部分。
情景一:将 HTPC 连接到音响系统,再将音响系统连接到电视。
在这种情况下,音响系统先获得音视频流,然后再将视频流传输给显示器。例如:HTPC(HDMI)-> 音响系统(HDMI)输入 -> 音响系统(HDMI)输出 -> 电视(HDMI)。
当音响系统支持直通的显示器所需要的视频分辨率时,此方法实现起来很容易,并保证了最大的音频兼容性:
- 将 HTPC 的主要 HDMI 输出连接到音响系统的 HDMI 输入,例如:HTPC(HDMI)-> 音响系统(HDMI)。如果只有一个 Displayport 接口,请使用 DP->HDMI 适配器。
- 音响系统的 HDMI 输出连接到显示器和电视的 HDMI 输入。
在下列情况中,音响系统将不能正常工作:
- 不受支持的分辨率;例如,你想把 4k 视频传给 4k 电视,但音响系统只支持 1080p 的视频。请参考后面的备选方案。
- 没有输入和输出的 HDMI 端口(例如,廉价的音响只有一个 HDMI ARC 端口)或没有 HDMI 端口(只有 S/PDIF/ 光纤)。请查看后面的备用方案。
情景二:HTPC 涉及到有多种显示输出接口(HDMI/displayport/usb-c)
如果你的音响系统不支持从 HTPC 到显示器的直通视频分辨率,例如:你有能够解码 4K 的 GPU,1080P 的音响系统,支持 4K 分辨率的电视,请参考此方法(需要两台显示器):
- 将 HTPC 的主 HDMI 输出连接到显示器的 HDMI 输入,例如 HTPC(HDMI)-> 电视(HDMI)。
- 将 HTPC 的第 2 个显示输出连接到音响系统。如果接口是 Displayport,请使用 Displayport->HDMI 电缆或适配器,例如:HTPC(HDMI/Displayport)-> 音响系统(HDMI)。
- 在操作系统的设置中把第二个显示输出设置为扩展显示,分辨率设置为 720p@60Hz。把这个显示器拖到主显示器的右上角。注意:尽管你只用它来做音频输出,但依然需要输出视频信号。
- 在 Windows 声音控制面板中,禁用主显示器连接器上的音频设备,然后在第二台显示器上启用音频。
这种方法适用于所有的音频输出,也适用于其他类型分辨率视频的输出。
情景三:HTPC 没有多个显示器输出,但有一个光纤 /PDIF/3.5mm 端口
- 将 HTPC 的主要 HDMI 输出连接到显示器的 HDMI 输入,即 HTPC(HDMI)-> 电视(HDMI)。
- 将 HTPC 的光纤 /3.5mm 输出连接到音响系统的光纤 /RCA/3.5mm 输入,例如:HTPC(光纤)-> 音响系统(光纤)。
支持的视频:由 HTPC 和显示器决定。
支持的音频:立体声 PCM、有损的 DD 5.1/DTS 5.1(光纤)或立体声 / 模拟环绕声(3.5mm)。
情景四 HTPC 没有多个显示输出接口,也没有光纤 /SPDIF 端口,但显示器有一个 HDMI ARC 或者是光纤端口
- 将 HTPC 的 HDMI 输出连接到显示器的 HDMI(非 ARC 输入),即 HTPC(HDMI)-> 电视(HDMI)。
- 将显示器的 HDMI ARC/ 光学输出连接到音响系统的 HDMI ARC/ 光纤输入,即电视 ARC(HDMI/ 光纤)-> 音响系统 ARC(HDMI/ 光纤)。
支持的视频:由 HTPC 和显示器决定。
支持的音频:立体声 PCM、有损的 DD 5.1/DTS 5.1(ARC)或者是所有类型的音频(eARC)- 具体取决于显示器 HDMI 端口直出 (pass-through) 所使用的编解码器。请参阅显示器手册或者是 rtings.com 的评论,以了解直出(透穿)编解码器的更多细节,以及如何配置显示器直出音频。如果不能直出 DD/DTS,请看下一个方法。
情景五 HTPC 没有多个显示输出,没有光学 /SPDIF 端口,而且显示器没有 HDMI ARC 和光纤端口
- 将 HTPC 的 HDMI 输出连接到 HDMI 音频分离器的 HDMI 输入,即 HTPC(HDMI)->HDMI 音频分离器(HDMI)。
- 将 HDMI 音频分离器的 HDMI 输出连接到显示器的 HDMI 输入,即 HDMI 音频分离器(HDMI)-> 电视(HDMI)。
- 将 HDMI 音频分离器的光纤 /RCA/3.5mm 接口与音响系统的光纤 /RCA/3.5mm 接口连接,即 HDMI 音频分离器(光纤 /RCA/3.5mm)-> 音响系统(光纤 /RCA/3.5mm)。
支持的视频:由 HTPC、显示器和 HDMI 音频分离器三者决定。
支持的音频:立体声 PCM,有损 DD 5.1/DTS 5.1(光纤),立体声 PCM(RCA),以及立体声 / 模拟环绕声(3.5mm)。
情景六 HTPC 有多个显示输出(HDM/displayport),但音响系统没有 HDMI 接口
- 将 HTPC 的主要 HDMI 输出连接到显示器的 HDMI 输入,即 HTPC(HDMI)-> 电视(HDMI)。
- 将 HTPC 的第二台显示器输出连接到 HDMI 音频分离器的 HDMI 输入。如果是 Displayport 接口,则使用 Displayport->HDMI 电缆或被动(无源)适配器(Passive adapter),例如:HTPC(HDMI/Displayport)-> 音频分离器(HDMI)。
- 将 HDMI 音频分离器的光纤 /RCA/3.5mm 端口连接到音响系统的光纤 /RCA/3.5mm 端口,即音频分离器(光纤 /RCA/3.5mm)-> 音响系统(光纤 /RCA/3.5mm)。
- 将一个 HDMI 假负载(译者注:其实就是显卡欺骗器)连接到 HDMI 音频分离器的 HDMI 输出端口。
- 将操作系统中的第 2 个显示输出设置为扩展显示,分辨率为 720p@60Hz,把这个显示器拖到主显示器的右上角。注意:尽管你只用它来做音频输出,但依然需要输出视频信号。
- 在 Windows 声音控制面板中,禁用主显示器连接器上的音频设备,在第二显示器连接器上启用音频。
支持的视频:由 HTPC 和显示器决定。
支持的音频。立体声 PCM,有损 DD 5.1/DTS 5.1(光纤),立体声 PCM(RCA),以及立体声 / 模拟环绕声 3.5mm)。
软件(操作系统)准备
HTPC 传输音频到音响系统有以下两种方案:
方案一:比特流传输(BITSTREAMING)
第一种方式是用比特流传输(直出);这意味着播放器应用程序会将音频直接发送到你的音响系统,不作任何处理,并允许音响系统对其进行解码。
这是首选的方法,具体的应用设置在下一节。
例如,如果你想播放杜比 TrueHD,而你的音响系统可以解码杜比 TrueHD,你将把你的应用程序设置为 Bitstream 或者是 Passthrough 等类似选项。
如果你有一台 AV 接收器,它就会显示 “Dolby Atmos”(译者注:俗称点灯)。
在 Windows HTPC 上,这个过程通常是播放器应用程序调用音频解码器来将某个编解码器转换为比特流。其中还可能需要将声音设备设置为 “WASAPI 独占模式”。WASAPI(Windows Audio Session API)允许应用程序直接与音频驱动程序“对话”。
在媒体设备(Roku、FireTV 等)上,它一般被称为 “比特流 " 或是 " 直出”。
注意事项:
- 当这种方式配置正确用于播放音频时,改变 HTPC 的音量并不能调节声音的大小。音量只能通过音响系统控制,你还可以你的 AV 接收机显示屏上看到一个编解码器的名称或是指示器。
- 对于支持比特流的应用程序,改变 Windows 声音控制面板中的设置毫无意义。因为位流绕过了系统的扬声器设置(立体声 / 环绕声)。
方案二:解码与信道(DECODING/CHANNELIZATION)
第二种是使用系统解码音频并通道化。这意味着播放内容的应用程序(或你的操作系统)将音频发送到你的音响系统前,会把音频内容转换为你上面所读到的普通 PCM 格式。音响系统将不会使用任何特殊编解码器,像 Dolby Atmos/DTS:X 这样音频对象附带的元数据不能被通道化或有意义地被 PC 使用。因为它们必须被位流化传输,并由 AVR 和声音处理器处理。
例如,如果想播放杜比 TrueHD,而音响系统不能解码杜比 TrueHD,此时应配置应用程序和操作系统使得音频转换为 PCM。
如果你有一个 AV 功放,它上面会写着 “PCM”/“直接”/“无压缩”。
在 Windows HTPC 上,一般是在应用程序中设置声音设备为 "DirectSound" 或 “System Default”。"DirectSound" 与上文的 "WASAPI" 比特流完全不同,它位于应用程序和音频驱动程序之间,负责调整通道布局和处理音频流。你可以在 Windows 声音控制面板中设置扬声器配置,来告诉 DirectSound 该怎么做。你可以在 Windows 声音控制面板禁用 Windows 声音设备的 " 允许应用程序单独控制此设备 " 的设置,强制系统解码为 PCM。
注意。
- 当这种方式配置正确用于播放音频时,可以通过系统调整音量大小。
- 改变 Windows 声音控制面板中的设置可以调整音频转换(混合)的通道。例如,当把它设置为立体声时,它将被转换为 PCM 2.0(双声道)用于你的音响系统。
- 操作系统 / 应用程序的声音一般都以 PCM 形式输出(比如网络浏览器;见下文)。
在某些情况下,你可以使用中介程序 (Middleware) 来做一些“高级”的事情。例如,如果音响系统支持 DD 但不支持 DTS,可以让插件解码 DTS,然后转码为 DD 使音响系统能够“理解”。常见的有“解码滤镜 LAV Filters” 、Equalizer APO + Peace Equalizer GUI 和APO Driver等。
适用于位流传输的软件播放器设置
大多数播放器都内置音频直出。如果你需要更高级的功能,可以使用 LAV 过滤器来为播放器配置(如果支持),英文设置方法请参考下文(译者注:这里就不翻译了,中文版软件的详细方法百度一下你就知道)。
MPC-HC:
- View->Options->Playback->Output->Audio Renderer: System Default/Internal Audio Renderer.
- View->Options->Internal Filters->Audio Renderer: Exclusive mode, Allow bitstreaming.
- View->Options->Internal Filters->Audio decoder (button)->Bitstreaming->Formats->Enable the codecs your sound system supports decoding
MPC-BE:
- View->Options->Audio->Audio Renderer: MPC Audio Renderer->Properties->WASAPI Mode: Exclusive->Allow bit-exact output: checked
- View->Options->Internal Filters->Audio Decoders (tab)->Audio decoder configuration (button)->Pass-through->Enable the codecs your sound system supports decoding
Potplayer(完美解码):
- F5 key->Filter Control->Audio Decoder->Built-in Codec Settings->Pass Through->Set “Default Pass-through Muxer” for the codecs your sound system supports decoding
VLC:
- Tools->Preferences->Show Settings (Simple)->Audio->HDMI/SPDIF Audio Passthrough: Enabled - for all codecs, or Enabled (AC3/DTS only) - for if your sound system only supports decoding regular DD/DTS.
Plex:
- Settings->Audio->Device Type: HDMI/Optical
- Settings->Audio->Channels: Auto
- Settings->Audio->Device: Auto/<HDMI/Optical Device>
- Settings->Audio->Exclusive Mode: Enable
- Settings->Audio->Passthrough: xxx: Enable the codecs your sound system supports decoding
Kodi:
- Settings->System->Audio->Audio output device: WASAPI
- Settings->System->Audio->Allow Passthrough: On
External audio decoder/filter:
- Install LAV Filters
- Configure pass-through codecs in “LAV Audio Configuration” program under Audio Settings->Bitstreaming
- Configure player for external filter (e.g. MPC-HC/BE->Options->External Filters->Add Filter->LAV Audio Decoder->Prefer)
- Restart player
网络浏览器:
- 一般不需要设置。
网络流媒体支持的音频类型
Netflix (Windows App/Edge Chromium): Dolby Atmos (Lossy)
Amazon Prime (Windows App/Browser): Stereo
Hulu (Windows App/Edge, Mac Safari): Dolby Digital+
HBO Max (Windows Edge Chromium, Mac Safari): Dolby Digital
浏览器[2]:
- Microsoft Edge Chromium: PCM/AAC/MP3/DD/DD+/Atmos
Microsoft Edge: PCM/AAC/MP3/DD/DD+- Chrome[3]: PCM/AAC/MP3
- Firefox[4]: PCM/AAC/MP3
- Safari (10+): PCM/AAC/MP3/DD+/Atmos
(译者注:详细了解杜比音频各类平台的支持情况请参考:https://developer.dolby.com/ )
常见问题
为什么我的音频的音量变化范围很大? 例如(对话)声音很安静,爆炸声很大。
如果你在播放音频时的通道配置与您所拥有的扬声器数量不同,将会丢失一些音频保真度。例如,你播放的是环绕声音频(5.1+),但你只有立体声(2.0)扬声器,声音就会非常安静。这是因为这里声音只有环绕声音频的中置声道,而不是立体声的左右声道。
有许多方法可以解决这个问题,但都不能保证达到最佳效果。你可以使用以下一种或多种方法,这取决于你的音响系统配置(比特流与非比特流)和性能,所使用的软件,和最终效果也因人而异。
确保你的媒体播放器被配置与你的扬声器配置相匹配。如果扬声器是立体声,媒体的播放器设置也应相同:
如果你使用比特流传输,检查你的音响系统(AVR、soundbar 等)是否有某项内置的功能,如动态范围压缩(DRC)/Volume/EQ/ 降噪和一些提高若干通道 / 扬声器水平的功能。如果有 DRC/Volume/EQ 的功能将会开个好头。
如果你不使用比特流,并且你使用的是 Windows,请确保 Windows 声音控制面板中的扬声器配置与小贴士 1 中的扬声器配置一致。
如果你不使用比特流,那就把不符合你扬声器配置的音频缩混(Downmix)。缩混将尝试把额外的通道混合到你当前扬声器所支持数量的通道中(译者注:例如把 7.1 声道转化为 5.1 声道)。VLC、MPC-HC、LAV 和 ffdshow 都有这方面的混合设置。它们会根据扬声器配置把额外的通道自动混合,你甚至可以增强某些通道,例如混音中的语音(中置)声道。
如果你不使用比特流,你可以在媒体播放器 / 中介程序中使用均衡器来提高或减弱相关的频率。VLC、MPC-HC 和 LAV 有基本的均衡器。使用声音均衡器中介软件可以获得更多的控制选项。为了更好地体现效果,你可以试着从减弱 <100Hz 范围和提高 1000Hz-4000Hz 范围的音频开始。
如果你不使用比特流,请在你的媒体播放器 / 中介程序中启用动态范围压缩。DRC 会基于某个比率来“压平”音频,让声音的强弱差距更小。MPC 的 (LAV) 压缩器可以按百分比(从 100% 开始)降低来进行控制。你尝试可以设置把它设置为 50% 的适度压缩,看看效果如何。VLC 的压缩器有更多的控制选项,推荐选项设置:RMS/Attack/Release/Threshold/Ratio/Makeup 分别设置为 0/1.5ms/300ms/-20dB/3.0:1/1dB/15dB。更高的 Ratio(>8.0:1)将压缩效果更明显,类似于一种限制器。你可以在 这里 和这里 阅读更多关于 DRC 的信息。
如果你不使用比特流,请在你的媒体播放器 / 中介程序中启用音量标准化
(Volume Normalization)。标准化功能可以根据最高的峰值并将其余的音频都提高到这个水平,此功能可以配合 DRC 一起使用。DRC 可以“平均”音频,然后标准化可以使整段音频变得更“响亮”。标准化也可以让你在混缩前手动提高声道的音量(例如如 ffdshow 的音量控制)。VLC 的音量标准化也可以以相反的方式工作—— 当作增益减少器;一共有 10 段档位可以设置,如果你将最大音量水平设置为 <1,音频将更加“安静”;如果你将水平设置为 >1,则效果想法。你可以在 这里 和这里 阅读更多关于音量标准化的信息。如果你使用的是电视扬声器,请检查你的电视上是否有音量矫正 / 增强模式。可能的名称有 " 自动音量 "、“夜间模式 " 或 " 音量矫正”(译者注:差不多就是这个意思),用于调整音频的频率;也可能被称为 " 人声模式 ",用于提高声音的中置声道频率。
如果你正在播放本地内容,你可以将内容中的音频流重新编码为你的扬声器配置。例如,为了将 5.1 转换为立体声,你可以使用 FFMpeg 的命令行 "-af dynaudnorm “来修正音频,或者使用命令行来 混缩 ;也使用eac3to 的命令行”-downtoStereo" 或 "-downDPL"。这些东西看起来比较麻烦,但如果你想让音频在各种媒体播放器 / 客户端上保持一致,而这些播放器 / 客户端可能有也可能没有音频标准化功能,那也算是一种比较可行的方案。
使用环绕音效系统时,操作系统的声音控制面板中只显示立体声 /2 声道?
为了确认设备所支持的音频编解码器 / 声道配置,操作系统通常会通过 HDMI/DVI…获取一个叫作 EDID 的东西来读取相关信息。
如果是将 HTPC 直接连接到电视上:首先,它通常只能检测到电视所支持的功能,比如说内部扬声器只能播放立体声(即便你使用 HDMI ARC/Optical 来透传到音响系统)。因此先检查 [5] 电视是否真的支持通过 HDMI ARC/Optical 传输你想要的音频格式,再看看电视的菜单中有没有相关设置并启用它。
如果是先将 HTPC 直接连接到环绕声系统,再把视频传到电视上(即上面的第一种情况),这种情况下操作系统有时会在 HDMI 的电视端进行检测,而不是环绕声系统。有时可以使用 AV 接收器来解决(如果适用),详细见下面的方法 #1。如果没有接收器,你可以导出电视的 EDID,然后编辑其中的音频块部分,添加音响系统所支持的音频格式。
方法 #1
- 检查你的音响系统(特别是 AV 接收机)是否有一个控制音频直出显示器的菜单选项。
- 这个选项通常是关闭的,快快去开启吧。
- 以下是一些常见制造商的选项。
DENON: Menu->HDMI->Audio Out->AVR or AMP
ONKYO: Receiver->Setup->Hardware Setup->HDMI->HDMI Audio Out->Off
PIONEER: Receiver->Audio Parameter->HDMI->AMP
YAMAHA: Setup->Video/HDMI->HDMI Audio Output
其他: 去看说明书吧,寻找 "HDMI Control"/“HDMI Through”/“Audio TV Out” 的选项
方法 #2
- 下载并运行 Custom Resolution Utility 工具
- 选择你的特定显示器
- 从上面的链接下载 “hdmi2-bitstream.dat”/"hdmi-bitstream.dat" 文件。把它导入到 CRU 中。
- 双击 "Extension blocks" 部分的 CEA-861 块。
- 双击 "Data blocks" 部分的 "Audio formats" 块。
- 根据你的音响系统支持的格式,自行添加 / 删除 / 编辑格式(如果需要)。
- 双击 "Data blocks" 部分的 "HDMI support" 块。
- 根据你的显示器的支持情况,启用其中的颜色模式(如果需要)。
- 点击 "OK " 结束
- 运行 restart.exe 重新启动图形驱动程序。
方法 #3
- 下载并运行 [MonInfo/Monitor Asset Manager](MonInfo/Monitor Asset Manager)
- 导出 EDID 数据为.bin 文件
- 下载比运行 Analog Way EDID Editor
- 导入.bin 文件
- 添加音频格式、扬声器配置等。(如果需要的话,添加 CEA 扩展名)
- 保存.bin 文件
- 下载并运行 Custom Resolution Utility
- 导入.bin 文件
- 导出为.exe 文件,退出 CRU
- 运行导出的.exe 文件
为什么 HTPC 在切换输入源或是从睡眠唤醒,重新启动时音频设置被自动重置?为什么显示器处于关闭状态时,我的音响系统不工作?
有时,当改变输入或是开 / 关设备,特别是按照一定的顺序时,你的 HTPC 可能会更改设置,如将你的音频配置从环绕声恢复到立体声,改变你的窗口 / 显示器上的图标布局,甚至声音选项被禁用(特别是当你的显示器关闭时)。
这可能是图形电缆上的热插拔检测功能造成的。你可以试着使用某些方法禁用电缆上的相关针脚。在 HDMI 上是第 19 针;VGA 是第 12 针;DVI 是第 16 针。
关于 HDMI 电缆的图片,请看图
音画不同步怎么办?
如果你的音频快于视频,这可能发生在两者信号传输路径不同的情况下;例如,HTPC 到 AV 接收器传输音频用的是光纤,而视频从 HTPC 到显示器用的是 HDMI。有可能显示器会对视频信号进行额外处理,从而导致滞后。为了缓解这种情况,请把显示器上额外的模式和画面处理都关闭,如游戏模式,运动平滑之类等等。还有一种情况就是你正在播放 24/25fps 的内容,并且媒体播放器软件打开了自动刷新率(这意味着,当检测到 24fps 的内容时,它会从 60Hz 切换到 24Hz),这种情况也可能发生在某些显示器上,有时你可以通过关闭自动刷新率切换来解决这个问题。但你在 60Hz 下播放 24fps 的内容时,可能会遇到画面问题。如果不能忍受这一点,请看下面的设置音频延迟偏移 / 显示同步的方法。
如果你的音频慢于视频,造成这种情况可能是这些原因。HTPC 性能不够,也可能是(如果是个人电脑),遇到了 DPC 高延迟问题——这在 USB 接口被大量使用的老式 PC 上发生得最为突出,比如使用 USB 存储设备或 Wi-Fi 适配器,这将导致音频流的中断。你可以运行一个 DPS 延迟检查程序,看看这种情况是否发生在你身上。最后,如果你的音频使用蓝牙(如蓝牙扬声器或耳机),发生的可能性很高,因为蓝牙在传输过程中有相当大的延迟。AptX LL 协议(在支持的蓝牙设备上)试图缓解这种情况,但效果仍不理想。在观看视频内容时,尽量不要使用蓝牙音频。
如果特定内容出现超前 / 滞后延迟,这可能表明该内容创建(编码)不当,或是设备的 CPU/GPU 性能不理想。
如果上述内容都不能解决你的问题,大多数媒体播放器(plex、kodi、mpc 等)和中介程序(如 LAV 或 ffdshow)都有时间偏移的选项可供调整,总会有那么一个功能来保证音画同步。
我的音响系统只支持解码杜比数字,但我想播放其他格式的内容,如何将其重新编码为杜比数字?
请看下面的说明,并在你的媒体播放器软件中进行设置:
KODI:
- Settings->System
- Toggle settings view to “Expert”
- Set channel configuration to 2.0
- Check box for Dolby Digital (AC3) capable receiver and Enable Dolby Digital Transcoding. Uncheck boxes for every other capability receiver (E-AC3, DTS, etc…).
MPC-HC/BE, POTPLAYER:
Download and install ffdshow
Run ffdshow’s “Audio Decoder Configuration” tool
Go to “Mixer” in the left-hand sidebar
Mixer: Uncheck
Output speakers configuration: same as input
Go to “Output” in the left-hand sidebar
Pass-through (S/PDIF, HDMI): AC3 checked
AC3 (S/PDIF encode mode): checked
Encode 5.1 streams only: checked
(OPTIONAL) If you only want to re-encode certain formats, go to “Codecs” in the left-hand sidebar, then set every codec you don’t want to re-encode to “disabled” under the Decoder column and the ones you do to a libXXX decoder
Click Apply, Ok
If you haven’t already, add the external filter “ffdshow Audio Decoder” into your media player software (mpc-hc/be, potplayer).
VLC:
- Tools->Preferences->Show Settings (Simple)->Audio
- Output Module: DirectX audio output
- Check box for “Use S/PDIF where available”
- Device: Your Optical/HDMI device
PLEX MEDIA PLAYER/PLEX HTPC:
- Settings->Audio
- Device Type: HDMI/Optical
- Device: <HDMI/Optical Device>
- If Device is Optical: Check box for “Passthrough: Dolby Digital (AC3)”. Uncheck box for “Passthrough: DTS”
- If Device is HDMI: Check box for “Passthrough: Dolby Digital (AC3)”. Uncheck boxes for “Passthrough:
”
选购建议
这里就不做全部翻译了,这里是作者给的一些参考链接:
Expert-level sub-reddit HTBuyingGuides FAQ Speaker recommendations AV Receiver recommendations Subwoofer recommendationsdemo 文件下载
Dolby TrueHD 5.1 / Dolby TrueHD 7.1 / Dolby TrueHD 7.1 Channel Call-out
Dolby Atmos (TrueHD/Lossless): 7.1 trailer / 5.1.2 test tones / 7.1.2 test tones
Dolby Atmos (DD+/Lossy): 5.1.2 trailer / 5.1.2 test tones / 5.1.4 test tones / 7.1.2 test tones / 7.1.4 test tones
DTS-HD MA 5.1 / DTS-HD MA 5.1 Channel Call-out / DTS-HD MA 7.1 / DTS-HD MA 7.1 Channel Call-out
HE-AAC 5.1 / HE-AAC 7.1 / AAC-LC
配件选购
由于都是国外购物网站的链接,这里就不贴了。
译者注:
不得不说老外的教程真的是详细(啰嗦),这篇算是也算是非常好的入门科普贴,翻译也尽量是贴近原意,如果有错误,欢迎在评论区里留言。
eARC 中的“e”代表增强型音频回传通道,是 HDMI 2.1 标准的功能之一。 ↩︎
Chrome 音频支持 (英语) ↩︎
Firefox 音频支持 (英语) ↩︎