C++解析aac的adts代码实现

本文档详细介绍了如何使用C++实现ADTS(Advanced Audio Coding for Digital Transmission System)格式的验证,包括MPEG-4或MPEG-2版本识别、参数解析和在线文件检查,帮助读者理解并检测音频流的合规性。
摘要由CSDN通过智能技术生成

参考adts格式wiki

在线验证网站


#include <iostream>

using namespace std;
unsigned char buf[7] = {0};
typedef struct {
    unsigned int syncword: 12; // 0XFFF
    unsigned int ID: 1; // MPEG version: 0 for MPEG-4, 1 for MPEG-2
    unsigned int layer: 2; // always 00
    unsigned int protection_absent: 1;
    unsigned int profile: 2; // 0-main,1-LC, 2-SSR,3-reserved
    /**
     *  0: 96000 Hz
     *  1: 88200 Hz
     *  2: 64000 Hz
     *  3: 48000 Hz
     *  4: 44100 Hz
     *  5: 32000 Hz
     *  6: 24000 Hz
     *  7: 22050 Hz
     *  8: 16000 Hz
     *  9: 12000 Hz
     *  10: 11025 Hz
     *  11: 8000 Hz
     *  12: 7350 Hz
     *  13: Reserved
     *  14: Reserved
     *  15: frequency is written explictly
     */
    unsigned int sampling_frequency_index: 4;
    unsigned int private_bit: 1;
    
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值