Home Map Index Search News Archives Links About LF
[Top bar]
[Bottom bar]
[an error occurred while processing this directive]
convert to palmConvert to GutenPalm
or to PalmDoc

[Photo of the Author]
tarafından Philip de Groot

Yazar hakkında:

Yakında, Ph.D. sini chemometrics konusunda Nijmegen Universitesinde alacak. Linuxla çalışmaktan çok hoşlanıyor ve deneyimlerini düzgün bir temele dayanarak yazıyor.


İçerik:

Gerçek Zamanlı mp3 Kayıt Etmek

Çeviri : Miray Demirer

[Illustration]

Özet:

Bu makaleler Linuxla nasıl müzik kayıt edebileceğimizi gösteriyor. LinuxFocus dergisinin Ocak 2001 'pahalı' olmayan WAV-biçim kullanılıyor. Bunun yerine daha az yer kaplayan mp3-biçimi ile kaydedilebilir. Bu biçimi kullanarak 24 saat CD özelliginde kayıtlar yapabilirsiniz.



 

Giriş

Genellikle, gerçek-zaman da wave biçimini mp3 biçimine doğrudan çevirmek olanaksızdır.İzlenmesi gereken yöntemlerden biri
  • Öncelikle, wave dosyası bir kaydedici programla kaydedin.
  • Sonra, wave dosyasını mp3 dosyasına mp3-encoder (ör:'Lame')kullanarak çevirin.

Wave dosyasını çabuk kaydetmek biraz fazla alan kaplayacaktır (Cd özelliğindeki 10 dakikalık bir stereo müzik için 100 MB). Böylece, bu biçimta kaydedilen müziğin saklama kapasitesini sınırlayacaktır.Mp3-encoder 100 MB lık bir wave dosyasını standart mp3 özelliğinde 10 MB a çevirebilecek kapasitededir (128 kbps, stereo). Bu özellik, 24 saat boyunca kesintisiz dijital kaydetmeyi sağlar.24 saat, 60*24 = 1440 dakika, sadece 1,4 GB (1440 MB) sabit disk alanı kullanmak!!! Bu özelliği Loostad radio tarafından gönderilen top 300 ün seksenini kaydetmek için kullandım (bazı ingiliz sayfaları da mevcuttur). Kaydederken sadece bir kere kesildi, mp3 kaydeden program 24 saat sonra otomatik olarak kapanıyor ve bu belgelenmiyor..., kaydedilmesi çok iyiydi! Size hangi yazılımı kullandığımı gösterip, gerçek-zaman mp3 kaydetmek için alternatif yollar anlatacağım. Ayrıca, kendi sayfamda bu makale için kullandığım yazılımlar mevcuttur (bağlantılar makalenin sonundadır).

 

Prosedür

Aşağıda, gerçek-zaman, stereo, ve CD özelliğinde mp3 kaydetmek için iki yöntemden bahsediliyor:

'Mpegrec', 'sox | lame' ile aynı işi yapar, ancak farklı çerçeveleri de açıklanmıştır. Kullanıcının başka birşeye ihtiyacı yoktur. Sadece 'Lame' i yükleyin! Size 'mpegrec' i kullanmanızı tavsiye ediyorum. Ancak, şunu unutmayın ki bu program 24 saat sonra kapanır!!! Ayrıca, kullanıcı tarafından belirlenen kaydetme süresi doğru şekilde kullanılmaz. Genellikle, süre daha kısadır!

 

Mpegrec in kullanılması

'Mpegrec' kullanmak çok kolay.Xterm de,'mpegrec -b 128 -o ./test.mp3' yazın ve işte gidiyorsunuz!
Farklı seçimlerin açıklanması:
-b Mp3 bithızı olara 128 kbps kullanın. 'mpegrec' de ilginç (ve çok yüksek) olan değer 192 dir. Hemen hemen bütün mp3 dosyalarının 128 kbps sabit bithızı vardır.
-o Çıktının adı. Bu örnekte: ./test.mp3. Eğer bir çıktı tanımlanmamışsa, herşey standart çıktıya gönderilir ('stdout'). Genellikle, bu programın çalıştırılığı xterm dür. Bütün mp3 kodları bir dosyada saklanmak yerine, ekranınızda görünür...

Dikkat:
Lütfen mixer-settings lerin doğru koyulup koyulmadığına dikkat edin. Eğer doğru değilse, hiç birşey kaydedilmeyecektir! Doğru kaydeden kaynak seçilmelidir ve ses ayarları en yüksekte olmalıdır.

 

'sox | lame' in kullanılması

Aşağıdaki komutu xterm de yazınız:
sox -t ossdsp -w -s -r 44100 -c 2 /dev/dsp -t raw - | lame -x -m s - ./test.mp3
Sağlanan seçimlerin açıklanması:
sox Kaydedici program: ses, ses kartının 'line-in' i kullanarak kaydedilir.
-t ossdsp Ses girdileri OSS ses sürücülerinden kaynaklanır.Eğer standart ses desteği varsa, bu sürücüler Linux çekirdeğiyle beraber vardır.
-w Örnek bit türü 16 bit uzun sözcüktür (eğer bunu anlamadıysanız: sıkılmayın çünkü önemli değil).
-s 'Örnek veri' doğrusal işaretlenmiştir (eğer bunu anlamadıysanız: sıkılmayın çünkü önemli değil).
-r 44100 Örneklenmiş frekans 44100 Hz dir (CD özelliğinde).
-c 2 2 kanaldan kaydedin (stereo).
/dev/dsp Bu ses örnekleyici bir alet:kaydedilen veriyi dağıtan bir Linux cihazı. Bütün cihazlara, portlara, disklere ve diğerlerine '/dev'-directory i kullanarak girilir. '/dev/dsp' den linuxta wave-stream e girilebilir. Aslında, şu komutu kullanarak ses dosyanızı almanız bile mümkün: 'cat /dev/dsp >test.wav' (sadece mixer-setting ler doğruysa çalışır!!!).
-t raw Çıktı 'ham' veridir (değişmemiş, doğrudan ses kartından).
- '-' ile gösterilen standart çıktıyı kullanın.
lame Şifre edici program:kaydedilen ses mp3 değişmesi için 'lame' e yollanır.
-x 'Girdinin byte değiştirmesini zorlayın'.Bu seçimin kesin fonksiyon olduğunu bilmiyorum, ama bu olmadan da prosedür işleyemez (önce bunu buldum!).
-m s Stereo mp3 dosyası gibi şifreleyin.Standart, 'lame' 'joint-stereo' gibi şifre eder: Sadece iki ses kanalı arasındaki FARKLAR şifre edilir. Sonuç olarak, daha yüksek bir sıkıştırma elde edilir, ama mp3 özelliği daha zayıftır.
- Girdi 'stdin' dir.Bu şimdiki örnek için doğrudur.
./test.mp3 Son mp3 dosyasının ismi.
 

The mixer

Doğru mixer-setting önemlidir. The mixer kaydedici kaynağı belirler.Standart,KDE-mixer aşağıda verilmştir:
The standard KDE mixer-settings
Şekil 1:Standart KDE mixer-setting leri.

Şekil 1 mikrofonun şimdiki kaydedici kaynak olduğunu gösteriyor. Amacımız için, ses kartında 'line-in' bağlayıcısı kullanan bir bilgisayara harici bir kaynak bağlanır. Kaydedici kaynak 'line-in' olmalıdır. Eğer farenin oku, KDE-mixer ının line-in kanalında duruyorsa, sağa tıklama Şekil 2 deki menüyü gösterir:

Selecting the correct recording-source
Şekil 2: doğru kaydedici kaynağı işaretlemek.

Tabiki, 'RecSource' ses kartının 'line-in' inini kaydedici kaynak olarak göstermek için işaretlenmiştir. Aynı prosedürü kaydedici kaynak olarak mikrofonu kapatmak için deneyin: ilave bir ses istemeyeceksiniz!

 

Dikkat:

Eğer 'line-in' kaydedici kaynak olarak işaretlenmezse, 'line-in' den hiçbir ses elde edemeyeceksiniz ( kendiniz müziği duysanız bile)!!! 'line-in' i 'unmute' a ayarlamayı unutmayın. Şekil 2 bunu doğru olarak göstermektedir: 'line-in' sessize ayarlayınca, hemen 'unmuted' a dönecektir.

The KDE-mixer is set correctly
Şekil 3: The KDE-mixer doğru olarak kurulsun.

 

Güzel kaydetmek için önlemler

Siz genelde XWindows da çalışıyorsunuz ve that 'mpegrec' de XWindows da çalıştırılacak. Ancak bu aşağıdaki iki nedenden dolayı pek iyi bir fikir değil:

Yukarıdaki görüşler gösteriyor ki kaydettiklerimiz grafiksiz ortamda en iyi şekilde elde edilecektir. Bu demektir ki Bash kabuğu böyle kullanılmalıdır (metin tabanlı kabuk). Bu bazı sonuçlara yaklaşır:

Bu iki sorun da kolayca çözülebilir.Ses desteği aşağıdaki gibi çözülebilir:
'modprobe -k sb'

Bu komut benim ses kartımı kuran module 'sb' i yükler.(SoundBlaster AWE 64). Eğer hangi modülün kurulması gerektiğini bilmiyorsanız, '/etc/conf.modules' (SuSE) veya '/etc/modules.conf' (sizin dağıtımınıza bağlı) ın içine bakın.Benim için ses kartı bölümü aşağıda:

alias char-major-14 sb
pre-install sb /sbin/modprobe "-k" "adlib_card"
pre-install sb /sbin/modprobe "-k" "awe_wave"
options sb io=0x220 irq=5 dma=1 dma16=5 # mpu_io=0x330
options adlib_card io=0x388 # FM synthesizer
post-install sb /usr/bin/sfxload "/win98/Program Files/Creative/ctsnd/sfbank/synthgs.sbk"
Ses kartınız daima 'alias char-major-14' içinde tanımlanır (eğer OSS sürücüleri kullanılıyorsa). Bu satır 'sb' ile kapatılır, böylece 'modprobe -k sb' komutunun ses kartı servislerini başlattığı görülür.


Diğer problem ise, metin tabanlı bir karıştırıcı programla ses kartındaki 'line-in' i işaretlemektir. Ben 'aumix' programını kullanıyorum. Eğer Bash de 'aumix' komutu çalıştırılırsa, karıştırıcı interaktif biçimde başlar.Bu biçimde, koyulan değerleri değiştirebilir ve kontrol edebiliriz, bakınız Şekil 4.

The text-oriented mixer 'aumix'
Şekil 4: Metin yönlendiricili mixer 'aumix'.

Ok düğmeleriyle farklı kaydedici kaynaklar işaretleyebilirsiniz.'<' veya '>' düğmeleri ses (sol) veya denge (sağ).'+' ve '-' düğmeleri kullanılan işaretlenmiş kaynağın sesini arttırır ya da azaltır. 'm' kullanılan kaynağın sesini arttırır ya da azaltır.Eğer kullanılan kaynak kaydedici kaynak olarak işaretlenmişse, kırmızı 'R' ses kaynağının solunda gösterilir. Eğer kaynak 'playback' için kullanılıcaksa, yeşil 'P' görünür. 's' e basmak '~/.aumixrc'deki kullanılanları kaydeder. Bu kullanılanlar tekrar başlayışta 'aumix -l' komutuyla kolayca çalıştırılır.


Yukarıdaki prosedürü otomatik hale getirmek için küçük bir script yazdım: './mrec test.mp3'. Bu script şu satırları içeriyor:

#!/bin/sh
if [ -z "$1" ]; then
        echo "Usage: mrec mp3-output-file"
        exit 0
fi
modprobe -k sb
aumix -l
mpegrec -b 128 -o "$1"

Ses başlatılıyor, 'line-in' kaydedici kaynak olarak işaretleniyor, ve 'mpegrec' hemen kaydederek başlıyor.  

Mpegrec i kurmak

Bu makale için kullanılan 'mpegrec' yazılımını bulunabilir. yaptım.'mpegrec'ile ilgili daha detaylı bilgiyi http://www.netwaysglobal.com/mpegrec/ bulabilirsiniz. Sadece kaynak dosyalar ve derlenmiş win32 versiyonları burada bulunabilir. Daha fazla ayrıntı için bir sayfa bulunmuyor, ama biraz daha bilgi burada.

'lame' dosyaları ve kurulum türleri burada.

Linux altında Kurulum

 

'lame' i kurun.

'lame' versiyonu, bu makalede yüklemek için mevcuttur . 'lame' anasayfası http://www.mp3dev.org/mp3/.

Linux Kurulumu

 

Sox un Kurulumu

'Sox' kaydetmeye, değiştirmeye veya ses yapmaya yarayan bir programdır.Örneğin, yankı bir ses dosyasına eklenebilir.Daha fazla bilgi için 'sox' un kaynak sayfalarını okuyun ('man sox') .'sox' un yapabileceği değişimler: wave dosyasını .au dosyasına çevirin (the standart SUN audio biçim) ve tersini yapın. Bu olasılık bazen kullanışlıdır! Bu makale için kullanılan 'sox' >burada bulun< ve anasayfası http://home.sprynet.com/~cbagwell/sox.html.

Linux Kurulum

 

Diğer Problemler

İki problem daha buldum:

Cron

Bu genel bir SuSE problemidir. Kaynak dosyaları güncellemek ve log dosyalarını silmek için ağır bir işlem yürütülür.Bu işlem çok yararlıdır,ancak mp3 kaydetmek için çok fazla güç kullanır.Ben kaydedilirken 'cron'un ismini değiştirdim, böylece bulunamadı ve çalıştırılamadı. Kaydedildikten sonra 'cron' tekrar isimlendirilir! 'cron' un adını değiştirmek için bu komutu kullanın:

mv /usr/sbin/cron /usr/sbin/cron.backup

Başka Linux dağıtımları için 'cron' un yerinin farklı olması olasıdır.Yerini şu komutla bulabilirsiniz:

which cron

Lütfen 'cron' un başka işlerde lazım olup olmadığını araştırın.Linux makinesinde bu sorun olmayacaktır.

Ses sürücüsü problemi

Bu problem alternatif Alsa ses sürücülerikullanarak çözülmüştür. Bu sürücüleri kurmakta yararlanılıcak talimatları Alsa belgelerini kullanarak bulabilirsiniz(driver/utilities dosyalarında yoktur). Sorun çıkmadıkça, bu sürücüleri kullanmayınız.  

Bu yazı için görüş bildiriminde bulunabilirsiniz

Her yazı kendi görüş bildirim sayfasına sahiptir. Bu sayfaya yorumlarınızı yazabilir ve diğer okuyucuların yorumlarına bakabilirsiniz.
 talkback page 

Görselyöre sayfalarının bakımı, LinuxFocus Editörleri tarafından yapılmaktadır
© Philip de Groot, FDL
LinuxFocus.org

Burayı klikleyerek hataları rapor edebilir ya da yorumlarınızı LinuxFocus'a gönderebilirsiniz
Çeviri bilgisi:
nl -> -- Philip de Groot
nl -> en Philip deGroot
en -> tr Miray Demirer

2001-03-17, generated by lfparser version 2.9