Como obter dados de quadros brutos de AVFrame.data [] e AVFrame.linesize [] sem especificar o formato de pixel?
Eu tenho a ideia geral de que oframe.data[]
é interpretado dependendo de qual formato de pixel é o vídeo (RGB ou YUV). Mas existe alguma maneira geral de obter todos os dados de pixel do quadro? Eu só quero calcular o hash dos dados do quadro, sem interpretá-lo para exibir a imagem.
De acordo com o AVFrame.h:
uint8_t* AVFrame::data[AV_NUM_DATA_POINTERS]
ponteiro para os planos de imagem / canal.
int AVFrame::linesize[AV_NUM_DATA_POINTERS]
Para vídeo, tamanho em bytes de cada linha de imagem.
Isso significa que se eu apenas extrair dedata[i]
paralinesize[i]
bytes, então eu recebo as informações de pixel completo sobre o quadro?