Чтобы понять суть этой проблемы, почему первая команда работает, а вторая - нет. Они производят файлы немного разного размера с различным содержанием:Can not Stream Ogg Из ffmpeg Через stdout
ffmpeg -i test.wav -f ogg -acodec libvorbis test.a.ogg
ffmpeg -i test.wav -f ogg -acodec libvorbis - > test.b.ogg
test.a.ogg будет играть правильно и не имеет никаких проблем. test.b.ogg начинается в середине исходного аудио и имеет остановки и пробелы в аудио. Он также не сообщает длину трека.
Я хочу перекодировать исходные файлы на лету в ogg для программы, которую я пишу, и я пытаюсь передать stdout из ffmpeg в мою программу. Помещение результатов в файл-посредник будет убивать производительность, поскольку транскодирование должно выполняться по требованию.