Zero Padding dan efeknya pada FFT

Zero padding berarti menambahkan nol diakhir sinyal. Misal kita memiliki vektor x sebagai berikut,

$$ x = [0 ~1~ 2 ~3 ~1~ 2~ 3~ 2~ 4~ 3] $$

Vektor tersebut memiliki ukuran 10 data. Zero padding adalah menambahkan nol di belakang vektor tersebut, misalnya kita tambahkan lima nol di belakang data terakhir sehingga menjadi,

$$x = [0 ~1~ 2~ 3~ 1~ 2~ 3~ 2~ 4~ 3~ 0~ 0~ 0~ 0~ 0]$$

Zero padding ini biasanya digunakan agar spektrum yang kita plot menjadi lebih halus.

Implementasi dengan Python

Implementasi zero padding dengan python bisa bermacam-macam, salah satunya dengan np.pad (salah lainnya dengan menggunakan np.zeros).

Contohnya adalah sebagai berikut:

>>> x = np.array([1, 2, 3, 4, 5])
>>> xpad = np.pad(x, (0, 5), 'constant') # menambahkan lima nol di belakang vektor a
>>> x
[1, 2, 3, 4 , 5, 0, 0, 0, 0, 0]

Efek terhadap FFT

Untuk apa menambahkah nol di akhir sinyal? Untuk memperhalus tampilan FFT agar lebih mudah difahami. Perhatikan skrip python berikut dan plot hasilnya.

https://gist.github.com/bagustris/65537598464f712b2e81e334dde5b6e1.js

Hasil:
Spektrum tanpa zero padding (biru) dan dengan zero padding (merah).

Zero padding (red) vs Non zero padding (blue)

Agar lebih jelas, kita zoom sebagai berikut.

Disini terlihat lebih jelas perbedaan spektrum setelah zero padding

Selamat belajar, semoga bermanfaat.

Acoustic & Sound Engineer Training 2015

ASET (Acoustic and Sound Engineering Training) merupakan salah satu agenda diantara beberapa kegiatan ITB insight 2015. Materi ASET 2015 ini adalah sebagai berikut:

  1. Hearing Music
  2. Hearing Music in Different Environment
  3. Small Room Acoustics
  4. Music Production

Bagian keempat inilah sebenarnya esensi dari ASET 2015 ini. Pak Jack dari UPH Jakarta yang juga seorang praktisi sound engineer menjelaskan dengan gamblang tentang proses produksi music mulai dari gambaran proses produksi, pra produksi, produksi/recording dan paska produksi. Gambar 1 atas adalah screenshot software Reaper, sebuah DAW (digital audio work station) yang digunakan dalam ASET kali ini. Berikut adalah resume singkat tentang keempat tahapan produksi tersebut.

Screenshot Reaper 5.1, DAW yang digunakan pada ASET 2015

1. Gambaran proses produksi suara

Sebelum melakukan proses produksi musik, sound engineer harus terselebih dahulu konsep produksi musik. Seperti kebanyak sistem pada umumnya, secara sederhana proses produksi suara adalah: input –> proses produksi –> output. Sedangkan tahapannya adalah: recording -> editing (if needed) –> mixing –> mastering. Hal lain yang perlu diperhatikan adalah routing yakni interfacing dari divais satu ke divais yang lain. Hal lainnya adalah chain, rantai atau alur dari alat musik sampai pada monitoring divais. Memberlakukan divais produksi tak kalah pentingnya dengan proses produksi itu sendiri, misalnya teknik menggulung kabel dan jangan menginjak kabel karena disitulah sinyal akustik musik dihantarkan. Namun dari ke semua proses tersebut yang penting adalah inputnya: penyanyi dan alat musik, jika penyanyi atau alat musik jelek kualitasnya, maka tidak akan menghasilkan produk rekaman yang bagus: garbage in, garbage out.

2. Pra produksi
Pada tahapan pra produksi, sound engineer harus menguasai dengan jelas baik alat musik, penyanyi, akustik ruang studio control room, dan hipotesa awal output yang akan dia dapatkan. Seorang sound engineer hendaknya memiliki visi yang tajam dan mampu memilih komponen mana saja yang dia gunakan, bukan sebaliknya malah disetir oleh teknologi.

Pada tahap ini sound engineer juga harus belajar menyimak banyak lagu (listening with effort, not only hearing). Dia juga harus open-minded, menerima segala bentuk suara yang bergizi dan konstruktif, mengabaikan perasaan suka/tidak suka pada beberapa jenis musik tertentu. Semua itu dilakukan untuk melatih telinga sebagai sensor pendengaran terbaik yang akan menghasilkan produksi suara yang baik pula.

3. Produksi
Proses produksi merupakan inti dari produksi suara. Pada tahap ini sound engineer harus mampu memahami saat itu juga karakter pemain musik dan alat musiknya, konfigurasi (tata letak) personil dan alat musik, konfigurasi mikrofon (X/Y, coinsident, near-coinsider), jenis dan polar pattern mikrofon, sample rate dan bit depth dalam merekam serta respon akustik ruang saat itu.

Skill terpenting dalam proses produksi adalah kemampuan trouble shooting dan improvement kualitas perekaman. Misalnya saat  suara satu alat musik lebih dominan dari alat musik lainnya, sound engineer langsung dapat mengatasinya. Begitu juga ketika terjadi ketidak seimbangan distribusi spektrum suara, misalnya suara bass (low freq) lebih dominan daripada mid dan high freq, sound engineer langsung dapat meresponnya, misalnya dengan menambah filter atau mengatur jarak. Dengan proses perekaman yang baik maka akan memudahkan proses selanjutnya yakni pasca produksi.

Saat merekam, sound engineer juga harus jeli, dia tidak hanya merekam suara namun menangkap momen dan ekspresi artis saat itu. Yang direkam ekspresinya, bukan musiknya, dan lebih baik wrong notes daripada merekam suara tanpa passion.

4. Pasca produksi
Tahap terakhir produksi suara adalah mixing atau pasca produksi sebelum masuk pada fase mastering. Pada tahap ini kreativitas sound engineer dituntut untuk bisa menggabungkan seni (art) dan teknik (engineering) sehingga menghasilkan kreativitas dalam bermusik. Proses mixing ini antara lain melibatkan aktivitas utama sebagai berikut:

  • EQ-ing
  • Compressor
  • Balancing
  • Positioning

Pada proses Equalizer-ing (EQ-ing), sound engineer harus mampu menghasilkan harmoni antar alat musik, bukan pada satu jenis alat musik saja. Teknik ini dapat dilakukan dengan mengeset range frekuesi output rekaman suatu alat musik pada daerah kerjanya dan mendengarkannya bersama alat-alat musik yang lainnya (jangan di-SOLO). Misalnya pada gitar, range frekuensinya berada pada mid hingga high frekuensi. EQ-ing juga bisa berfungsi untuk memfilter suara yang tidak diinginkan, misalnya terjadi shouting pada frekuensi tertentu, maka dapat dibalik (amplitudo dibuat negatif pada puncaknya) sehingga suaranya tidak terdengar.  Khusu drum kit, dengarkan rythm section (bass dan drum) dan turunkan sekitar menjadi -10 dB, based on best practice).

Teknik compressing menggunakan compressor berfungsi untuk meng-adjust dynamic range yang terlalu luas (volume terlalu tinggi). Dyname range adalah perbedaan suara forte (the hardest) dengan piano (the softest, bukan piano alat musik). Teknik ini biasanya juga digunakan pada stasiun radio untuk menjada volume suara dari satu lagu ke lagu lainnya. Compressing sangat berguna untuk mengatur dyname range dari suatu lagu, namun jangan dikompress terlalu extreme. Pada compressor variable yang digunakan adalah threshold (batas kompresi), rasio (misal 7:1, untuk kelebihan 7 dB akan menghasilkan output 1 dB dari threshold) dan attac/release (time respon kompresi).

Balancing merupakan pengaturan volume antar track agar terlihat harmonis. Meskipun terkesan mudah, teknik ini membutuhkan skill dan pengalaman yang mumpuni. Banyak menyimak (listening) dan belajar dari lagu lain (dicontohkan radiohead, yes, toto, dll) adalah salah satu faktor penentu keberhasilan balancing. Idealnya, master volume berada pada -18 dB karena akan diperkuat pada proses mastering.

Teknik keempat dan terakhir pada mixing adalah untuk menghasilkan persepsi dan sensasi 3D melalui positioning. Sebagai acuan (guidance, not the rules) maka biasanya vocal berada di tengah, bass di kiri, gitar di kanan dan di kiri, drum di tengah dan sebagainya. Bisa saja ada instrumen musik yang berpindah-pindah, dan perlu teknik khusus untuk menghasilkan efek tersebut. Keberhasilan teknik positioning akan menghasilkan kualitas suara yang mirip dengan realita pertunjukan musik sesungguhnya.

Demikianlah resume ASET 2015 kali ini, saya berharap bisa menerapkannya, teknik produksi suara khususnya untuk riset di bidang akustik dan pengolahan sinyal suara.

Interaural Time Difference (ITD)

ITD merupakan kepanjangan dari interaural time difference,  yakni perbedaan waktu tempuh sumber suara ke telinga kiri dan telinga kanan. Apa pentingnya ITD ini? Penting sekali, dengan ITD kita bisa memperkirakan dan mengetahui sumber suara tanpa melihatnya. Coba tutup mata anda, dan dengarkan suara yang ada, kemudian perkirakan di mana letak sumber suara tersebut. Sekarang buka mata anda, dan crosscheck posisi sumber suara yang anda perkirakan tadi, persis dengan perkiraan anda.

Ilustrasi 1: Sumber suara pada 0 derajat dan 30 derajat. Pada 0 derajat ITD adalah 0, sedang pada 30 derajat ITD dapat dicari pada gambar/grafik 3 (sumber: Thesis BT Atmaja, dok pribadi)

Teori Duplex
Teori tentang ITD ini pertama kali dikemukakan oleh Lord Rayleigh (1907) yang menyatakan bahwa perbedaan suara yang sampai pada telinga dapat dicari/dihitung,

provided evidence that timing differences between the ears were detectable

Teori duplex Lord Rayleigh ini mengandung dua dasar pengukuran sensitivitas pada I: ILD( Interaural level difference) dan sensitivitas ITD sbb:

Sensitivitas ILD:

  • Semakin tinggi frekuensi, semakin besar efek ILD
  • Ukuran kepala yang lebih besar akan menghasilkan ILD yang lebih besar pada frekuensi yang sama

Sensitivitas ITD:

  • Frequency-independent, tidak bergantung pada frekuensi, umumnya pengukuran dibawah 1,5 KHz
  • Ukuran kepala yang lebih besar menghasilkan range ITD yang lebih besar pula

Pengukuran ITD
Ada beberapa metode untuk mengukur ITD. Dasar metode tersebut sama, yakni mencari perbedaan sampainya suara pada telinga (kanan/bawah dan kiri/atas, gambar 2). Untuk mencari kapan suara tersebut mencapai telinga, dan bagaimana mengukur perbedaan suara pada telinga kanan dan kiri tersebut, beberapa metode berikut digunakan :

  • Onset  ITD >> Onset adalah sinyal permulaan yang mencapai telinga, ITD dihitung dari selisih permulaan kedua sinyal tersebut.
  • Transient ITD >> Metode transient menghitung puncak stimulus sinyal saat mencapai kedua telinga.
  • Ongoing ITD >> Metode ongoing ITD menggunakan sinyal periodik yang diukur ketika kedua sinyal di telinga kiri dan kanan match dan diukur pergeseran (shift) antar keduanya. Teknik ini lebih dikenal dengan pengukuran IPD (interaual phase differene).
Pengukuran ITD, mencari selisih suara yang diterima telinga kanan (bawah) dan kiri (atas), gambar di atas untuk white noise pada 90 derajat (tepat di sebelah telinga kana).

Hasil Pengukuran ITD
Hasil pengukuran ITD adalah seperti pada gambar 3 dibawah. Grafik tersebut menunjukkan range ITD dari 0 derajat sampai dengan 90 derajat. Pada saat 0 derajat berarti sumber suara tepat didepan kepala sehingga jarak tempuh suara untuk mencapai telinga kanan dan kiri sama dan selisih waktunya pun nol. Pada jarak 90 derajat, yakni ketika sumber suara berada tepat di samping telingan kanan, ITD mencapai maksimum, yakni sekitar sekitar 0.85 ms.

Aplikasi
ITD dapat diaplikasikan pada beberapa hal, yang paling utama adalah untuk menentukan posisi sumber suara (sound source localization). Dengan mengetahui sumber suara secara eksak, maka dapat dirancang robot audition (robot pendengar) yang mampu melakukan selective listening, yakni mendengarkan hanya pada sumber suara yang berbicara saja.

Sumber :
[1] “ITD” by PeloWisky – Own work. Licensed under Public Domain via Wikimedia Commons – http://commons.wikimedia.org/wiki/File:ITD.jpg#/media/File:ITD.jpg
[2] http://www.gnuplotting.org

Deteksi Multi Pitch Berdasarkan Jumlahan Harmonik

Pitch merupakan persepsi telinga manusia atas frekuensi dasar (suara). Deteksi maupun estimasi pitch banyak dipelajari dan digunakan untuk beberapa aplikasi seperti pemisahan suara, pengenalan suara atau untuk tuning alat musik.

Output progam

Berdasarkan paper Ansi Klapuri pada tahun 2006, estimasi multi-pitch ini dapat didekati dengan jumlahan harmonik. Pendekatan ini secara konseptual “sangat simpel” dan efisien secara komputasi. Ide dasarnya adalah dengan menghitung saliance, strength atau power dari kandidat F0 sebagai jumlah bobot amplitudo harmonik-harmoniknya. Pemetaan dari spektrum Fourrier menjadi “F0 salience spectrum”  didapatkan dari optimisasi data training.

Saliance dapat dihitung dari jumlah bobot amplutido dari harmonik sebagai berikut,

dimana f adalah frekuensi harmonik ke-n, dan g adalah bobot parsial harmonik m dari periode tau.

Metode

Metode deteksi dan estimasi multipitch ini pada dasarnya dapat dibagi menjadi dua bagian. Bagian pertama adalah spectral whitening dan kedua adalah perhitungan fungsi saliance. Spektral whitening ada pre-processing yang dilakukan untuk memaksa sinyal menjadi “flat” secara spektral. Teknik ini digunakan untuk menghilangkan informasi timbral.

Pada prakteknya menghitung saliance dari permsamaan satu di atas sangat sulit. Untuk memudahkan digunakan fungsi max Y dengan mengambil bagian diskretnya sebagai berikut,

Tampilan output dari algoritma Klapuri seperti tampak pada gambar pertama di atas. Selain menampilkan plot dari waveform dan frekuensi, pada command window Matlab, nilai frekuesi fundamental (F0) juga ditampilkan. Teknik ini cukup akurat untuk frekuensi suara 100 – 1700 Hz.

Repo kode Matlab dapat di akses pada link berikut,
https://bitbucket.org/bagustris/pitchdet/src

Sedangkan paper asli dari Ansi Klapuri yang diterbitkan pada 2006 dapat diakses pada link berikut,
http://www.cs.tut.fi/sgn/arg/klap/klap2006ismir.pdf

Memahami Perilaku Sinyal: Frekuensi, Amplitudo dan Fase

Tiga karakter sinyal akustik atau sinyal suara yang harus dipahami karakternya ketika melakukan analisa sinyal adalah sebagai berikut:

Karakter Sinyal (sumber: etutorial.com)

  1. Frekuensi
  2. Frekuensi pada pelajaran Fisika dasar, atau Fisika SMA, frekuensi didefinisikan sebagai “banyaknya getaran per 1 detik” sehingga memiliki satuan 1/s atau Hertz (Hz)

  3. Amplitudo
  4. Amplitudo adalah simpangan terbesar, baik diukur dari titik 0 ke puncak (peak) atau puncak ke puncak (peak-to-peak).

  5. Fase
  6. Fase atau lebih mudah dipahami dengan dengan istilah lain “beda fase” (phase shift) adalah posisi awal sinyal (gelombang) ketika t=0.

beda fase antart dua gelombang (sumber:wikipedia)

Hubungan antar ketiga parameter diatas, amplitudo, frekuensi dan fase dinyatakan dalam persamaan,

dimana y(t) adalah amplitudo (posisi sumbu y) pada t, omega menunjukkan frekuensi sinyal dan var phi menunjukkan fase sinyal.

Noise Removal dengan Audacity

Meski agak kecewa dengan spec mbp dibandingkan dengan G580, tapi saya cukup puas dengan kualitas mic dari Apple ini. Saat mencoba merekam suara dengan Audacity di Ubuntu Trusty, noise (derau) yang ikut terekam sangat kecil sekali. Padahal sepanjang sejarah perekaman dengan komputer sejak awal kuliah dulu (skripsi dan thesis saya tentang perekaman dan pengolahan suara), noise yang dihasilkan cukup besar. Dengan bantuan noise removal yang ada pada Audacity, kualitas perekaman suara mbp hampir tidak menghasilkan noise sama sekali!

Waveform sinyal sebelum dan setelah difilter

Posting singkat ini membahas perbandingan kualitas perekaman suara dengan built-in mic mbp (microphone was made by Apple) baik secara obyektif dengan analisa suara maupun secara subyektif dengan mendengarkan suara secara langsung. Tools yang saya gunakan adalah sebagai berikut:

  1. Audacity, untuk perekaman dan noise removal
  2. Praat, untuk plotting waveform dan analisa suara (f0)
  3. Soundcloud, untuk upload hasil perekaman

Proses perekaman dengan Audacity saya lakukan dengan timer record (Shift T) selama lima detik. Pertama saya rekam suara saya (melafalkan “bismillah”) setelah itu saya rekam background noise, juga selama 5 detik. Background noise saya gunakan sebagai profile noise. Langkah-langkah noise removal dengan Audacity ini bisa dilihat di channel youtube saya di link ini (atau di bagian akhir posting ini), saat itu perekaman saya lakukan dengan mic bawaan Lenovo G580 (bandingkan kualitas perekaman pada video tersebut dengan suara dari soundcloud di bawah).

Kemudian, dengan bantuan Praat, saya plotting waveform (gambar diatas). Dengan Audacity sebenarnya sudah terlihat perbedaan gelombangnya (noise terreduksi), namun akan lebih cantik bila visualisasi disini ditampilkan dengan praat. Oya, by default output gambar dari praat berupa file .eps. Saya mengkonversi .eps menjadi .png dengan imagemagick. Dengan praat pula saya lakukan analisa frekuensi dasar sebelum dan setelah noise removal, hasilnya tidak ada perbedaan berarti frekuensi dasar, yakni sebelumnya 159.64 Hz setelah dilakukan noise removal menjadi 159.72 Hz (interpolasi semua titik).

Komparasi secara subyektif dapat dilakukan dengan mendengarkan langsung file suara antara sebelum dan sesudah noise removal. Silakan dengar suara dari soundcloud berikut untuk mengetahui perbedaannya (bismillah0 – initial record, bismillah1 – after noise removal).

Screencast noise removal dengan Audacity

Screenshot Audacity

Memfilter Sinyal Suara Pada Range Frekuensi Tertentu (Bandpass) dengan Matlab / Octave

Buka – buka file lama di folder kuliah S1 Teknik Fisika, saya menemukan file script matlab yang saat itu dimintai tolong seorang teman untuk mengerjakan Tugas Akhirnya. Script ini untuk memfilter sinyal (suara) pada frekuensi tertentu dengan menggunakan bandpass filter, yakni gabungan antara low pass filter dan high-pass filter.

Misalnya kita mempunyai sinyal suara dengan frekuensi 0 – 20000 Hz, namun karena suatu hal (misalnya noise) kita cuma butuh sinyal di frekuensi 1000 – 4000 Hz saja, maka kita bisa menggunakan script matlab / octave ini. Script ini berjalan lancar baik pada Matlab maupun GNU Octave.

Gambar spectogram di bawah ini membandingkan spectogram sinyal sebelum difilter dan setelah difilter. Script untuk GNU / Octave ada di bawahnya.

Sinyal Noise

Sinyal setelah difilter

Berikut script kode Octave / Matlab (link Github disini).

% demo program untuk memfilter suara pada range fekuensi oktaf tertentu
% by bagustris bagustris@linuxmail.org
% adopted from somewhere (forget aka lupa)

% set general variables
clear all; close all; clc;
sf = 22050; % sample frequency
nf = sf / 2; % nyquist frequency
d = 1.0; % duration, ganti untuk merubah durasi suara
n = sf * d; % number of samples
nh = n / 2; % half number of samples

% set variables for filter
lf = 1000; % lowest frequency, ganti dengan batas bawah bandpass
hf = 4000; % highest frequency, ganti dengan batas atas bandpass
lp = lf * d; % ls point in frequency domain
hp = hf * d; % hf point in frequency domain

% band pass filter!
filter = zeros(1, n); % initializaiton by 0
filter(1, lp : hp) = 1; % filter design in real number
filter(1, n - hp : n - lp) = 1; % filter design in imaginary number

% make noise
rand('state',sum(100 * clock)); % initialize random seed
noise = randn(1, n); % Gausian noise
noise = noise / max(abs(noise)); % -1 to 1 normalization

% do filter
s = fft(noise); % FFT
s = s .* filter; % filtering
s = ifft(s); % inverse FFT
s = real(s);

%untuk mendengarkan suara asli
sound(noise,sf);
pause(d+0.5);

%untuk mendengarkan suara terfilter (bandpass);
sound(s,sf);
pause(d+0.5);

%untuk menyimpan file suara dalam format .wav
%ketik perintah berikut dalam command window (tanpa tanda persen%)
% wavwrite(s,sf 'namafile.wav');

Silakan dicoba. Please note the correctness and accurateness is not guaranteed.

Open Education: Chance and Challange

Sir John Daniel, the Commonwealth of Learning, ever said that it would require building three campuses for 30,000 students every week for the next 13 years. In this era, there is an alternative to solve this problem, a problem which is caused by conventional teaching method which requires physical building and physical meeting, a face to face. The alternative is an open education model which is backgrounded by [1],

  1. The lack of high quality training materials
  2. Shortage of qualified teachers
  3. Evident to expand access of (formal) education

Those three reason caused open movement in education. On of the big one, growth big and bigger, is MOOC, a massive open online course. Why MOOCs? The discussion about future of education will never end, but the trend converges to the three aspect belows [2],

  1. Technology—especially the Web, social media, and related technologies—enabling new forms of distributed education and learning
  2. Growing numbers of “edupreneurs” with new ideas for how to create new and innovative education and learning experiences, and benefiting from incubators and willing investors providing risk capital for new edu-ventures
  3. Disillusion by many students (and parents) of existing, traditional educational models and, especially, the high cost and inflexibility of these models.

Continue reading

PESQ and its implementation in Octave/Matlab

PESQ stands for ‘Perceptual Evaluation of Speech Quality’ and is an enhanced perceptual measurement for voice quality in telecommunications. If you want a Mean Opinion Score value (or MOS), then PESQ will give it to you. The new PESQ option will be especially relevant for engineers working in telecom, handsets, and handsfree accessories.
Because it becomes standard in telecommunication industry, it is very important to measure of speech processing output with this standar. A figure of overview of PESQ system can be seen in Fig.1
Fig. 1 : Overview of PESQ System
Perceptual audio tests measure how people perceive sound quality. While useful for evaluating both small differences in high-quality music, and larger differences in lower-quality voice material, this article focuses on doing the latter using PESQ (Perceptual Evaluation of Speech Quality).

Perceptual voice quality tests are especially valuable for devices that are bandwidth and/or bitrate limited, and that have codecs that significantly alter the sound. In these cases, many compromises must be made, and perceptual tests help to determine what balance of compromises will lead to the best voice intelligibility. In fact, it can be difficult with some of these devices to get consistent or comparable results using standard sine wave audio tests of electrical properties, such as frequency response and distortion. Ultimately, a combination of both perceptual and electrical audio tests can help to give the most complete picture of the performance of these devices.
Subjective vs. Objective Perceptual Tests
In subjective perceptual measurements, a group of people is assembled and asked to judge the sound quality of various audio clips, typically on a scale from 1 to 5. Subjective perceptual measurements require careful selection of a representative audience and careful control over the environment to achieve meaningful results. When all the individual scores are tallied, the result is called the Mean Opinion Score (MOS).
It’s expensive and time consuming to test with real people, and results will vary from group to group. We can overcome these limitations by instead using tools that incorporate algorithms based on psychoacoustic modeling. Psychoacoustic modeling seeks to correlate measurable impairments in the audio with users’ opinion scores. Testing with these tools imparts other advantages, like being able to make small adjustments to a design and quickly observe the results, or being able to do perceptual testing on a production line—things that would be essentially impossible to do with groups of people. These measurements are classified as objective because they are unaffected by human temperament or test conditions, and the results are repeatable.
Fig. 2: Diagram Block of PESQ

Octave/Matlab Implementation

To measure the output of your sound processing algorithm, you can try the PESQ matlab code which can be downloaded here. Then, you can try the following command to calculate the PESQ score between to signals.

pesq(‘inputfile.wav’, ‘outputfile.wav’)

please note that PESQ only support 8000 and 16000 Hz of sampling frequency. If your sound data are not in those kind of frequencies, you can use resample function to upsample or downsample  your sound data.
sournce:Audio Precision

DSEE Sony Vs DNSe Samsung

DSEE (Digital Sound Enhancement Engine) by Sony : Restore sounds back to original

Listen to the music like it was meant to be. Degraded sounds of compressed audio is now improved and the high frequency range restored, reproducing natural, high quality sounds as close to the original source as can be.  

Digital Sound Enhancement Engine (DSEE) is Sony’s originally developed audio bandwidth enhancement technology. DSEE is a technology to enhance the sound quality of compressed audio files by restoring high-range sound removed by the compression process.When original music source is compressed with MP3 (or AAC/WMA), high frequency part of music source will be lost. The technology of DSEE enables to restore high frequency part and reproduces high quality sound which is close to the original CD sound source. By activating the [DSEE(Sound Enhance)]feature, you can hear a rich and natural sound almost exactly like the original source. 

DSEE Technology

DNSe (Digital Natural Sound engine) by Samsung

DNSe or the Digital Natural Sound engine is a DSP audio enhancement technology developed by Samsung in 2003 and further on implemented throughout many of their product lineups – from TVs and DVD players to portable music players and lately – mobile phones.

As Samsung puts it, the aim of DNSe is to restore the best sonic experience to the end user. Purportedly, the sound engine yields higher quality sound with more natural effects than conventional methods by reproducing the ‘genuine’ stereo sound intended by the music content creators. It achieves this by actively working on overcoming the limitations of earphones and less-than-ideal speakers to offer realistic stereo and deep bass sounds.
In addition, Samsung have created ideal listening presets that further compensate for the native restrictions of portable multimedia players. The system uses several basic processing methods aiming at various imperfections of the sound produced by portable players.
Concert Hall recreates life-like reflected and reverberated sounds to simulate the experience of a live performance in a concert hall. 3D speaker separates and combines sound to create realistic sense of both space and distance through small-sized speakers. Clarity enhancement tries to electronically restore the distorted harmonics of the digitally compressed music. Bass Extension applies an electronic harmony logic to correctly play hi-fidelity sounds at an ultra-low frequency through earphones or small-sized speakers. And finally, Street mode selectively adjusts volume so that the tiny notes are audible even in the loud street environment without the uncomfortable boosting of the general volume level.
The DNSe sound enhancement system combines those sound enhancements with different equalizer settings to create various user-centric presets to suit the most common listening scenarios. If that is not enough, the system alows creating custom presets as well.
Samsung DNSe is not to be confused with the Samsung proprietary DNIe (Digital Natural Image engine) technology. DNIe is used in Samsung plasma and high definition television sets (HDTV). Purportedly, DNIe offers better detail than conventional televisions by using four proprietary processes that optimize and enhance image quality: a Motion Optimizer, a Contrast Enhancer, a Detail Enhancer, and a Color Optimizer.

So, which one is the best…? just hear the difference..