Jak mogę podzielić plik mp3?


35

Mam duży plik mp3, który pochodzi ze zgrywania pełnej płyty CD. Chciałbym podzielić go na jeden plik na piosenkę. Świetnie będzie znaleźć oprogramowanie, które może automatycznie podzielić plik, wykrywając początek i koniec każdej piosenki.

Dodatkowe tło:

Próbowałem mp3splt i audacity. Pierwszy nie wykrywa utworów automatycznie i wydaje się, że zuchwałość nie jest w stanie tego zrobić.

Chciałbym nagrać utwory na płytę CD (w formacie mp3), aby je następnie odtworzyć w radiu samochodowym. Nie będzie obsługiwał żadnych wymyślnych rzeczy, nie ma nawet złącza USB.


Czy płyta CD była pierwotnie jednym dużym splotem pliku, czy też zawiera pojedyncze ścieżki w odtwarzaczu CD?
djeikyb


Tylko jedna wiadomość, że użycie .cuepliku do załadowania tego pliku i odtworzenia każdego utworu z osobna to kolejna opcja.
earthmeLon

Audacity może wykrywać utwory, identyfikując między nimi ciszę. Lepiej jednak podzielić je za pomocą mp3splt, aby nie były dekodowane + ponownie kodowane. Zobacz mój przepływ pracy jako odpowiedź poniżej.
FairMiles,

Odpowiedzi:


14

Możesz podzielić swoje duże pliki mp3 na małe kawałki za pomocą funkcji „split” lub „split new” w audacity, a następnie możesz rozdzielić część dźwięku, którą chcesz zmiksować, do innego pliku w celu wyeksportowania.

Na następnym zrzucie ekranu stworzyłem nową ścieżkę stereo, aby umieścić podzielony dźwięk na innej ścieżce (wyłącznie w celach wizualnych), następnie przeniosłem drugą część ścieżki audio na tę ścieżkę i wybrałem część ścieżki dźwiękowej który można wyeksportować do nowego pliku.

wprowadź opis zdjęcia tutaj

Nie musisz dzielić dźwięku, aby wyeksportować część dźwięku do innego pliku, możesz po prostu wybrać dźwięk i wybrać „Eksportuj zaznaczenie” w menu Plik.

Na następnym zrzucie ekranu robię tak, jak powiedziałem w powyższych słowach.

wprowadź opis zdjęcia tutaj

Jeśli masz już płytę CD, zgrywanie audio za pomocą pliku na utwór można wykonać za pomocą „Sound Juicer”, co pozwoli ci wybrać sposób zgrywania multimediów z płyty CD. W ten sposób będziesz mieć plik mp3 na piosenkę. Audacity z łatwością wykona zadanie zmieszania wszystkich utworów w duży plik, na wypadek, gdybyś musiał to zrobić.

Sound Juicer można zainstalować poprzez synaptic lub nurkując na stronie: http://burtonini.com/blog/computers/sound-juicer

Tutaj umieszczono zrzut ekranu, aby zobaczyć, jak działa Sound Juicer. (Przepraszam, nie mam teraz płyty CD do zgrania, więc lista odtwarzania jest pusta)

wprowadź opis zdjęcia tutaj


48

Audacity jest do tego ZŁA - ponieważ ponownie koduje mp3, a jakość zostaje obniżona. Używam ffmpeg do wycinania mp3 - wierzę, że to nie przekodowuje:

  • czas rozpoczęcia, czas trwania:

    ffmpeg -i InputFile -vn -acodec copy -ss 00:00:00 -t 00:01:32 OutputFile
    
  • czas rozpoczęcia, czas zakończenia:

    ffmpeg -i InputFile -vn -acodec copy -ss 00:00:00 -to 00:01:32 OutputFile
    

można również uwzględnić milisekundy np 00:00:00.000.


Proszę zobaczyć komentarze do odpowiedzi jet.
Javier Rivera

Można argumentować, że podczas odtwarzania z samochodowego zestawu stereo można usłyszeć pojedynczy stratny transkod, ale tak powinno być, niezależnie od zastosowania.
Nit

2
FYI, te argumenty PRAWIE będą działać z „avconv”, jeśli jesteś na dystrybucji, która zastąpiła ffmpeg libav. Zastrzeżenie polega na tym, że musisz umieścić argument -ss przed argumentem -i. Zauważ też, że argumentem -t jest czas trwania, a nie szukania czasu.
ACK_stoverflow

@Adobe Podoba mi się to podejście. Czy wiesz, czy możesz określić ziarnistość w milisekundach? Muszę odciąć pierwszą część kilku plików mp3, które zaczynają się od tej samej niechcianej sekwencji.
frakman1

@ frakman1 masz na myśli określenie milisekund? W ten sposób: ffmpeg -i a.ogg -ss 00:01:02.500 -t 00:01:03.250 -c copy x2.ogg( źródło )
Adobe

32

Mówisz, że próbowałeś mp3splt, ale czy przeczytałeś całą stronę podręcznika ?

Pytam, ponieważ -stryb ciszy może przyjmować parametry, które pomogą mu ustalić cisze.

Oto przykład strony podręcznika man z opcjonalnymi parametrami:

mp3splt -s -p th=-50,nt=10 album.mp3
  • th: poziom progowy (dB), który należy uznać za ciszę
  • nt liczba utworów

Istnieje również -ctryb zapytania bazy danych CDDB. Jeśli jest to znana płyta CD, możesz pobrać listę utworów z Internetu. Spowoduje to również prawidłowe nazwanie ścieżek i (myślę) nawet skonfiguruje tagi.

Jest to niezwykle potężne narzędzie i jedna z najlepszych opcji zachowania jakości ... Więc nie odpisuj od razu.


2
Nie. Prawda jest taka, że ​​właśnie użyłem GUI mp3split-gtk. Spojrzę na nich.
Javier Rivera

Pech. Jedyną opcją niedostępną w GUI jest podanie liczby ścieżek. Ale to po prostu zignorowało i znalazło taką samą liczbę ścieżek jak w GUI.
Javier Rivera

9

możesz spróbować czegoś takiego:

ffmpeg -i /path/music.mp3 -t 00:10:00 -ss 00:20:00 -acodec copy /path/save.mp3


Jasne, ale za każdym razem będę musiał ręcznie znaleźć każdy utwór. Szybciej będzie to robić zuchwałością, przynajmniej widzę falę.
Javier Rivera

Jeśli chcesz
napisać

2

mp3splt działa dobrze. To, jak dobrze zależy od tego, od czego musisz zacząć i czego oczekujesz od wyników. Więcej wejść = więcej wyjść. Jeśli znasz liczbę utworów zawartych w dużych plikach mp3, pomaga to stwierdzić, że liczba plików wyjściowych jest poprawna. MUSISZ mieć sekcje ciszy między utworami w dużym pliku mp3. Kluczem mp3splt jest znalezienie poprawnej wartości dla „th”. Jeśli „th” jest zbyt niskie, możesz mieć zbyt wiele wyjść, więc wszystkie twoje utwory są pofragmentowane. Jeśli jest zbyt wysoka, Twoje utwory nie zostaną podzielone, a może być więcej niż 1 utwór na podział. Załóżmy, że masz duży plik i nic więcej: np. Brak indeksu tytułów lub czasów.

Mój duży plik nosi nazwę „artist.ogg” Oto polecenie, którego użyłem:

mp3splt -s -p th = -40 artist.ogg

Spowodowało to, że 34 utwory zostały poprawnie podzielone, każdy nazwany kolejno jako artist_silence_01.ogg -xx.ogg itp.

Ponownie, jeśli masz zbyt wiele podziałów, spróbuj „th = -48”. Jeśli jest za mało, spróbuj „th = -36”.

Z tych plików wyjściowych należy teraz zmienić ich nazwę na żądane tytuły piosenek i dodać etykiety do właściwości pliku. [Nie znam makra, więc musi to być proces ręczny].

mam nadzieję że to pomoże.

aktualizacja PS. Do tej pory mp3splt działa z plikami mp3 i ogg. Nie mam jeszcze sukcesu w przypadku plików m4a.



1

Następująca odpowiedź na temat przepełnienia stosu jest prawdopodobnie istotna:

https://stackoverflow.com/questions/36074224/how-to-split-video-or-audio-by-silent-parts

Podsumowując tę ​​odpowiedź, możesz użyć ffmpeg do zidentyfikowania cichych regionów:

ffmpeg -i "input.mov" -af silencedetect=noise=-30dB,d=0.5 -f null - 2> vol.txt

A następnie podziel pliki, używając przepisu Adobe:

ffmpeg -i InputFile -vn -acodec copy -ss 00:00:00 -t 00:01:32 OutputFile

Będzie to wymagało trochę analizy z twojej strony


0

Mam wyniki jakościowe (choć nie całkowicie automatyczne) z Audacity + mp3splt.

Jeśli nie masz pliku .cuelub .cddbpliku z limitami utworów (np. Nie jest to rozpoznany album), możesz:

  1. Ręcznie oznaczyć ścieżkę w Audacity, jak wyjaśniono w jej instrukcji , prawdopodobnie dzięki wcześniejszemu autodetekcji ciszy (z Analyze> Silence Finder…, patrz tutaj ), aby po raz pierwszy zgadywać notoryczne przerwy
  2. Wyeksportuj etykiety (za pomocą Plik> Eksportuj etykiety…, patrz tutaj ) do prostego pliku tekstowego i
  3. Podaj plik .txt do mp3splt w opcji -A(as mp3splt -A labels.txt Album.mp3).

Szybko (bez dekodowania + ponownego kodowania) wyświetli plik dla każdego segmentu, używając nazwy każdej etykiety jako nazwy pliku.

Uważaj tylko, aby używać etykiet regionu (a nie etykiet punktowych , patrz tutaj ), aby zaznaczyć początek i koniec każdego utworu w Audacity.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.