Czy mogę bezstratnie zwiększyć głośność pliku MP3?

57

Chcę zwiększyć głośność niektórych plików MP3, które mam. Czy można to zrobić w sposób bezstratny (bez ponownej kompresji pliku MP3, a tym samym obniżenia jego jakości)?

użytkownik602675
źródło

Odpowiedzi:

57

Tak. Możesz to zrobić. Techniki tej używa wiele programów, a poziomy są obliczane przez algorytm o nazwie ReplayGain. Dane dotyczące poziomu głośności MP3 można bezstratnie regulować, tak jak obraz JPEG można bezstratnie obracać.

Istnieją dwie metody

  1. Oblicz poziom głośności pliku i dodaj nowy znacznik, umożliwiając kompatybilnym programom dostosowanie głośności w locie
  2. Oblicz poziom głośności i dostosuj poziom mnożnika w danych mp3.

Od HydrogenAudio: Implementacje :

W metadanych można przechowywać informacje o obu typach ReplayGain (Track Gain i Album Gain). Informacje o zmianie głośności mogą być bardzo precyzyjne. Jeśli dane audio również zostały zmienione, metadane mogą zawierać informacje o „cofnięciu”. Nie wszystkie odtwarzacze / dekodery audio potrafią czytać i wykorzystywać informacje ReplayGain przechowywane w metadanych. Nie ma też standardu, gdzie i jak przechowywane są informacje ReplayGain; każda implementacja używa różnych formatów i umieszcza informacje w różnych lokalizacjach.

W metodzie danych audio rzeczywiste dane audio pliku są modyfikowane, tak aby jego naturalna / domyślna głośność odtwarzania była na poziomie docelowym. W tym scenariuszu można zastosować tylko jeden typ funkcji ReplayGain (wzmocnienie ścieżki lub wzmocnienie albumu). Jeśli gdzieś nie zostanie zapisana żadna informacja „cofnij”, przywrócenie oryginalnych danych audio może być niemożliwe. Ograniczenia formatu pliku audio mogą uniemożliwić precyzyjne (precyzyjnie dostrojone) dostosowanie wzmocnienia za pomocą tej metody. Na przykład pliki MP3 i AAC można modyfikować bezstratnie tylko co 1,5 dB. W zależności od formatu pliku audio proces może być również stratny w tym sensie, że może nieodwracalnie przesunąć sygnał powyżej maksymalnej amplitudy formatu (powodując przycięcie) lub poniżej minimum (powodując ciszę).

Druga metoda ma zmienić swój plik, ale ponieważ dane źródłowe nie jest modyfikowany nie traci jakości, stąd korekta może być dokonana bezstratnie. Zasadniczo nie jest to zalecane w przypadku głównej kolekcji, ponieważ modyfikuje pliki z ich pierwotnego stanu, ale może być bardzo przydatne w przenośnych odtwarzaczach multimedialnych.

Program o nazwie mp3gain może wykonać drugą opcję i odwracalnie regulować głośność plików mp3. Absolutnie nie przekodowuje i po prostu dostosowuje wartości wielkości w samym pliku mp3, aby zmienić głośność. Od HydrogenAudio: ReplayGain

Jeśli modyfikujesz wzmocnienie, zawsze modyfikuje globalne pola wzmocnienia w danych audio MP3. Może dodawać dość precyzyjne metadane, w tym cofanie informacji

Ze względu na sposób kodowania plików mp3 regulacja jest ograniczona do kroków 1,5dB, co zwykle wystarcza, aby się zbliżyć.

Foobar2k zawiera również tę funkcjonalność i może zastosować zmiany do plików.

Mokubai
źródło
Ciekawy. Czy możesz wyjaśnić pierwszą opcję? Czy to specjalne tagi ID3?
LPChip
2
W przeszłości testowałem jeden z programów, który twierdził, że wykonuje bezstratne obracanie pliku JPEG. Dekompresja wersji, która została czterokrotnie obrócona o 90 stopni, dała taką samą moc wyjściową jak dekompresja oryginału. Jednak dekompresja wersji, która została obrócona o 90 stopni tylko raz, nie dała takiego samego rezultatu jak dekompresja oryginału i obrócenie o 90 stopni. Tak więc obrót pliku JPEG o 90 stopni nie był całkowicie bezstratny, a główną przyczyną okazały się pewne asymetrie w samej specyfikacji JPEG.
kasperd
7
@kasperd, który jest dość interesujący, ponieważ pokazuje, że podczas obracania rzeczywiste zakodowane dane obrazu są w 100% zachowane, w przeciwnym razie kontynuacja obracania nigdy nie dałaby tego samego pliku, ale że następuje proces rekonstrukcji obrazu, który jest wrażliwy na rotacja danych. Nie jest to całkowicie zaskakujące, biorąc pod uwagę obliczenia, ale oryginalne skompresowane dane są w rzeczywistości nienaruszone przez proces i można je odzyskać. Dlatego sam obrót nie traci żadnych danych i dlatego jest bezstratny. W tym przypadku dekoder reaguje inaczej na obrócone dane.
Mokubai
2
(Myślę, że obroty JPEG są bezstratne tylko wtedy, gdy rozmiar obrazu w obu kierunkach jest wielokrotnością 8 pikseli)
Strawberry
1
@Strawberry: Dane JPG zawsze zawierają całkowitą liczbę kafelków w obu kierunkach, ale plik zawiera wymiary, które nie muszą być wielokrotnością tego. Gdyby obrócić dane w kafelkach, gdy wymiary nie były wielokrotnością rozmiaru czasu, fragmenty kafelków, które nie były widoczne, stałyby się widoczne, a niektóre widoczne części zostałyby zachowane, ale ukryte. Trzykrotne powtórzenie operacji spowoduje powrót do widoku ukrytych danych.
supercat
3

Moim zdaniem Replaygain nie jest odpowiedzią na to pytanie. Nie powoduje to zwiększenia głośności treści, a jedynie dodanie znacznika, aby poinformować graczy (tylko odtwarzacze, które obsługują znacznik) o dokonaniu własnej regulacji głośności w czasie odtwarzania. W szczególności nie jest kompatybilny ze wszystkimi odtwarzaczami i nie nadaje się do wszystkich zastosowań plików mp3 (takich jak łączenie ich w pojedynczy strumień itp.).

Z drugiej strony teoretycznie możliwe jest skalowanie wszystkich współczynników DCT bez dekodowania i ponownego kodowania (tj. Bez odwracalnej kwantyzacji i DCT, a następnie ponownego ich kodowania), tylko ponowne kodowanie Huffmana (które jest bezstratne). Kiedy pracowałem nad MPlayerem, wydaje mi się, że ktoś miał narzędzie, które to zrobiło, ale straciłem nazwę.

R ..
źródło
2

Tak, nazywa się to zyskiem powtórki, zasada jest bardzo prosta i działa całkiem dobrze. Zasadniczo oprogramowanie „nasłuchuje” utworu i określa, ile trzeba wzmocnić, aby brzmiało ono „normalnie”. Informacje są zapisane w formacie mp3tag, niezależnie od danych.

Kompatybilny odtwarzacz wykorzystuje te dane do automatycznego wzmocnienia głośności, aby wszystkie ścieżki były odtwarzane z tą samą głośnością. Proponuję spróbować http://www.foobar2000.org/ w tym ćwiczeniu. Klikając ścieżkę prawym przyciskiem myszy, możesz ją zeskanować, aw ustawieniach programu musisz ustawić korzystanie z informacji o wzmocnieniu powtórki.

JollyMort
źródło
1

Po pobraniu Audacity (bezpłatna aplikacja) https://sourceforge.net/projects/audacity/ , wybierz File / Import / Audio, przejdź do pliku mp3, kliknij go i wybierz open. Zobaczysz falę dwukanałową.
Z rozwijanego menu u góry kliknij Edytuj / Wybierz / Wszystkie. Gdy plik jest zaznaczony, wybierz Efekty z rozwijanej listy u góry i wybierz Normalizuj. Wystarczy kliknąć „ok” w oknie, które zostanie otwarte. Domyślne ustawienia są zwykle wystarczające. Kliknij zielony trójkąt odtwarzania z widocznych przycisków opcji, aby przetestować edytowany plik. Możesz pracować z wieloma innymi efektami, takimi jak Equalizacja, Wzmocnienie, Tony niskie i wysokie itp. Gdy jesteś zadowolony z wyników, wybierz Plik / Eksportuj audio i wybierz preferowany tryb „Zapisz jako typ”, zwykle .WAV lub .MP3.

Musiałem to zrobić z wieloma słabymi plikami, które otrzymałem.

5 ciągów
źródło