Raspberry Pi’ı FM Radyo Vericisine Dönüştürmek

Raspberry Pi’ı ek herhangi bir donanım kullanmadan bir radyo vericisine dönüştürebilirsiniz. Raspberry Pi ile mikrofonu veya bir ses dosyasını istediğiniz FM frekansında yayın yaparak yakınlardaki bir radyodan duyulmasını sağlayabilir, evinizde, iş yerinizde veya bir spor etkinliğinde radyo yayını yapmak için kullanabilirsiniz. Normalde Raspberry Pi’ın içerisinde bir FM vericisi (FM transmitter) yer almaz; ancak son yılların meşhur konularından birisi olan SDR (Software Defined Radio) yani yazılım tabanlı radyo tekniği sayesinde, ses verisinin PWM sinyalleri ile kodlanarak radyo yayını yapılması sağlanabilir. Benzer şekilde, ses verisinin dışında herhangi bir veri de FM bandı üzerinden gönderilebilir.

Okumaya devam et “Raspberry Pi’ı FM Radyo Vericisine Dönüştürmek”

İnternet Radyosu Kurmak

Raspberry Pi’ı kullanarak kolayca bir internet radyosu kurabilirsiniz. Raspberry Pi sahip olduğu küçük yapısı ve düşük güç tüketimi ile portatif bir yayın cihazı olarak kullanılabilir. Dilerseniz bir konferansı ya da sunumu internette canlı olarak sunabilir, dilerseniz harici diskinizdeki bir mp3 listesinin internet kullanıcılarına yayın yapabilirsiniz.

Okumaya devam et “İnternet Radyosu Kurmak”

Raspberry Pi’ı Konuşturmak

Raspberry Pi’ın konuşmasını sağlayarak robot projelerinize veya uygulama programlarınıza etkileşim katabilirsiniz. Raspberry Pi’ı kullanarak metinleri seslendirebileceğiniz birçok açık kaynak kod araç vardır.

Gerekli araçları yüklemeden önce Raspberry Pi’ın ses kaynağının 3mm jack üzerinden mi yoksa HDMI üzerinden mi alınacağını ayarlamak gerekir. Bunun için raspi-config aracının Advanced options menüsü altındaki Audio seçeneğinden uygun ses çıkışını seçin.

Okumaya devam et “Raspberry Pi’ı Konuşturmak”

Uzak bir ağ Konumundan Ses Aktarmak

Kitabın “SoX (Sound eXchange) ile kayıt yapmak” adlı başlığında kısaca açıklanan SoX (Sound of Exchange) aracı ile uzaktaki bir mikrofon kaynağını ağ üzerinden farklı bir konuma aktarmanız mümkündür. SoX ses akışını Raspberry Pi içindeki bir işlem (process) den diğerine aktarabildiği gibi (| pipe ile), ağ üzerinden de aktarabilir. Bu başlıkta ses kaynağı Raspberry Pi olmak üzere, bu kaynağı farklı bilgisayarlar üzerinde yüklü Windows ve Linux işletim sistemlerine canlı olarak nasıl aktarabileceğimize bakacağız. Uygulamaya başlamadan önce Raspberry Pi’ın varsayılan ses donanım aygıtlarını ile bu aygıtların ses ve hassasiyetlerini ayarlama ile ilgili olarak “Sese cihazlarını ayarlamak ve sınamak” başlığına göz atmanız yararlı olacaktır.

Sesi Raspberry Pi konumundan başka bir Raspberry Pi konumuna canlı olarak aktarmak için aşağıdaki komutu kullanabilirsiniz:

Okumaya devam et “Uzak bir ağ Konumundan Ses Aktarmak”

Sadece Ortamda Ses Olduğunda Kayıt Yapmak

Sürekli olarak ses kaydetmek gerektiğinde en iyi yöntem sadece ortamda ses olduğunda kayıtı başlatmaktır. SoX sahip olduğu filtre özellikleri ile ortamdaki ses belli bir düzeyin (threshold) üzerine çıktığında kayıt yapmak üzere ayarlanabilir. Bunun için öncelikle sesin hangi eşiğin üzerine çıktığında kayıt yapılacağını tespit etmektir. SoX stat filtresi kaydın ses seviyesi hakkında istatistiksel bilgiler sunar. Aşağıdaki komutu çalıştırın ve istatistik çıktısındaki Minumum amplitude değerini izleyin. Bu değer, 1 saniyelik süre dilimleri içerisinde ortamda rastlanan ses şiddeti seviyesinin en küçük değerini verir. Bu değeri kullanarak ayarlayabileceğiniz bir amplitude değeri, kaydı başlatmak için eşik değeri olarak kullanılabilir.

Okumaya devam et “Sadece Ortamda Ses Olduğunda Kayıt Yapmak”

Sesi Sürekli Olarak Kaydetmek

Alsa araçlarına alternatif olarak SoX, ses kaydetme amacıyla da kullanılabilir.

Yukarıdaki komut 1 numaralı ses kartından saniyede 44100 örnek alarak mp3 biçimli olarak 1.mp3 dosyasına kaydedecektir. Kayıt süresini ayarlamak için trim seçeneğinden yararlanılabilir. Trim seçeneği ile sesin başından itibaren ne kadarının kırpılacağı ve bu kırpılmadan sonra ne kadar süre kayıt yapılacağı tanımlanır. Aşağıdaki komutu inceleyelim:

Okumaya devam et “Sesi Sürekli Olarak Kaydetmek”

Mikrofonu Varsayılan Ses Çıkışına Yönlendirmek

Sox’ı kullanarak ses kaynağı olan mikrofonu varsayılan ses çıkışına yönlendirmek için sox aşağıdaki gibi kullanılabilir. Varsayılan ses kaynağını ve çıkışını ayarlamak için “Ses cihazlarını ayarlamak ve sınamak” başlıklı konuya göz atabilirsiniz.

Okumaya devam et “Mikrofonu Varsayılan Ses Çıkışına Yönlendirmek”

SoX (Sound eXchange) ile Kayıt Yapmak

Mp3 ya da OGG dosyalarını komut satırından yürütmek, kaydetmek veya üzerlerinde değişiklik yapmak için SoX (Sound eXchange)[1] aracını kullanabilirsiniz. Kendini ses konusunda bir İsviçre çakısı gibi yetenekli olarak tanımlayan SoX, oldukça gelişmiş bir ses kayıt, dönüştürme ve işleme aracıdır. Birçok popüler dosya biçimini tanır (WAV, FLAC, MP3, OGG vb.) ve onlara efektler uygulayabilir. Ses yürütürken birçok farklı ses girdisini tek bir çıkışa yönlendirebilir veya birden fazla girdi aygıtını (mikrofon) tek bir çıkışa (hoparlör) gönderebilir. Kayıtları bölebilir, birleştirebilir ve bir formattan diğerine dönüştürebilir. Ses dosyasının yürütme hızını değiştirebilir, birden fazla dosyayı birleştirerek kaydedebilir, bass ve tiz ayarları yapabilir, ağ üzerinden akış olarak gönderip alabilir. SoX’u yüklemek için aşağıdaki komutu girin:

Okumaya devam et “SoX (Sound eXchange) ile Kayıt Yapmak”

Sesi Mp3 ve Ogg Biçimlerine Dönüştürmek

Önceki başlıkta görebileceğiniz gibi ALSA kullanarak Raspberry Pi ile ses kaydederken karşılaşılan en büyük dezavantaj MP3 desteği olmamasıdır. Bu nedenle kayıt dosyaları devasa boyutlara ulaşabilir, dosya boyutunu ufaltmak istediğiniz de ise ses kalitesinden ödün vermeniz gerekir. Mp3 ses dosyası biçimi tam da bu iki dezavantajı ortadan kaldırmak üzere yaratılmıştır: düşük dosya boyutu ve yüksek ses kalitesi. OGG biçimli dosya da Mp3 gibi düşük dosya boyutu ve yüksek ses kalitesi sunar. OGG ve Mp3’den yararlanabilmek için ilgili paketler olan LAME (Mp3) ve Vorbis (OGG)’i yüklemek gerekir:

Okumaya devam et “Sesi Mp3 ve Ogg Biçimlerine Dönüştürmek”

Sesi Wav Biçimiyle Kaydetmek

Ses kaydetmek için ALSA alt yapısının bir aracı olan arecord adlı program kullanılabilir. Araca -l seçeneğini vererek kayıt aygıtının tanınıp tanınmadığını görebilirsiniz:

Okumaya devam et “Sesi Wav Biçimiyle Kaydetmek”

Ses cihazlarını ayarlamak ve sınamak

Sisteme bağlı bulunan mikrofonların hassasiyet (gain) ve hoparlörlerin ses şiddeti ayarlarını yapmak için alsamixer adındaki araç kullanılır. Araç aşağıdaki gibi capture seçeneği ile çalıştırıldığında, capture yapacak cihazlar için hassasiyet ayarlanabilir. Birden fazla cihaz varsa Tab ve F6 tuşları ile istenilen aygıt ve ayar seçilebilir.

Okumaya devam et “Ses cihazlarını ayarlamak ve sınamak”

ALSA Mimarisi ve Ses İşlevleri

Bu bölümde ALSA (Advanced Linux Sound Architecture / Gelişmiş Linux Ses Mimarisi) alt yapısını kullanarak Raspberry Pi bilgisayarı ile temel ses kayıt ve yürütme işlevlerini nasıl kullanabileceğimize bakacağız. ALSA, ses kartı aygıt sürücüleri için bir uygulama programlama arabirimi (API) sunarak Raspberry Pi bilgisayarı üzerindeki ses işlevlerinin kullanılabilmesini sağlayan bir çekirdek modülüdür. ALSA, ses aygıtları (USB kulaklıklar, USB mikrofonlar ve web kameraları için) için çekirdek sürücüsü sağlayarak işletim sistemi üzerinde çalışan diğer programlar tarafından aygıtların kullanılabilmesini sağlar. Aşağıda ALSA mimarisinin şeması gözüküyor.

Okumaya devam et “ALSA Mimarisi ve Ses İşlevleri”