Jak transkodować pliki FLAC za pomocą flac2all w systemie Linux
flac2all to proste narzędzie, które pozwala konwertować wysokiej jakości pliki FLAC do niemal każdego nowoczesnego formatu audio. W przeciwieństwie do ffmpeg, to narzędzie automatyzuje proces sortowania, oznaczania i kodowania dźwięku FLAC. flac2all jest łatwy w instalacji i obsłudze. Dowiedz się, jak korzystać z tego niezwykle wszechstronnego programu, który może działać jako interfejs dla wszystkich Twoich potrzeb związanych z transkodowaniem dźwięku.
Treść
- Dlaczego warto używać flac2all
- Instaluję flac2all
- Używanie flac2all do transkodowania dźwięku
- Transkodowanie do wielu formatów
- Tworzenie niestandardowych zadań transkodowania
- Tworzenie klastra transkodowania flac2all
- Konfigurowanie uchwytu sieciowego
- Uruchamianie klastra flac2all
- Często Zadawane Pytania
Przeczytaj także: 4 sposoby na wydłużenie żywotności baterii laptopa z systemem Linux
Dlaczego warto używać flac2all
W swej istocie flac2all jest zarówno narzędziem do pakowania, jak i programem do planowania. Pobiera listę plików FLAC i używa różnych kodeków do kolejkowania i zarządzania procesem transkodowania.
Jedną z zalet tego podejścia jest to, że flac2all nie zależy od jednego kodera, co oznacza, że możesz łatwo dostosować program do dowolnego nowego formatu, którego chcesz użyć. Można na przykład zainstalować niestandardowy koder Fraunhofer FDK AAC obok zwykłego AAC.
Wreszcie, flac2all zachowuje również strukturę folderów Twojej kolekcji FLAC, więc nie musisz ponownie tworzyć katalogu swojego archiwum podczas korzystania z tego programu. Te funkcje sprawiają, że flac2all jest przydatnym narzędziem, jeśli szukasz szybkiego i łatwego sposobu na odtworzenie swojej kolekcji FLAC w innym formacie.
Przeczytaj także: Różnice między Su, Sudo Su, Sudo -s i Sudo -i
Instaluję flac2all
Przed zainstalowaniem flac2all ważne jest uzyskanie wszystkich jego zależności, aby mieć pewność, że po instalacji nie będzie konfliktów:
sudo apt install python3 flac python3-pip python3-zmq python3-notcurses lame opus-toolsNastępną rzeczą do zrobienia jest pobranie flac2all poprzez pip, menedżera pakietów specyficznego dla Pythona, którego możesz użyć do zainstalowania dodatkowego oprogramowania. Uruchom następujące polecenie, aby użyć pip:
pip3 install --user flac2allSpowoduje to zainstalowanie flac2all w katalogu „.local” bieżącego użytkownika. Jeśli więc korzystasz z systemu z wieloma użytkownikami, inni użytkownicy nie będą mogli uruchomić programu.
Aby uruchomić flac2all, dołącz swój katalog „.local” do zmiennej PATH swojego komputera, dodając następujący wiersz kodu do pliku „.bash_profile”:
PATH=$PATH:/home/$USER/.local/bin/
export PATHNa koniec uruchom ponownie lub wyloguj się z bieżącej sesji, aby zastosować nowe ustawienia, po czym możesz uruchomić flac2all -h, aby potwierdzić, że program został poprawnie zainstalowany.
Używanie flac2all do transkodowania dźwięku
Twórca flac2all zaprojektował program tak, aby był tak prosty, jak to tylko możliwe. Na przykład składnia transkodowania katalogu FLAC do jednego formatu wygląda następująco:
flac2all mp3 -o ./output ./royalty-free- Pierwszy element po „flac2all” podświetla format, na który chcesz transkodować. W tym przykładzie konwertuję mój folder FLAC na MP3.
- Drugi element zawiera opcje bieżącego zadania transkodowania. Tutaj opcja
-omówi flac2all, aby wysłał dowolne pliki MP3 do folderu „output”. - Wreszcie trzeci element wskazuje folder źródłowy plików FLAC. W moim przypadku jest to mój folder „bez tantiem”.
Przeczytaj także: Jak zmieniać rozmiar i optymalizować obrazy z terminala Linux
Transkodowanie do wielu formatów
Możesz także użyć flac2all do równoległego transkodowania plików do wielu formatów, co może być przydatne, jeśli chcesz przenieść swoje archiwum do odtwarzaczy o różnych wymaganiach formatowych.
Na przykład mogę uruchomić następujące polecenie, aby transkodować mój folder „bez tantiem” zarówno do formatu MP3, jak i Opus:
flac2all mp3,opus -o ./output ./royalty-freePamiętaj, że transkodowanie w wielu formatach zajmie więcej czasu niż transkodowanie w jednym formacie, ponieważ flac2all zakoduje każdy plik w twoim katalogu w każdym określonym formacie. W moim przypadku transkodowanie MP3 i AAC zajmie dwa razy dłużej niż samo transkodowanie MP3.
Tworzenie niestandardowych zadań transkodowania
Oprócz tworzenia prostych transkodowań, możliwe jest dostosowanie sposobu działania koderów za pomocą flac2all, co jest szczególnie przydatne, jeśli chcesz, aby kopia archiwum miała określoną jakość dźwięku. Spójrz na przykład na następujące polecenie.
flac2all mp3 --lame-options='b 320' -o ./output ./royalty-freeTo polecenie nakazuje programowi użycie kodera LAME MP3 do transkodowania mojego folderu „bez tantiem” przy stałej szybkości transmisji bitów wynoszącej 320 KB.
Można także tworzyć niestandardowe zadania dla transkodowań wieloformatowych. Na przykład następujące polecenie mówi flac2all, aby utworzył niestandardowe transkodowanie z MP3 i Opus:
flac2all mp3,opus --opus-options='downmix-mono' --lame-options='b 320' -o ./output ./royalty-freeTworzenie klastra transkodowania flac2all
Chociaż możesz używać flac2all na jednym komputerze, możliwe jest również rozproszenie programu na wiele systemów - praktyczne rozwiązanie przyspieszające proces transkodowania. Upewnij się, że masz przygotowane następujące zasoby:
- Dwie lub więcej maszyn, które mogą być ze sobą bezpośrednio połączone
- Serwer NAS, do którego można uzyskać dostęp na wszystkich komputerach, ponieważ główny proces flac2all instruuje tylko klientów roboczych, aby przetwarzali istniejące dane
- Niezawodne połączenie sieciowe pomiędzy procesem głównym a jego klientami roboczymi
Znając te czynniki, w tym samouczku skupimy się na utworzeniu małego klastra flac2all pomiędzy dwoma maszynami z systemem Ubuntu 22.04.
Przeczytaj także: Jak skonfigurować i używać protokołu SSH w systemie Linux
Konfigurowanie uchwytu sieciowego
Aby rozpocząć, utwórz instalację pamięci sieciowej. W tym celu użyję SSHFS, ponieważ jest łatwy w użyciu i dostępny dla prawie wszystkich dystrybucji Linuksa.
Aby rozpocząć, zainstaluj SSHFS na wszystkich komputerach, których chcesz używać:
sudo apt install ssh sshfsNastępnie utwórz folder, do którego będzie montowany SSHFS. Utworzę folder „bez tantiem” w katalogu domowym mojego komputera roboczego:
mkdir /home/$USER/royalty-freeTeraz zamontuj katalog „royalty-free” na każdym komputerze roboczym za pomocą następującego polecenia:
sshfs -o allow_other,default_permissions $USER@192.168.68.10:/home/$USER/royalty-free /home/$USER/royalty-freeUruchamianie klastra flac2all
Możesz teraz uruchomić klaster transkodowania, uruchamiając proces główny i dodając flagi -m i -C do flac2all.
Na przykład uruchom to polecenie na komputerze głównym, aby utworzyć proces główny:
flac2all lame,aac -m -C --lame-options='b 320' -o /home/$USER/output /home/$USER/royalty-freeW przeciwieństwie do zwykłego flac2all, utworzenie procesu głównego nie rozpocznie sesji transkodowania. Aby transkodować pliki, musisz także połączyć procesy robocze z procesem głównym, uruchamiając na swoich komputerach następującą komendę:
flac2all_worker 192.168.68.10Po zakończeniu klient roboczy utworzy bezgłowy proces, który łączy się z programem głównym. Następnie flac2all uruchomi się natychmiast po znalezieniu garstki pracowników w stanie gotowości.
Przeczytaj także: Jak pobrać i skonfigurować DaVinci Resolve w systemie Linux
Często Zadawane Pytania
flac2all nie kończy się po przetworzeniu moich plików audio. Jak rozwiązać ten problem?
Dzieje się tak za każdym razem, gdy występuje konflikt z flac2all i jego zależnościami w Pythonie. Napraw to, aktualizując instalację, aby odzwierciedlić wszelkie zmiany pomiędzy flac2all i jego zależnościami. Uruchom pip install --user --upgrade flac2all, aby zaktualizować flac2all.
flac2all zgłasza błąd „FileNotFound”. Czy moja instalacja jest uszkodzona?
NIE! Ten problem występuje, gdy program nie wykrywa kodera dla formatu, do którego chcesz dokonać transkodowania.
Na przykład uruchomienie flac2all opus […] bez kodera Opus spowoduje błąd „FileNotFound”. Możesz rozwiązać problem, instalując ffmpeg. Jest to program typu catch-all, który zainstaluje również większość popularnych koderów audio. Uruchom sudo apt install ffmpeg, aby dodać ffmpeg do swojego systemu.
Proces roboczy nie znalazł żadnego nośnika w moim montażu SSHFS. Czy flac2all jest uszkodzony?
Nie. Zwykle dzieje się tak z powodu niezgodności katalogu między procesem głównym a jego procesami roboczymi. Aby mieć pewność, że klaster transkodowania działa, sprawdź, czy ścieżki plików między każdym komputerem są takie same, uruchamiając pwd zarówno w folderze multimediów, jak i w katalogu głównym podłączenia SSHFS.
Źródło zdjęcia: Unsplash i Wikimedia Commons Wszystkie zmiany i zrzuty ekranu wykonał Ramces Red












