Representasi digital dari audio analog. Program pendidikan singkat



Pembaca yang budiman, nama saya Felix Harutyunyan. Saya seorang mahasiswa, seorang pemain biola profesional. Dalam artikel ini saya ingin berbagi dengan Anda kutipan dari presentasi saya, yang saya presentasikan di Universitas Graz Musik dan Teater tentang masalah akustik terapan.

Pertimbangkan aspek teoretis dari mengubah sinyal analog (audio) menjadi digital.
Artikel ini tidak akan komprehensif, tetapi akan ada hyperlink dalam teks untuk mempelajari topik ini lebih lanjut.

Apa perbedaan antara audio digital dan analog?


Sinyal analog (atau kontinum) dijelaskan oleh fungsi waktu yang kontinu, yaitu. Memilikigaris kontinu dengan serangkaian nilai yang berkesinambungan (Gbr. 1).

ara. 1


Sinyal digital adalah sinyal yang dapat direpresentasikan sebagai urutan nilai digital yang ditentukan. Pada waktu tertentu, hanya diperlukan satu nilai akhir yang pasti (Gbr. 2).

ara. 2


Sinyal analog dalam rentang dinamis dapat mengambil nilai apa pun. Sinyal analog dikonversi menjadi digital menggunakan dua proses - diskritisasi dan kuantisasi . Antrian proses tidak penting.

Diskretisasi adalah proses merekam (mengukur) nilai sinyal pada interval waktu tertentu (biasanya sama) (Gbr. 3).

ara. 3


Kuantisasi adalah proses membagi rentang amplitudo sinyal menjadi sejumlah level tertentu dan membulatkan nilai yang diukur selama pengambilan sampel ke level terdekat (Gbr. 4).

ara. 4


Diskretisasi mematahkan sinyal dalam komponen waktu (secara vertikal, Gbr. 5, kiri).
Kuantisasi membawa sinyal ke nilai yang diberikan, yaitu, membulatkan sinyal ke level terdekat (secara horizontal, Gbr. 5, ke kanan).

ara. 5


Kedua proses ini menciptakan semacam sistem koordinat yang memungkinkan Anda untuk menggambarkan sinyal audio dengan nilai tertentu kapan saja.
Digital adalah sinyal yang menerapkan diskritisasi dan kuantisasi. Digitalisasi dilakukan dalam konverter analog-ke-digital (ADC) . Semakin besar jumlah level kuantisasi dan semakin tinggi frekuensi sampling, semakin akurat sinyal digital sesuai dengan analog (Gbr. 6).

ara. 6


Level kuantisasi diberi nomor dan kode biner ditetapkan untuk setiap level . (gbr. 7)

ara. 7


Jumlah bit yang ditugaskan untuk setiap level kuantisasi disebut kedalaman bit atau kedalaman kuantisasi (eng. Bit depth). Semakin tinggi kedalaman bit, semakin banyak level yang dapat direpresentasikan dalam kode biner (Gbr. 8).

ara. 8.


Rumus ini memungkinkan Anda untuk menghitung jumlah level kuantisasi:

Jika N adalah jumlah level kuantisasi,
n adalah kedalaman bit, maka

N=2n



Biasanya, bit 8, 12, 16, dan 24 bit digunakan. Mudah untuk menghitung bahwa untuk n = 24 jumlah levelnya adalah N = 16.777.216.

Pada n = 1, sinyal audio akan berubah menjadi kode Morse: apakah ada ketukan atau tidak. Ada juga floating point 32 bit. CD-Audio kompak konvensional memiliki kapasitas 16 bit. Semakin rendah kedalaman bit, semakin banyak nilai dibulatkan dan semakin besar kesalahan kuantisasi.

Kesalahan kuantisasi adalah penyimpangan sinyal terkuantisasi dari analog, yaitu perbedaan antara nilai inputX dan nilai terkuantisasi X(XX)

Kesalahan kuantisasi yang besar mengakibatkan distorsi sinyal audio yang parah ( noise kuantisasi ).

Semakin tinggi kedalaman bit, semakin kesalahan kuantisasi yang tidak signifikan dan rasio sinyal / noise yang lebih baik (Signal-to-noise ratio, SNR), dan sebaliknya pada kedalaman bit yang rendah akan menimbulkan noise (Gbr 9.).

ara. 9


Kedalaman bit juga menentukan rentang dinamis sinyal, yaitu rasio nilai maksimum dan minimum. Dengan setiap bit, rentang dinamis tumbuh sekitar 6dB ( desibel ) (6dB adalah 2 kali; yaitu, grid menjadi lebih padat, gradasi meningkat).

ara. 10. Intensitas kebisingan pada kedalaman bit 6 bit dan 8 bit


Kesalahan kuantisasi (pembulatan) karena jumlah level yang tidak mencukupi tidak dapat diperbaiki.

kebisingan kuantisasi


amplitudo sinyal pada 1-bit (atas) dan 4-bit


Contoh Audio 1: 8bit / 44.1kHz, ~ 50dB SNR
Catatan: Jika file audio tidak dapat diputar online, silakan unduh .


Contoh Audio 1


Contoh Audio 2: 4bit / 48kHz, ~ 25dB SNR


Contoh Audio 2


Contoh Audio 3: 1bit / 48kHz, ~ 8dB SNR


Contoh Audio 3


Sekarang tentang pengambilan sampel.

Seperti disebutkan sebelumnya, ini adalah pemisahan sinyal secara vertikal dan mengukur nilai suatu nilai setelah periode waktu tertentu. Interval ini disebut periode sampling atau interval sampling. Laju pengambilan sampel , atau laju pengambilan sampel ( laju sampel terkenal) adalah nilai yang terbalik dengan periode pengambilan sampel dan diukur dalam hertz . Jika
T adalah periode pengambilan sampel, maka
F adalah frekuensi pengambilan sampel
F=1/T

Agar sinyal analog dapat dikonversi kembali dari sinyal digital (untuk merekonstruksi secara akurat fungsi kontinu dan halus dari nilai "titik" diskrit), seseorang harus mengikuti teorema Kotelnikov (teorema Nyquist - Shannon).

Teorema Kotelnikov menyatakan:
( ) , , , .
Apakah Anda tahu nomor 44.1kHz? Ini adalah salah satu standar untuk frekuensi sampling, dan angka ini dipilih justru karena telinga manusia hanya mendengar sinyal hingga 20kHz. Angka 44.1 lebih dari dua kali lebih besar dari 20, sehingga semua frekuensi dalam sinyal digital yang dapat diakses oleh telinga manusia dapat dikonversi dalam bentuk analog tanpa distorsi.

Tetapi bagaimanapun juga 20 * 2 = 40, mengapa 44.1? Ini semua tentang kompatibilitas dengan standar PAL dan NTSC . Tetapi hari ini kita tidak akan mempertimbangkan momen ini. Apa yang akan terjadi jika Anda tidak mengikuti teorema Kotelnikov?

Ketika frekuensi ditemukan dalam sinyal audio yang lebih tinggi dari 1/2 dari frekuensi sampling, maka aliasing terjadi - suatu efek yang mengarah pada superposisi, ketidakteraturan dari berbagai sinyal kontinyu ketika mereka dijadikan sampel.

Mengasingkan


Seperti dapat dilihat dari gambar sebelumnya, titik pengambilan sampel terletak sangat jauh satu sama lain sehingga ketika melakukan interpolasi (mis., Mengubah titik diskrit kembali ke sinyal analog), frekuensi yang sama sekali berbeda dipulihkan secara tidak sengaja.

Contoh Audio 4: Frekuensi yang meningkat secara linear dari ~ 100 hingga 8000Hz. Frekuensi pengambilan sampel - 16000Hz. Tidak ada aliasing.


Analisis spektral


Contoh Audio 5: File yang sama. Frekuensi pengambilan sampel - 8000Hz. Ada aliasing


Analisis spektral


Contoh:
Ada bahan audio di mana frekuensi puncaknya adalah 2500Hz. Oleh karena itu, frekuensi pengambilan sampel harus dipilih setidaknya 5000Hz.


Karakteristik selanjutnya dari audio digital adalah bitrate . Bitrate adalah jumlah data yang dikirimkan per unit waktu. Kecepatan bit biasanya diukur dalam bit per detik (Bit / s atau bps). Kecepatan bit bisa variabel, konstan atau rata-rata.

Rumus berikut memungkinkan Anda untuk menghitung bitrate (hanya berlaku untuk stream data terkompresi):

Bitrate = Kecepatan sampel * Kedalaman bit * Jumlah saluran

Misalnya, bitrate Audio-CD dapat dihitung sebagai berikut:
44100 (laju sampel) * 16 (laju bit) * 2 (jumlah saluran, stereo ) = 1411200 bps = 1411.2 kbit / s

Dengan bitrate konstan (CBR), transmisi volume aliran data per satuan waktu tidak berubah sepanjang transmisi. Keuntungan utama adalah kemampuan untuk memprediksi ukuran file akhir secara akurat. Dari minus - bukan rasio optimal ukuran / kualitas, karena "kepadatan" bahan audio selama karya musik berubah secara dinamis.

Saat menyandi dengan bit rate variabel (VBR), codec memilih bit rate berdasarkan kualitas yang diinginkan. Seperti namanya, bitrate bervariasi pada file audio yang disandikan. Metode ini memberikan rasio kualitas / ukuran terbaik dari file output. Dari minus: ukuran pasti dari file final sangat buruk diprediksi.

Bitrate rata-rata (ABR) adalah kasus khusus VBR dan mengambil tempat antara antara bitrate konstan dan variabel. Kecepatan bit spesifik ditetapkan oleh pengguna. Program masih bervariasi dalam rentang tertentu, tetapi tidak melampaui nilai rata-rata yang diberikan. 

Untuk bitrate yang diberikan, kualitas VBR biasanya lebih tinggi dari ABR. Kualitas ABR, pada gilirannya, lebih tinggi dari CBR: VBR> ABR> CBR.

ABR cocok untuk pengguna yang membutuhkan manfaat penyandian VBR, tetapi dengan ukuran file yang relatif dapat diprediksi. Untuk ABR, pengkodean dalam 2 lintasan biasanya diperlukan, karena pada lintasan pertama codec tidak tahu bagian mana dari bahan audio yang harus dikodekan dengan bitrate maksimum.

Ada 3 metode untuk menyimpan materi audio digital:

  • Data (mentah) terkompresi
  • Data lossless
  • Data Terkompresi Rugi

Format data tidak terkompresi (RAW)


hanya berisi urutan nilai biner.
Dalam format ini bahan audio disimpan dalam Audio-CD. File audio yang tidak terkompresi dapat dibuka, misalnya, di Audacity. Mereka memiliki ekstensi .raw, .pcm, .sam, atau tidak memiliki ekstensi sama sekali. RAW tidak mengandung tajuk file ( metadata ).

Format lain untuk menyimpan aliran audio yang tidak dikompresi adalah WAV . Tidak seperti RAW, WAV berisi header file.

Format Audio Lossless


Prinsip kompresi mirip dengan pengarsip (Winrar, Winzip, dll.). Data dapat dikompresi dan didekompresi lagi beberapa kali tanpa kehilangan informasi.

Bagaimana cara membuktikan bahwa dengan kompresi lossless, informasi tersebut benar-benar tidak tersentuh? Ini dapat dibuktikan dengan metode interferensi destruktif . Kami mengambil dua trek audio. Di trek pertama, kami mengimpor file wav yang asli dan tidak terkompresi. Di trek kedua, kami mengimpor file audio yang sama, dikompresi tanpa kehilangan. Balikkan fase salah satu trek (gambar cermin). Saat memainkan kedua trek secara bersamaan, sinyal output akan diam.

Ini membuktikan bahwa kedua file berisi informasi yang benar-benar identik (Gbr. 11).

ara. sebelas


Codec kompresi lossless: flac, WavPack, Monkey's Audio ...

Jika kompresi lossy

penekanannya bukan pada menghindari kehilangan informasi, tetapi pada spekulasi dengan persepsi subjektif ( Psychoacoustics ). Misalnya, telinga orang dewasa biasanya tidak merasakan frekuensi di atas 16kHz. Dengan menggunakan fakta ini, codec kompresi yang hilang dapat dengan mudah memotong semua frekuensi di atas 16kHz, karena "tidak ada yang akan mendengar perbedaannya."

Contoh lain adalah efek masking . Amplitudo lemah yang tumpang tindih dengan amplitudo kuat dapat direproduksi dengan kualitas lebih rendah. Pada frekuensi rendah yang keras, frekuensi menengah yang tenang tidak ditangkap oleh telinga. Misalnya, jika ada suara pada 1kHz dengan tingkat volume 80dB, maka suara 2kHz dengan volume 40dB tidak lagi terdengar.

Ini menggunakan codec: 2kHz-sound dapat dihapus.

Analisis spektral mp3 codec dengan tingkat kompresi berbeda


Codec kompresi lossy: mp3, aac, ogg, wma, Musepack ...

Terima kasih atas perhatian Anda.

UPD:
Jika karena alasan tertentu file audio tidak dimuat, Anda dapat mengunduhnya di sini: cloud.mail.ru/public/HbzU/YEsT34i4c

All Articles