当前位置: 首页 > news >正文

电子商务网站建设以什么为核心公司网站能自己做吗

电子商务网站建设以什么为核心,公司网站能自己做吗,网站模板购买 优帮云,网站建设专业的公司排名文章目录 AAC的ADIF和ADTSADTS结构解析实际AAC文件分析 AAC的ADIF和ADTS AAC音频格式:Advanced Audio Coding(高级音频解码),是一种由MPEG-4标准定义的有损音频压缩格式,取代MP3,提供更好的音质和更低的比特率,非常常…

文章目录

      • AAC的ADIF和ADTS
      • ADTS结构解析
      • 实际AAC文件分析

AAC的ADIF和ADTS

AAC音频格式:Advanced Audio Coding(高级音频解码),是一种由MPEG-4标准定义的有损音频压缩格式,取代MP3,提供更好的音质和更低的比特率,非常常用!

  • ADIF:Audio Data Interchange Format ADIF是AAC的单一文件存储格式,整个音频流封装为一个文件,适合本地存储(如下载的音频文件);

    • image.png
    • 文件结构:文件头+连续的数据帧
      • [全局头] + [音频数据块1] + [音频数据块2] + … + [音频数据块N]
        • 全局头(Header): 包含采样率、声道数、比特率等全局信息,但不包含帧级的同步信息
      • 音频数据块: 连续存储的AAC压缩数据,没有独立的帧头(与ADTS不同)。
    • 缺点:无法流式传输(需完整文件才能解码)。不能从中间任一帧解码;
    • 应用场景
      • 完整的音频文件(如.m4a、.aac本地文件)
      • 避免ADTS的冗余头开销:ADIF比ADTS节省约5%~10%空间(无每帧头)
  • ADTS(Audio Data Transport Stream) ADTS是AAC的流式传输格式,每帧自带头信息,适合实时传输(如网络直播)

    • image.png
    • 帧结构帧头(7/9字节)+ 数据块:AAC压缩数据。
    • 优势:支持流式播放(可逐帧解析,无需完整文件)
    • 应用场景:- 实时流媒体(HTTP Live Streaming, HLS)。- 广播传输(如数字电视)
    • 问题
      • 编码AAC裸流的时候,会遇到写出来的AAC文件并不能在PC和手机上播放?
        • 原始AAC数据(裸流)每一帧因缺少ADTS头信息导致无法被播放器识别image.png
        • 如何为AAC裸流添加ADTS头?
          • 使用FFmpeg封装: 将AAC裸流封装为ADTS格式 ffmpeg -i input_raw.aac -c:a copy -f adts output_adts.aac
  • 二者区别

    • 简单说,ADTS可以在任意帧解码,也就是说它每一帧都有头信息。ADIF只有一个统一的头,所以必须得到所有的数据后解码。
    • 且这两种的header的格式也是不同的,目前一般编码后的和抽取出的都是ADTS格式的音频流。
  • 如何解决ADIF的局限性?

    • 需要流式传输 将ADIF转换为ADTS格式(通过FFmpeg)
        • ffmpeg -i input.adif -f adts output.aac
    • 从ADIF中提取部分数据 必须从头开始截取,否则数据无效:
        • dd if=input.adif of=partial.adif bs=1M count=10 # 截取前10MB

ADTS结构解析

AAC音频文件的每一帧由ADTS Header和AAC Audio Data组成。结构体如下:
image.png
 
 ADTS头解析:每⼀帧的ADTS的头⽂件都包含了⾳频的采样率,声道,帧⻓度等信息,这样解码器才能解析读取。⼀般情况下ADTS的头信息都是7个字节,分为2部分
 1. 固定头(adts_fixed_header):固定头信息中的数据每⼀帧都相 同。28bit=3.5bytes,
 1. image.png
 2. syncword :同步头 总是0xFFF, all bits must be 1,代表着⼀个ADTS帧的开 始
 3. ID:MPEG标识符,0标识MPEG-4,1标识MPEG-2
 4. Layer:always: '00
 5. protection_absent:表示是否误码校验。Warning, set to 1 if there is no CRC and 0 if there is CRC
 6. profile:表示使⽤哪个级别的AAC,如01 Low Complexity(LC)— AAC LC。有些芯⽚只⽀持AAC LC 。
 1. profile = MPEG-4 Audio Object Type -1
 2. image.png
7. sampling_frequency_index:表示使⽤的采样率下标,通过这个下标在 Sampling Frequencies[ ]数组中查找得知采样率的值image.png
8. channel_configuration: 表示声道数,⽐如2表示⽴体声双声道image.png
2. adts_variable_header() 28bit=3.5bytes
1. image.png
2. frame_length : ⼀个ADTS帧的⻓度包括ADTS头和AAC原始流.
1. frame length, this value must include 7 or 9 bytes of header length:
2. aac_frame_length = (protection_absent == 1 ? 7 : 9) + size(AACFrame)
3. protection_absent=0时, header length=9 bytes
4. protection_absent=1时, header length=7bytes
3. adts_buffer_fullness:0x7FF 说明是码率可变的码流。
4. number_of_raw_data_blocks_in_frame:表示ADTS帧中有 number_of_raw_data_blocks_in_frame + 1个AAC原始帧。 所以说number_of_raw_data_blocks_in_frame == 0 表示说ADTS帧中有⼀个 AAC数据块。

实际AAC文件分析

下⾯是ADTS的AAC⽂件部分:转换为2进制,对应信息就知道了;
image.png

http://www.dtcms.com/a/512564.html

相关文章:

  • 股指期货与股票的区别是什么?
  • 天津网站建设学习温州建站模板搭建
  • 兰州网站优化服务个性化网站建设费用
  • Nginx负载均衡:高性能流量调度指南
  • [人工智能-大模型-35]:模型层技术 - Transformer神经网络结构与其他类型的神经网络结构(CNN、RNN)的对比
  • Blender微细节纹理材质模型资产包 Micro-Details Premium Asset Pack
  • 解释Linux 系统中ls -l命令的输出
  • 重庆丰都建设局网站中国建设银行网站企业
  • 模拟到真实:使用OpenCV识别Xycar自动驾驶中的车道线和交通灯
  • wordpress论坛样式seo搜索引擎优化求职简历
  • 数电基础:常见的CMOS门电路
  • 外贸php网站源码网易免费企业邮箱注册
  • 建设银行官方网站买五粮液酒深圳代做网站后台
  • Redis缓存高并发问题
  • linux IO多路复用
  • Linux是怎样工作的--第三章
  • 网站开发外包报价单网站建设延期通知单
  • 莱芜做网站做网站时给网页增加提醒
  • 怎么做自助购物网站网络销售渠道
  • 【YOLOv4核心技术详解】从损失函数到网络架构
  • XMW技术:颠覆未来的创新引擎
  • 练习python题目小记(四)
  • 网站是先解析后备案吗快手做任务网站
  • C++输入输出模式(ACM模式)笔记(个人)(第十六天)
  • 杭州高端网站开发检查色盲效果网站
  • 面试(五)——Java 集合体系
  • k8s java应用pod内存占用过高问题排查
  • Android8.0+Camera2编译烧录源码研习
  • 液压产品做哪个网站好网站关键字排名怎么做
  • 做网站小程序内蒙古银税互动平台