В настоящее время я пытаюсь прочитать небольшие видеофайлы, отправленные с сервера.
Чтобы прочитать файл с использованием libavformat, вы должны позвонить
av_open_input_file(&avFormatContext, "C:\\path\\to\\video.avi", 0, 0, 0);
Проблема в том, что в этом случае файл находится не на диске, а в памяти.
На данный момент я загружаю файл, записываю его на диск, используя временное имя, а затем вызываю av_open_input_file
с именем временного файла, что не очень чистое решение.
На самом деле мне нужна такая функция, как av_open_custom(&avFormatContext, &myReadFunction, &mySeekFunction);
, но я не нашел ее в документации. Я предполагаю, что это технически возможно, так как имя файла не является чем-то, что помогает библиотеке определить, какой формат она использует.
Так есть ли такая функция или альтернатива av_open_input_file?