Можно ли переименовывать файлы webm (только для аудио) в.opus?

За .webm файлы, полученные с youtube-dl-f bestaudio не содержащий видеопоток, желательно ли запускать ffmpeg -i input.webm -vn -c:a copy output.opus или можно просто переименовать исходный файл, изменив расширение?

Я имею в виду, что аудиопоток точно такой же, но в отношении метаданных есть ли недостаток во втором подходе?

[Обновить] Я проверил метаданные с mediainfo, Даже если я сохраню вывод ffmpeg в.webm (запустив ffmpeg -i input.webm -vn -c:a copy output.webm), метаданные отличаются.

Обратите внимание на новую запись под названием "Битовая глубина":

И для записи, это .opus результат:

Я хотел бы получить канонический ответ о том, есть ли в определении контейнера что-то, что идентифицирует его как "чистый аудио" файл, а не как аудио / видео файл, что-то, что обрабатывается правильно только путем "переупаковки" потока в новый файл контейнера.

1 ответ

Решение

WebM является подмножеством Matroska, который является контейнерным форматом для мультимедийных данных. Opus - это аудиоформат (аудиокодек), который обычно хранится в контейнере Ogg, но также может храниться в контейнере Matroska или контейнере WebM.

Когда звуковая дорожка Opus хранится в контейнере Ogg, суффикс имени файла обычно равен ".opus" (но когда звуковая дорожка Vorbis хранится в файле Ogg, суффикс обычно равен ".ogg")

Если вы измените суффикс имени файла (с ".webm" на ".opus"), данные внутри файла останутся прежними.

Обычно я извлекаю звуковую дорожку из файла webm:

mkvextract file/path.webm tracks 0:file/path.opus

Обратите внимание, что 'file/path.opus' будет контейнером Ogg с форматом Opus (если это то, что содержалось в WebM).

mkvextract можно получить, установив, например, пакет 'mkvtoolnix-cli' в ArchLinux.

Другие вопросы по тегам