ADTS Sample_Frequency_Index 和 Channel_Configuration 无效,为什么?

发布于 2024-09-11 00:02:48 字数 242 浏览 0 评论 0原文

我希望在我投入大量时间和精力之前,有人能引导我走上正确的道路。我目前正在尝试解析 AAC+ 帧以获取通道数和采样频率等信息。所以看起来我们可以简单地从 ADTS 标头中获取此信息,但大多数时候此信息是不准确的。

所以问题是: - 为什么这个数据不准确? ADTS 标头通道和采样频率的含义是什么?我应该依赖它吗? - 我应该进一步解析框架以获取此信息吗?

仅供参考,AAC+ 原始数据来自流媒体服务器...

感谢您的帮助!

I hope someone can direct me on the right path before I put a lot of time and effort on this. I'm currently trying to parse an AAC+ frame to get information such as number of channels and sample frequency. So it seems that we can simply get this information from the ADTS header but most of the time this information is inaccurate.

So the question is:
-Why is this data inaccurate? What is the meaning of the ADTS header channel and sample freq? Should I rely on it?
-Should I parse further down the frame to get this information?

FYI, the AAC+ raw data is coming from streaming servers...

Thanks for the help!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

动次打次papapa 2024-09-18 00:02:48

ADTS 采样率和通道数适用于 HE-AAC 和 HE-AACv2,以尝试保持与仅 LC 解码器的兼容性。好消息是,它们在精确意义上是不准确的。 HE-AAC 将报告一半的采样率,而 HE-AACv2 将始终报告单声道流。这是因为 HE-AAC 添加了 SBR,使采样率加倍,而 HE-AACv2 在 SBR 和 PS 的基础上添加了参数立体声,将单声道流转换为立体声图像。 SBR 有效负载位于 AAC 填充元素内,仅 LC 编码器会忽略该元素,而 PS 有效负载位于 SBR 有效负载内。

如果采样率 <= 24kHz,某些解码器会假定 SBR,并且始终将单声道流解码为立体声,以避免预先检测到这些功能。在这种情况下,如果未找到 SBR 数据,SBR 解码器可以在纯上采样模式下运行。

@spender 请参阅:http://wiki.multimedia.cx/index.php?title=ADTS

ADTS sample rates and channel counts are for HE-AAC and HE-AACv2 to try to maintain compatibility with LC only decoders. The good news is that it they are inaccurate in a precise manner. HE-AAC will report half the sample rate and HE-AACv2 will always report a mono stream. This is because HE-AAC adds SBR which double the sample rate and HE-AACv2 adds parametric stereo to SBR and PS turning a mono stream into a stereo image. The SBR payload lives inside an AAC fill element which is ignored by an LC only encoder and the PS payload lives inside the SBR payload.

Some decoders assume SBR if the sample rate <= 24kHz and always decode mono streams to stereo to avoid detecting these features up front. In that case the SBR decoder can be run in a pure upsampling mode if SBR data is not found.

@spender see: http://wiki.multimedia.cx/index.php?title=ADTS

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文