Bisakah saya menambah volume file MP3 tanpa kehilangan?

57

Saya ingin menambah volume beberapa file MP3 yang saya miliki. Apakah ada cara untuk melakukan ini dengan cara lossless (tanpa mengompres ulang file MP3 dan karenanya menurunkan kualitasnya)?

pengguna602675
sumber

Jawaban:

57

Iya nih. Kamu bisa melakukan ini. Teknik ini digunakan oleh sejumlah program dan level dihitung dengan algoritma yang disebut ReplayGain. Data tingkat volume Mp3 dapat disesuaikan tanpa kehilangan, seperti halnya gambar JPEG dapat diputar tanpa kehilangan.

Ada dua metode

  1. Hitung tingkat volume file dan tambahkan tag baru, membiarkan program yang kompatibel menyesuaikan volume dengan cepat
  2. Hitung level volume dan sesuaikan level pengali dalam data mp3.

Dari HydrogenAudio: Implementasi :

Dalam metode metadata, informasi tentang kedua jenis ReplayGain (Track Gain dan Album Gain) dapat disimpan. Informasi perubahan volume bisa sangat tepat. Jika data audio juga diubah, metadata dapat berisi info "batalkan". Tidak semua pemutar audio / decoder tahu cara membaca dan menggunakan informasi ReplayGain yang disimpan dalam metadata. Dan tidak ada standar untuk di mana dan bagaimana informasi ReplayGain disimpan; setiap implementasi menggunakan format yang berbeda dan menempatkan info di lokasi yang berbeda.

Dalam metode data audio, data audio aktual file dimodifikasi sehingga volume pemutaran alami / standarnya berada pada level target. Dalam skenario ini, hanya satu jenis ReplayGain (Track Gain atau Album Gain) yang dapat diterapkan. Jika tidak ada info "undo" yang disimpan di suatu tempat, tidak mungkin untuk mengembalikan data audio asli. Keterbatasan format file audio dapat mencegah penyesuaian perolehan yang tepat (dengan halus) dengan metode ini. Misalnya, file MP3 dan AAC hanya dapat dimodifikasi tanpa kehilangan dalam langkah 1,5 dB. Bergantung pada format file audio, prosesnya mungkin juga hilang dalam arti bahwa itu bisa mendorong sinyal di atas amplitudo maksimum format (menghasilkan kliping) atau di bawah minimum (menghasilkan keheningan).

Metode kedua tidak mengubah file Anda, tetapi karena data yang mendasarinya tidak dimodifikasi tidak kehilangan kualitas, maka penyesuaian dapat dilakukan tanpa kehilangan. Biasanya tidak direkomendasikan untuk koleksi utama Anda karena memodifikasi file dari keadaan aslinya, tetapi ini bisa sangat berguna untuk pemutar media portabel.

Program yang disebut mp3gain dapat melakukan opsi kedua dan menyesuaikan volume mp3 secara reversibel. Sama sekali tidak ada pengkodean ulang dan hanya menyesuaikan nilai magnitude dalam file mp3 itu sendiri untuk mengubah volume. Dari HydrogenAudio: ReplayGain

Jika memodifikasi gain, itu selalu memodifikasi bidang gain global dalam data audio MP3. Itu dapat menambahkan metadata yang agak tepat, termasuk membatalkan info

Karena cara file mp3 dikodekan penyesuaian terbatas pada langkah-langkah 1.5dB, yang biasanya cukup untuk mendapatkan dekat.

Foobar2k juga mencakup fungsi ini dan dapat menerapkan perubahan pada file.

Mokubai
sumber
Menarik. Bisakah Anda menjelaskan opsi pertama? Apakah ini tag ID3 khusus?
LPChip
1
Di masa lalu saya telah menguji salah satu program yang diklaim melakukan rotasi tanpa kehilangan file JPEG. Dekompresi versi yang telah diputar 90 derajat 4 kali menghasilkan output yang sama dengan dekompresi yang asli. Namun dekompresi versi yang telah diputar 90 derajat hanya sekali tidak menghasilkan hasil yang sama dengan mendekompresi yang asli dan berputar 90 derajat. Jadi rotasi 90 derajat file JPEG tidak sepenuhnya lossless, dan akar penyebabnya ternyata asimetri tertentu dalam spesifikasi JPEG itu sendiri.
kasperd
6
@kasperd yang cukup menarik karena menunjukkan bahwa dalam rotasi, data gambar yang disandikan aktual dipertahankan 100%, jika tidak terus memutar tidak akan menghasilkan file yang sama, tetapi bahwa ada proses selanjutnya dalam rekonstruksi gambar yang sensitif terhadap rotasi data. Ini tidak sepenuhnya mengejutkan mengingat perhitungan yang terlibat, tetapi data terkompresi asli Anda sebenarnya tidak terluka oleh proses dan dapat dipulihkan. Karenanya rotasi itu sendiri tidak kehilangan data apa pun dan oleh karena itu lossless. Ini adalah decoder yang bereaksi berbeda terhadap data yang diputar dalam kasus ini.
Mokubai
2
(Saya pikir rotasi jpeg adalah lossless hanya jika ukuran gambar di kedua arah adalah kelipatan 8 piksel)
Strawberry
1
@Strawberry: Data untuk JPG selalu memiliki jumlah bilangan bulat di kedua arah, tetapi file tersebut mencakup dimensi yang tidak perlu merupakan kelipatan dari itu. Jika seseorang memutar data di ubin ketika dimensi bukan kelipatan dari ukuran waktu, bagian dari ubin yang tidak terlihat akan menjadi terlihat, dan beberapa bagian yang telah terlihat akan dipertahankan tetapi disembunyikan. Mengulangi operasi tiga kali lagi akan membuat data yang tersembunyi kembali terlihat.
supercat
2

Ya, ini disebut replay gain, prinsipnya sangat sederhana, dan bekerja dengan baik. Pada dasarnya, perangkat lunak "mendengarkan" lagu Anda, dan menentukan seberapa banyak itu perlu diperkuat agar terdengar "normal". Informasi ini ditulis dalam mp3tag, terpisah dari data.

Pemain yang kompatibel kemudian menggunakan data itu untuk secara otomatis memperbesar volume untuk membuat semua trek direproduksi pada kenyaringan yang sama. Saya menyarankan untuk mencoba http://www.foobar2000.org/ untuk latihan ini. Dengan mengeklik kanan trek Anda dapat memindai itu, dan dalam pengaturan program Anda perlu mengatur untuk menggunakan info replay-gain.

JollyMort
sumber
2

Menurut pendapat saya, Replaygain bukan jawaban untuk pertanyaan ini. Itu tidak meningkatkan volume konten, hanya menambahkan tag untuk memberi tahu pemain (hanya pemain yang mendukung tag) untuk melakukan penyesuaian volume mereka sendiri pada waktu pemutaran. Secara khusus, ini tidak kompatibel dengan semua pemain, dan tidak cocok untuk semua penggunaan mp3 (seperti menggabungkannya menjadi satu aliran, dll.).

Di sisi lain, secara teori dimungkinkan untuk skala semua koefisien DCT tanpa decoding dan reencoding (yaitu tanpa membalikkan kuantisasi dan DCT kemudian mengulanginya), hanya mengulangi pengkodean Huffman (yang lossless). Dulu ketika saya bekerja di MPlayer, saya yakin seseorang memiliki utilitas yang melakukan ini, tetapi saya kehilangan jejak namanya.

R ..
sumber
1

Setelah mengunduh Audacity (aplikasi gratis) https://sourceforge.net/projects/audacity/ , pilih File / Impor / Audio, navigasikan ke file mp3 Anda, klik dan pilih buka. Anda akan melihat bentuk gelombang dua saluran.
Dari drop-down di klik atas pada Edit / Pilih / Semua. Sementara file dipilih pilih Efek dari daftar drop-down di atas dan pilih Normalisasi. Cukup klik "ok" dari jendela yang terbuka. Standarnya biasanya cukup. Klik segitiga putar hijau dari tombol radio yang terlihat untuk menguji file Anda yang diedit. Anda dapat bekerja dengan banyak efek lain seperti Equalization, Amplify, Bass & Treble dll. Ketika puas dengan hasilnya pilih File / Ekspor Audio dan pilih "save as type" yang Anda inginkan, biasanya .WAV atau .MP3.

Saya harus melakukan ini dengan banyak file lemah yang saya terima.

5 string
sumber