İ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”

Kerberos.io Projesi ile Güvenlik Kamera Sistemi

kerberos.io web adresinde, Linux yanında Windows  IOT altyapısını kullanarak da çalışabilen bir güvenlik kamera sistemi yazılımı sunulmaktadır. Kerberos projesi Raspberry Pi ile bir güvenlik kamera takip ve kayıt sistemi gerçekleştirmek için özelleşmiştir.

Okumaya devam et “Kerberos.io Projesi ile Güvenlik Kamera Sistemi”

Farklı Lokasyonlardan Kamerayı İzlemek

Önceki başlıklarda, Raspberry Pi üzerinde farklı yazılımlar kullanarak, bir USB ya da CSI kameranın görüntüsünün ağ üzerinden nasıl akıtılacağını anlatmıştım. Söz konusu yazılımları kullanarak bir kameranın görüntüsünü ağ üzerinden akıttıktan sonra bu görüntüyü internet üzerinden farklı işletim sistemleri kullanarak izleyebilir kayıt altına alabiliriz.

Okumaya devam et “Farklı Lokasyonlardan Kamerayı İzlemek”

NodeRed hakkında daha fazla kaynak

Node-RED hakkında bilgi edinebileceğiniz en güncel ve doğru kaynağın adresi nodered.org olan web sitesidir. Sitedeki Documentations bağlantısı oldukça iyi organize edilmiş ve doyurucu bir kaynak sunar. Ayrıca nodered.org üzerinden ulaşabileceğiniz forum sistemi yardımlaşmayı seven Node-RED kullanıcıları ile doludur. Node-RED konusunda destek ve bilgi alabileceğiniz diğer kaynaklar şunlardır.

Okumaya devam et “NodeRed hakkında daha fazla kaynak”

NodeRed – UYGULAMA 11: Hava Durumunu Görüntülemek

Bu uygulamada yaşadığımız bölgenin hava durumunu, bir çevrim içi servisten çekerek grafiğe yansıtacağız. Hava durumu bilgilerini çekmek için kullanacağımız openweathermap.org (OWM) adresinde yer alıyor. OWM günlük 1000 isteğe kadar hava durumu verilerini XML veya JSON biçimlerinde ücretsiz olarak sağlıyor. OWM gibi birçok servis mevcut. Bu uygulamada bu tarz servislerden nasıl veri çekileceği ve grafiğe dönüştürüleceğini örneklendirilecektir.

Okumaya devam et “NodeRed – UYGULAMA 11: Hava Durumunu Görüntülemek”

NodeRed – UYGULAMA 10: Raspberry Pi İçin Sistem Monitörü Oluşturmak

Node-RED ile Raspberry Pi için bir sistem monitörü oluşturmak oldukça kolaydır. Oluşturacağımız sistem monitörü ile CPU, RAM ve Disk durumunu canlı olarak takip edeceğiz ve değişim grafiğini oluşturacağız. Bunun için ihtiyacımız olan node node-red-contrib-os adlı node’dur. Sahip olacağımız dashboard’un ekran görüntüsü aşağıda yer alıyor.

Okumaya devam et “NodeRed – UYGULAMA 10: Raspberry Pi İçin Sistem Monitörü Oluşturmak”