Удалить аудио поток из файлов XVID

У меня есть куча файлов Xvid, у каждого из которых есть аудиопоток, который я не хочу. Как я могу удалить звуковую дорожку, которую я не хочу, используя командную строку Linux?

Мне не нужен весь скрипт (цикл), просто какую команду я бы использовал для обработки каждого avi-файла по отдельности (если только в самом cmd нет встроенной пакетной модификации).

Я не верю, что файл находится в контейнере mkv, так как mkvinfo ничего не находит. Вот часть вывода mplayer (спасибо ~quack):

[aviheader] Video stream found, -vid 0
ID_AUDIO_ID=1
[aviheader] Audio stream found, -aid 1
ID_AUDIO_ID=2
[aviheader] Audio stream found, -aid 2
VIDEO:  [XVID]  512x384  12bpp  25.000 fps  1013.4 kbps (123.7 kbyte/s)

3 ответа

Решение

Честно говоря, я думаю, что вы предпочитаете использовать ffmpeg решение. Но я понял mencoder (mplayerкодировщик) может сделать это тоже... и может, но только как побочный эффект - поскольку он построен поверх плеера, он может обрабатывать только один аудиопоток за раз. Если бы вы перевернули процесс (добавив второй аудиопоток в файл, в котором был только один файл), вам понадобился бы другой инструмент.

-aid X опция выбирает аудиопоток (замените X на идентификационный номер потока). Похоже, mplayer вывод, который вы указали, показывает правильные идентификационные номера, так что попробуйте с ними. Это сохраняет первый аудиопоток (используйте -aid 2 если хочешь второе)

$ mencoder orig.avi -o new.avi -oac copy -ovc copy -aid 1

Другие инструменты командной строки AVI, которые могут помочь:

  • avidemux (Вы можете написать с -nogui)
  • transcode

Используя ffmpeg вы можете сделать следующее

ffmpeg -i input -map 0:0 -map 0:1 -vcodec copy -acodec copy output

Это должно сделать новый фильм с видео и первым аудио потоком. Чтобы использовать второй аудиопоток, измените -map 0: 1 на -map 0:2. С копией для -vcodec и -acodec вы копируете потоки без перекодирования.

Если у вас есть машина Windows. Используйте virtualdubmod , затем выберите streams-> stream list и отключите аудиопоток и добавьте свою собственную звуковую дорожку, выберите video-> direct stream copy и последний файл-> save as avi. Вы можете подготовить свой собственный аудио редактор, такой как Audacity.

Для Linux:

ffmpeg (здесь есть опция командной строки)

Avidemux

Cinelerra

DVD :: рип

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