我正在尝试弄清楚FFmpeg在音频解码后如何保存数据到
基本上,如果我打印
从我所理解的FFmpeg文档中,数据的格式用
是否有一个指南/教程来解释每种格式中数组中的数字代表什么?
AVFrame
中。基本上,如果我打印
AVFrame->data[]
数组中的数据,则会得到一系列无符号8位整数,即原始格式的音频数据。从我所理解的FFmpeg文档中,数据的格式用
enum AVSampleFormat
表示,有两种主要类型:交错和平面。在交错类型中,所有数据都存储在AVFrame->data
数组的第一行中,其大小为AVFrame->linesize[0]
,而在平面类型中,音频文件的每个通道都存储在AVFrame->data
数组的单独一行中,数组的大小为AVFrame->linesize[0]
。是否有一个指南/教程来解释每种格式中数组中的数字代表什么?
AVFrame.h
中声明的数组为uint8_t
,那么AVFrame->data
如何包含int16_t
? - Arlindint16_t *pcm16 = (int16_t*) frame->data[0]
。 - SergioAVFrame->data
数组中的每个元素是否都代表一个音频样本? - Arlind