Я получаю Frames в цикле и декодирую его с ffmpeg, получая AVFrame в качестве результата.ffmpeg AVFrame получить полные декодированные данные в char *
Поэтому я должен получить необходимые пиксельные данные кадра в char * и указать в качестве параметра функции обратного вызова. Итак, как я могу создать такой массив char *? В интернете я видел несколько примеров, таких как:
for(y=0; y<height; y++) { fwrite(pFrame->data[0]+y*pFrame->linesize[0], 1, width*3, pFile);}
или что-то вроде этого. Это правда? И какой размер будет моим символом *? Как я вижу, мы пишем ширину * 3 * высоты байтов?
В зависимости от формата рамки. В каком формате? – mattjgalloway