【问题标题】:How to find AAC-LC (non-ADTS) audio packet length如何查找 AAC-LC(非 ADTS)音频数据包长度
【发布时间】:2012-12-02 09:18:28
【问题描述】:

我有直接来自音频编码器的 AAC-LC 音频流。

它是一个原始流,没有 ADTS 标头,没有容器数据,因为我想在编码音频到达时直接流式传输。(在文件保存之前)。

我想确定传入编码的原始 AAC 流中的帧边界/帧长度/数据包长度。 (AAC 具有可变的数据包长度。)

我可以搜索任何固定的帧头/模式,以便确定帧边界吗?

AAC 可以吗?

提前感谢您的宝贵意见。

【问题讨论】:

    标签: audio streaming audio-streaming aac


    【解决方案1】:

    如果您直接从编码器获取 AAC 编码数据,则由编码器逐帧发送。它不应该发送“数据包”,而是发送单帧。否则我看不到您可以解析帧的方法。

    我首先检查它是否真的一次发送超过一帧?

    如果是,那么一种解决方案是告诉编码器发送 ADTS 标头,然后解析来自 ADTS 的信息,最后从帧中剥离 ADTS 并将其作为原始数据流式传输。

    这有帮助吗?

    【讨论】:

    • 谢谢丹尼尔。我无法控制编码器,因此我无法指示它与 ADTS 标头一起发送原始比特流。实际上,我想通过 RTP 实时流式传输 AAC 帧。但如果没有找到帧边界,我无法使用适当的帧和时间戳发送它们。
    • 我真的不知道该怎么做......你应该从编码器那里得到一些信息,否则我看不到方法。提出这类问题的好地方是 Hydrogen Audio:hydrogenaudio.org/forums/index.php?showforum=54
    • 谢谢丹尼尔,我已经在那里发布了问题。 hydrogenaudio.org/forums/index.php?showtopic=98395
    • 不确定是否是发布该问题的好地方 [hydrogenaudio.org],因为您没有得到任何答案。
    猜你喜欢
    • 1970-01-01
    • 2017-02-22
    • 2013-09-24
    • 2012-11-20
    • 1970-01-01
    • 2011-06-05
    • 2019-06-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多