Ses işleme konusu görüntü işleme konusu ile karşılaştırılacak olursa daha zor ve zahmetli bir konu. Ses işleme algoritmaları, karmaşık matematiksel hesaplar gerektirir.
Bu yazıda ses işleme konusunda temel oluşturabilecek bazı bilgi ve kavramları yazacağım. Bunlar, sesi işlemek için yeterli olamayacak olsa bile, ses işleme konusunu araştırıp bu konuda daha ayrıntılı bilgiler edinmenizi kolaylaştırabilir.
Öncelikle ses, bildiğiniz gibi titreşimlerden meydana gelir. Bu titreşimler, dalgalar halinde yayılır ve su veya ışık dalgaları ile aynı özelliklere sahipler. Ses dalgaları birbirlerini güçlendirip zayıflatabilir veya söndürebilirler. Ses dalgalarının da, su dalgaları gibi genlikleri, dalga boyları ve frekansları var...
Bilgisayarda ses verilerinin saklanması için öncelikle bu verilerin dijital biçime çevrilmesi gerekir. Bizi ilgilendiren kısmı bu verileri alıp okumak, işlemek ve tekrar kaydetmek. Giriş olması açısından, ilk olarak wav dosyalarını kullanmak uygun olacaktır. Daha sonra, tampon bellek alanı oluşturup, bu alana ses verilerini yazdırmak ve okutmak suretiyle gerçek zamanlı ses işleme yöntemlerini de yazacağım...
Ses verileri genelde tamsayılardan oluşur ve tamsayıların alabileceği en büyük değerlere göre 1, 2 veya daha çok bayt ile temsil edilirler. Bu özelliklerine göre de 8 bitlik, 16 bitlik... şeklinde sınıflandırılabilir. Ses, bu verilerin değişiminden meydana gelir. Yani arka arkaya gelen iki ses verisi arasındaki fark, çıkacak sesi belirler. Bu durumda arka arkaya dizilmiş 100 tane 8646 tamsayısının, hiçbir şekilde ses ifade edemeyeceğini söyleyebiliriz.
Ses te bir dalga olduğu için, dalgaların ölçülebilir bazı özelliklerine ve ilerde işimize yarayacak bazı kavramlara bakalım.
Desibel
Gereksiz bir ayrıntı da olsa, desibeldeki 'bell'in 'Grahambell'deki 'bell'den geldiğini söyleyeyim. Db diğer ölçü birimlerinden oldukça farklı bir birim. Hatta kimileri bunu birim olarak kabul etmez. Desibel, iki değerin karşılaştırılmasından elde edilen boyutsuz bir sayı. Bir değer referans alınırken, bir diğerinin bu değerin kaç katı olduğu hesaplanır. Birimde değer artışı logaritmiktir.
Sonuç=log(değer2/değer1)*10 işlemiyle hesaplanır. Örneğin ses verisi 10 iken 1000 olursa oluşacak sesin desibel değeri log(1000/10)*10=20 db olacaktır. Bu şöyle okunmalıdır. Bir değer, diğerinden 100 kat büyük ise bu 20 desibel ile ifade edilir. Burda altı çizilmesi gereken şey şudur: 10db, oranı 10 olan iki değeri ifade ederken, 20db 100 katlık bir oranı gösterir. ( Logaritmik artıştan kasıt bu işte )
Frekans - Periyot
Bir şeyin, belli bir süreçte kendini tekrar etme sıklığını gösterir. Frekansın birimi
Hertztir. Hertz bir saniyede tekrarlanma sıklığıdır. Yani 2 hertz bir olayın saniyede iki defa tekrarlandığını ifade eder. Frekanstan bahsetmişken, periyottan da bahsedelim. Periyot frekansın tersidir(T=1/F). Bu da sürekli tekrar eden bir olayın iki tekrarı arasındaki süreyi gösterir.
Dalga Boyu
Bir dalganın, başlayıp bitene kadar x ekseninde aldığı yoldur. Frekans ile arasında bir ilişki vardır. Frekans ile dalga boyunun çarpımı, dalganın hızını verir.
Frekans Spektrumu
Belli bir frekans aralığında bir ses sinyalinin sahip olduğu frekansları gösteren grafik...
Big Endian ve Little Endian Bayt Sıralamaları
Bu terimler, ilerde wav dosyalarını açıp işlemeye başladığımızda işimize yarayacak. Big veya little endian, bit veya bayt sıralarında kullanılan kavramlardır. Big endian, en anlamlı baytın, little endian en anlamsız baytın öncelikli yazılmasıdır. Örneğin Türkçe'de rakamlar yazılırken basamak değeri en büyük olan (en anlamlı) rakam en önce yazılır. Okunurken de aynı şey geçerlidir. Bu örneği, biraz evvelki terimlerle karşılaştırırsak big endian'a karşılık gösterebiliriz. Bu da bilgisayarın dilindeki yazım sırası yani. Şöyle bir örnek daha vereyim; 8 bitlik bir alana 1 değerini atayalım. Eğer kullandığımız sistem big endian sıralama yapıyorsa, soldan sağa bitler kontrol ediğinde 00000001 görülür, litle endian sıralama yapıyorsa 10000000 görülür. İşlemciler de belleklere veri yazarken, bu iki yoldan birini kullanır. Örneğin intel, little-endian sıralamasını tercih etmiştir...
Okunma Sayısı: 706
Yayınlanma Tarihi: Blogun eski sürümü ile yazılmış, tarih kaydı bulunmuyor...
Anahtar Kelimeler: ses, spektrum, dalga, boyu, frekans, periyot, desibel
Yorumlar ( 2 )
mustafa çakmak#1
21/05/2010, 01:00
merhaba,LPC10 kodlama tekniği ile ilgili bilginiz varmı ? bu konuda yardıma ihtiyacım var.
Hüseyin Atasoy#2
25/05/2010, 10:09
Bu konuda hiçbir bilgim yok. İyi çalışmalar...
Yorum/Görüş Bildir