【问题标题】:Audio frame sample type in PCM?PCM中的音频帧样本类型?
【发布时间】:2020-11-06 14:34:24
【问题描述】:

所以我正在使用带有音频内容的 CMSampleBufferRef 缓冲区。

AudioStreamBasicDescription如下

 {
        mSampleRate: 44100.000000 
        mFormatID: 'lpcm' 
        mFormatFlags: 0xe 
        mBytesPerPacket: 4 
        mFramesPerPacket: 1 
        mBytesPerFrame: 4 
        mChannelsPerFrame: 2 
        mBitsPerChannel: 16     
 } 

显然,这是一个交错的视频,每个通道 2 个字节 = 样本大小。 这个样本大小的编码是什么?那是一个(短)整数吗?一个框架是由 2 条短裤组成的吗?还是一个int?还是一个浮子?我怎么知道?

我猜是 32bpp 交错音频,对吗?

【问题讨论】:

    标签: core-audio core-media


    【解决方案1】:

    mFormatFlags 的值 0xe0b1110,它相当于:

    kAudioFormatFlagIsBigEndian                 = (1U << 1),     // 0x2
    kAudioFormatFlagIsSignedInteger             = (1U << 2),     // 0x4
    kAudioFormatFlagIsPacked                    = (1U << 3),     // 0x8
    

    所以一个帧由两个交错的大端 int16_t 样本组成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-26
      • 2014-10-11
      • 1970-01-01
      • 1970-01-01
      • 2022-10-15
      • 2020-03-03
      • 2022-08-21
      相关资源
      最近更新 更多