据我了解,您必须将数据写入缓冲区,而不是作为字节流,而是作为访问单元。
现在,我正在使用提取器读取数据:
int sampleSize = extractor.readSampleData(codecInputBuffers[inputBufIndex], 0);
然后这个 sampleSize 用于
codec.queueInputBuffer(inputBufIndex, 0 /* offset */, sampleSize, presentationTimeUs, sawInputEOS ? MediaCodec.BUFFER_FLAG_END_OF_STREAM : 0);
那么 MP3 和 AAC 的“访问单元”是什么?它们是固定大小的块吗?可以以某种方式从 MP3/AAC 流中读取它们吗?