Создание пользовательских заданий перекодирования
высококачественные файлы FLAC практически в любой современный аудиоформат. В отличие от ffmpeg, эта утилита автоматизирует процесс сортировки, тегирования и кодирования аудиофайлов FLAC. flac2all прост в установке и использовании. Узнайте, как использовать эту универсальную программу, которая может служить интерфейсом для всех ваших потребностей в перекодировании аудио.Также читайте: 4 способа увеличить время автономной работы вашего ноутбука с Linux
Зачем использовать flac2all
По своей сути flac2all является одновременно оболочкой и программой планирования. Он принимает список файлов FLAC и использует различные кодеки для постановки в очередь и управления процессом перекодирования.
Одним из преимуществ этого подхода является то, что flac2all не зависит от одного кодировщика, а это
Contents
Зачем использовать flac2all
ровать программу к любому новому формату, который вы захотите использовать. Например, вы можете установить пользовательский Кодер Fraunhofer FDK AAC вместе с обычным AAC.Наконец, flac2all также сохраняет структуру папок вашей коллекции FLAC, поэтому вам не нужно переделывать каталог вашего архива при использовании этой программы. Эти функции делают flac2all удобной утилитой, если вы ищете быстрый и простой способ воссоздать свою коллекцию FLAC в другом формате.
Читайте также: Различия между Su, Sudo Su, Sudo -s и Sudo -i
Установка flac2all
Перед установкой flac2all важно получить все его зависимости, чтобы гарантировать отсутствие конфликтов после установки:
sudo apt install python3 flac python3-pip python3-zmq python3-notcurses lame opus-tools
Следующее, что вам нужно сделать, — загрузить flac2all через pip, менеджер пакетов для Python, который вы можете использовать для установить дополнительное программное обеспечение . Чтобы использовать pip, выполните следующую команду:
pip3 install --user flac2all
При этом flac2all будет установлен в каталог «.local» текущего пользователя. Поэтому, если вы используете многопользовательскую систему, другие пользователи не смогут запустить программу.
Чтобы запустить flac2all, включите каталог «.local» в переменную PATH вашего компьютера, добавив следующую строку кода в файл «.bash_profile»:
Установка flac2allpan>:/home/$USER/.local/bin/
export PATH
Наконец, либо перезапустите, либо выйдите из текущего сеанса, чтобы применить новые настройки, после чего вы можете запустить flac2all -h
, чтобы убедиться, что вы правильно установили программу.
Использование flac2all для перекодирования аудио
Разработчик flac2all сделал программу максимально простой. Например, синтаксис перекодирования каталога FLAC в единый формат выглядит следующим образом:
flac2all mp3 -o ./output ./royalty-free
- Первый элемент после «flac2all» выделяет формат, в который вы хотите перекодировать. В этом примере я конвертирую папку FLAC в MP3.
- Второй элемент содержит параметры текущего задания перекодирования. Здесь параметр
-o
указывает flac2all отправлять любые файлы MP3 в «выходную» папку. - Наконец, третий элемент указывает исходную папку для ваших файлов FLAC. В моем случае это папка «без лицензионных отчислений».
Читайте также: Как изменить размер и оптимизировать изображения из терминала Linux
Перекодирование в несколько форматов
Вы также можете использовать flac2all для параллельного перекодирования файлов в несколько форматов, что может быть полезно, если вы хотите перенести свой архив на проигрыватели с разными требованиями к формату.
Например, я могу запустить следующую команду, чтобы перекодировать мою папку «без лицензионных отчислений» как в MP3, так и в Opus:
flac2all mp3,opus -o ./output ./royalty-free
Обратите внимание, что перекодирование нескольких форматов займет больше времени, чем перекодирование одного формата, поскольку flac2all будет кодировать каждый файл в вашем каталоге для каждого указанного вами формата. В моем случае перекодирование MP3 и AAC займет вдвое больше времени, чем только перекодирование MP3.
Создание пользовательских заданий пИспользование flac2all для перекодирования аудио
, с помощью flac2all можно настроить поведение кодировщиков, что особенно полезно, если вы хотите, чтобы копия вашего архива имела определенное качество звука. Посмотрите, например, на следующую команду:
flac2all mp3 --lame-options='b 320' -o ./output ./royalty-free
flac2all mp3 --lame-options='b 320' -o ./output ./royalty-free
Эта команда сообщает программе использовать кодировщик LAME MP3 для перекодирования моей папки «без лицензионных отчислений» с постоянным битрейтом 320 КБ.
Вы также можете создавать собственные задания для многоформатного перекодирования. Например, следующая команда сообщает flac2all создать собственное перекодирование с MP3 и Opus:
flac2all mp3,opus --opus-options='downmix-mono' --lame-options='b 320' -o ./output ./royalty-free
Создание кластера транскодирования flac2all
Хотя вы можете использовать flac2all на одном компьютере, также возможно распространить программу на несколько систем — практическое решение для ускорения процесса перекодирования. Убедитесь, что у вас готовы следующие ресурсы:
- Два или более компьютеров, которые могут напрямую подключаться друг к другу.
- NAS, к которому вы можете получить д
Перекодирование в несколько форматов
процесс flac2all только инструктирует своих рабочих клиентов обрабатывать существующие данные. - Надежное сетевое соединение между главным процессом и его рабочими клиентами
Зная эти факторы, в этом руководстве основное внимание будет уделено созданию небольшого кластера flac2all между двумя компьютерами с Ubuntu 22.04.
Читайте также: Как настроить и использовать SSH в Linux
Настройка сетевого подключения
Для начала создайте подключение к сетевому хранилищу. Для этого я собираюсь использовать SSHFS, поскольку он прост в использовании и доступен практически для всех дистрибутивов Linux.
Для начала установите SSHFS на все машины, которые вы хотите использовать:
sudo apt install ssh sshfs
Далее создайте папку, к которой будет монтироваться SSHFS. Я создам папку «без лицензионных отчислений» в домашнем каталоге моего рабочего компьютера:
mkdir /home/$USER/royalty-free
Теперь смонтируйте каталог «без лицензионных отчислений» на каждом из ваших рабочих компьютеров с помощью следующей команды:
sshfs -o allow_other,default_permissions $USER@192.168.68.10:/home/$USER/royalty-free /home/$USER/royalty-free
Запуск кластера flac2all
Теперь вы можете запустить кластер перекодирования, запустив главный процесс и добавив флаги -m
и -C
в flac2all.
Например, запустите эту команду на своем основном компьютере, чтобы создать главный процесс:
flac2all lame,aac -m -C --lame-options='b 320' -o /home/$USER/output /home/$USER/royalty-free
В отличие от обычного flac2all, создание главного процесса не запускает сеанс перекодирования. Чтобы перекодировать файлы, вам также необходимо подключить рабочие процессы к главному процессу, выполнив следующую команду на ваших рабочих машинах:
flac2all_worker 192.168.68.10
После этого рабочий клиент создаст автономный процесс, который подключается к основной программе. После этого flac2all запустится сразу же, как только обнаружит несколько рабочих процессов в режиме ожидания.
Часто задаваемые вопросы
flac2all не завершает работу после обработки моих аудиофайлов. Как решить эту проблему?
Это происходит всякий раз, когда возникает конфликт с flac2all и его зависимостями Python. Исправьте это, обновив установку, чтобы отразить любые изменения между flac2all и его зависимостями. Запустите pip install --user --upgrade flac2all
, чтобы обновить flac2all.
flac2all выдает ошибку FileNotFound. Моя установка сломана?
Нет! Эта проблема возникает, когда программе не удается обнаружить кодировщик формата, в который вы хотите перекодировать.
Например, запуск flac2all opus […]
без кодировщика Opus приведет к ошибке FileNotFound. Вы можете решить проблему, установив ffmpeg. Это универсальная программа, которая также установит большинство распространенных аудиокодеров. Запустите sudo apt install ffmpeg
, чтобы добавить ffmpeg в вашу систему.
Рабочий процесс не смог найти носитель в моем монтируемом SSHFS. flac2all не работает?
Нет. Обычно это происходит из-за несоответствия каталогов между главным процессом и его рабочими процессами. Чтобы убедиться, что кластер перекодирования работает, убедитесь, что пути к файлам
Настройка сетевого подключения
ивpwd
как в папке мультимедиа, так и в корне вашего монтирования SSHFS.
раздел>
Изображение предоставлено: Unsplash и Викисклад . Все изменения и скриншоты сделаны Рамсесом Редом