Использование API FFmpeg C У меня есть кодирование и декодирование видео. Однако перекодированный видеопоток не поддерживает ориентацию исходного видео (вращение). Таким образом, вертикальные видео были перевернуты горизонтально.FFmpeg C API устанавливает кодированное вращение кадра
Я не уверен, как это решить. Есть ли заданное поле метаданных? Использование MediaInfo Я вижу, что исходное видео имеет поле метаданных «Вращение: 90 °», а новое видео - нет. Или каждый кодированный кадр должен быть повернут вертикально?
Я просмотрел side_data кадра декодирования, но он пуст.
for (j = 0; j < decoded_frame->nb_side_data; j++) {
AVFrameSideData *sd = decoded_frame->side_data[j];
if(sd->type == AV_FRAME_DATA_DISPLAYMATRIX) {
LOGI("=> displaymatrix: rotation of %.2f degrees", av_display_rotation_get((int32_t *)sd->data));
}
}