Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 数字音频输出-它是什么格式?_Macos_Audio_Core Audio - Fatal编程技术网

Macos 数字音频输出-它是什么格式?

Macos 数字音频输出-它是什么格式?,macos,audio,core-audio,Macos,Audio,Core Audio,我的MacBook有一个光学数字音频输出3.5毫米插头(请参阅)。我在这里这样问是因为我认为这是一个标准的数字音频输出插头;说明中说我应该使用带有Toslink迷你插头适配器的Toslink电缆或光纤电缆 我想知道:通过这根电缆传输的音频数据的格式是什么?是否为固定格式,例如44.1kHz、16位整数、双通道()?或者它允许什么格式?例如,我想通过它发送96kHz(或48kHz)、32位浮点(或24位整数)、两个通道(或6个通道)的音频数据。数据是如何编码的?接收器(DA转换器)如何知道格式?是

我的MacBook有一个光学数字音频输出3.5毫米插头(请参阅)。我在这里这样问是因为我认为这是一个标准的数字音频输出插头;说明中说我应该使用带有Toslink迷你插头适配器的Toslink电缆或光纤电缆

我想知道:通过这根电缆传输的音频数据的格式是什么?是否为固定格式,例如44.1kHz、16位整数、双通道()?或者它允许什么格式?例如,我想通过它发送96kHz(或48kHz)、32位浮点(或24位整数)、两个通道(或6个通道)的音频数据。数据是如何编码的?接收器(DA转换器)如何知道格式?是否有一些通信从接收器返回,以便接收器告诉我的计算机它喜欢什么格式?或者我如何知道样本的最大采样率和最大比特宽度


我如何在软件方面做到这一点?告诉CoreAudio使用我喜欢的任何格式,并将未经修改的格式放到电缆上,这就足够了吗?至少这是我的目标。因此,基本上我的主要问题是:支持什么格式,我如何知道我的应用程序中的原始音频数据在电缆上以该格式获得?

像TOSLINK这样的数字音频互连使用该协议。信道布局和压缩状态在流中编码,采样率由信号发送的速度(!)表示。对于未压缩流,S/PDIF传输24位(整数)PCM数据。(也可以传输较低的位深度;S/PDIF只需将其填充到24位即可。)注意,由于带宽限制,如果传输两个以上的通道,则必须使用压缩


从软件方面看,在OS X上,数字音频输出的大多数属性都由音频输出设备的设置控制。

这主要解释了我的所有硬件站点问题!谢谢您知道我的MacBookPro声卡的数字输出支持的采样率吗?当CoreAudio告诉我它支持任何格式时,我不确定我是否可以信任它,它不会在内部重新采样/转换它。我可以吗?所以,如果我以48kHz的频率传入24位整数PCM数据,它会像在电缆上一样写入数据?(以防与其他软件的声音发生混音。)苹果最近的所有硬件都支持高达96 kHz的本机采样率。(例如,我目前的MBA支持44.1、48、88.2和96千赫。)