Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Как массово извлечь звук из видео файлов  (Прочитано 2278 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн dm2003

  • Автор темы
  • Участник
  • *
  • Сообщений: 171
    • Просмотр профиля
    • Книга статей блога softhelp.org.ua
Старожилы, подскажите плиз, как можно массово извлечь звук из видео файлов? Есть папка с клипами, к примеру в формате mp4, нужно извлечь в mp3. Графические способы я нашел, а как в консоли нет. Для одного файла нашел примеры, а как применить к данной папке?
http://softhelp.org.ua - мой блог
Игры для Ubuntu - http://ubuntugame.org.ua/
Что такое Ubuntu? - https://ubuntu-for-all.blogspot.com/

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Для одного файла нашел примеры, а как применить к данной папке?
find /путь -exec команда_для_одного_файла ... {} \;

Оффлайн dm2003

  • Автор темы
  • Участник
  • *
  • Сообщений: 171
    • Просмотр профиля
    • Книга статей блога softhelp.org.ua
Так а при чем тут команда find?
http://softhelp.org.ua - мой блог
Игры для Ubuntu - http://ubuntugame.org.ua/
Что такое Ubuntu? - https://ubuntu-for-all.blogspot.com/

Оффлайн Lego777

  • Любитель
  • *
  • Сообщений: 79
  • Puppyrus user
    • Просмотр профиля
#!/bin/sh
mkdir cash
for f in *.avi *.mkv *.mp4 *.mpg ;
do
urxvt -e ffmpeg -i "$f" -vn -ar 44100 -ac 2 -ab 192 -f mp3  cash/$f.mp3
done
Как пример. Предполагает наличие ffmpeg и еще я не знаю, как в Ubuntu терминал правильно зовётся, т.к. пользователь Puppyrus.
Скрипт надо запустить в папке с видеофайлами.
« Последнее редактирование: 19 Июня 2013, 03:18:07 от Lego777 »

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Так а при чем тут команда find?
Для рекурсивного обхода каталога.

Оффлайн inkblack

  • Старожил
  • *
  • Сообщений: 1216
    • Просмотр профиля
#!/bin/sh
mkdir cash
for f in *.avi *.mkv *.mp4 *.mpg ;
do
urxvt -e ffmpeg -i "$f" -vn -ar 44100 -ac 2 -ab 192 -f mp3  cash/$f.mp3
done
Как пример. Предполагает наличие ffmpeg и еще я не знаю, как в Ubuntu терминал правильно зовётся, т.к. пользователь Puppyrus.
Скрипт надо запустить в папке с видеофайлами.

Терминал зовется  xterm   ;)  Если только  gxneur  не установлен.
gnome-terminal  — если у вас  gnome  или  unity.
konsole  — если у вас  kde.
mate-terminal  — если у вас  mate.
В других случаях вы сами должны знать.

А вообще можно не вызывать терминал на каждый файл, а просто
запустить ваш скрипт из командной строки.
Делюсь знаниями, но их у меня мало!

Оффлайн Lego777

  • Любитель
  • *
  • Сообщений: 79
  • Puppyrus user
    • Просмотр профиля
ICEWM окружение в паппи (в основном), urxvt -e для наглядности, у меня для кодирования видео масса заготовок, прогресс происходящего видно.

Оффлайн dm2003

  • Автор темы
  • Участник
  • *
  • Сообщений: 171
    • Просмотр профиля
    • Книга статей блога softhelp.org.ua
Скрипт не сработал в нужной папке. Вот вывод:

(Нажмите, чтобы показать/скрыть)

Я так понял urxvt не установлен. Но я в Ubuntu и пользуюсь Терминалом.
« Последнее редактирование: 19 Июня 2013, 20:12:40 от dm2003 »
http://softhelp.org.ua - мой блог
Игры для Ubuntu - http://ubuntugame.org.ua/
Что такое Ubuntu? - https://ubuntu-for-all.blogspot.com/

Оффлайн inkblack

  • Старожил
  • *
  • Сообщений: 1216
    • Просмотр профиля
Так надо убрать   urxvt -e   и попробовать еще раз;
запускать из командной строки.
Делюсь знаниями, но их у меня мало!

Оффлайн dm2003

  • Автор темы
  • Участник
  • *
  • Сообщений: 171
    • Просмотр профиля
    • Книга статей блога softhelp.org.ua
убрал, но все равно не сработало. В папке Cash появились текстовые пустые файлы с именем клипов.
(Нажмите, чтобы показать/скрыть)
http://softhelp.org.ua - мой блог
Игры для Ubuntu - http://ubuntugame.org.ua/
Что такое Ubuntu? - https://ubuntu-for-all.blogspot.com/

Оффлайн peregrine

  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7211
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: Как массово извлечь звук из видео файлов
« Ответ #10 : 19 Июня 2013, 23:48:26 »
dm2003, какие конкретно файлы (по расширению и кодеку)? Сколько ядер на ПК? Действительно ли нужен MP3? (MP4 (аудио), например занимает в 2 раза меньше места при том же качестве). Одинаковое ли расширение и аудио-кодек у всех файлов?

Пользователь решил продолжить мысль 19 Июня 2013, 23:49:14:
dm2003, как много таких файлов?

Оффлайн dm2003

  • Автор темы
  • Участник
  • *
  • Сообщений: 171
    • Просмотр профиля
    • Книга статей блога softhelp.org.ua
Re: Как массово извлечь звук из видео файлов
« Ответ #11 : 19 Июня 2013, 23:58:42 »
В тестовой папке 5 клипов в формате mp4. Какая разница какой аудио кодек в каждом из клипов, если дается команда через ffmpeg перекодировать все звуковые дорожки в mp3? Ведь программа WinFF, которая использует ffmpeg, без лишних вопросов вытягивает все звуковые файлы в формате mp3. Выходит, что просто что-то не работает в предложенном скрипте. Ядер у меня аж 6, 8 гиг оперативки. Хотя какое это имеет значение? Я так понимаю, что от процессора всего навсего зависит сколько времени он будет обрабатывать конкретную задачу. Поэтому думаю, что скрипт просто не заработал.
http://softhelp.org.ua - мой блог
Игры для Ubuntu - http://ubuntugame.org.ua/
Что такое Ubuntu? - https://ubuntu-for-all.blogspot.com/

Оффлайн inkblack

  • Старожил
  • *
  • Сообщений: 1216
    • Просмотр профиля
Re: Как массово извлечь звук из видео файлов
« Ответ #12 : 20 Июня 2013, 00:56:40 »
Еще предлагали так.
Я пользовался, у меня всё работало.

Ну, а вам в скрипте надо поменять строчку с вызовом   ffmpeg  на предложенную;
а   input_video.wmv   и   output_audio.mp3   заменить на   "$f"   и   cash/"$f".mp3

А можно и не менять пока, а попробовать поставить кавычки! Я так понял,
у вас это дело не работало из-за пробелов в именах файлов! Кавычки помогут.
Делюсь знаниями, но их у меня мало!

Оффлайн peregrine

  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7211
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: Как массово извлечь звук из видео файлов
« Ответ #13 : 20 Июня 2013, 01:30:19 »
dm2003, я просто думал, что если все файлы одинаковые, то от ffmpeg надо избавляться. Уж слишком часто он стал глючить, особенно с aac и ogg(ogv). Да ещё и тормоз, по сравнению с родными для многих форматов утилитами. Потому и спросил, а про ядра, так как если ядер, памяти и файлов дофига, то лучше запускать по процессу на ядро, так как многие конвертилки работают только в один поток, но раз файлов мало и это дело не надо ставить на поток, то это не имеет значения. А скрипт конечно не заработал, так как ffmpeg из-за глючности собираются совсем выпилить из Ubuntu. Вот такие дела. Тем более Вы там имя файла с пробелами не предусмотрели и нормальную установку расширения, то что написаноо в скрипте просто добавит mp3. То есть получится такая байда: MyFile.mkv.mp3, вместо MyFile.mp3
Предлагаю так исправить скрипт, если всё же решили использовать ffmpeg и он Вас устраивает:
Код: (bash) [Выделить]
#!/bin/sh
mkdir cash
for f in *.avi *.MOV *.mkv *.mp4 *.mpg ;
do
ffmpeg -i "$f" -vn -ar 44100 -ac 2 -ab 192k -f mp3  cash/"${f%.*}".mp3
done

Пользователь решил продолжить мысль 20 Июня 2013, 01:35:40:
С Lame тут лучше не связываться, только лишний тормоз, и так ffmpeg уже есть, зачем ещё пайпы и Lame.
« Последнее редактирование: 22 Июня 2013, 20:41:20 от peregrine »

Оффлайн dm2003

  • Автор темы
  • Участник
  • *
  • Сообщений: 171
    • Просмотр профиля
    • Книга статей блога softhelp.org.ua
Re: Как массово извлечь звук из видео файлов
« Ответ #14 : 20 Июня 2013, 01:58:18 »
Спасибо,peregrine и inkblack, на досуге попробую. peregrine, а что можете посоветовать вместо ffmpeg?
http://softhelp.org.ua - мой блог
Игры для Ubuntu - http://ubuntugame.org.ua/
Что такое Ubuntu? - https://ubuntu-for-all.blogspot.com/

 

Страница сгенерирована за 0.05 секунд. Запросов: 25.