[LinuxFocus-icon]
Ev  |  Erişimdüzeni  |  İçindekiler  |  Arama

Duyumlar | Belgelikler | Bağlantılar | LF Nedir
Bu makalenin farklı dillerde bulunduğu adresler: English  Deutsch  Francais  Nederlands  Portugues  Russian  Turkce  Arabic  

convert to palmConvert to GutenPalm
or to PalmDoc

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

Yazar hakkında:

Doktorasını Nijmegen Üniversitesi'nde Mp3 dosyalarının düzenlenmesi

  • Uzun mp3 kayıtlarının yapılması(24 saat)
  • Mp3 kayıtlarının kalitesi
  • Mümkün olduğunca küçük mp3 dosyaları oluşturmak
  • Mp3 kaydı yapmada standart bir script
  • Bu yazı için görüş bildiriminde bulunabilirsiniz

  •  

    Gerçek zamanlı mp3 kayıtı, bölüm 2

    [Illustration]

    Çeviri : Celalettin Altınpınar

    Özet:

    Bu konu radyo yayınlarından mp3 kayıtı konusundaki ilk yayının devamı niteliğindedir . Bir önceki yazıda, bir mp3 dosyasının büyüklüğü konusu ele alınmıştı, örnegin 12 saat için 650 MB veya 24 saat gerçek CD kalitesinde müzik elde etmek için 1.3 gigabyte (128 kbit/s; üç boyutlu). Bu kadar büyük dosyaları nasıl kullanmalı? Daha uzun plaklar yapmak veya müzik dosyalarını daha iyi sıkıştırmak mümkün mü ? Mp3 plakları aynı zamanda kaliteli de olur mu ? Yukarıdaki soruları cevaplandırma konusunda yoğunlaşacağız.



     

    Mp3 dosyalarının düzenlenmesi

    Varsayalım ki 24 saatlik güzel bir kayıt yapıyoruz, örnegin Eigties top 300: Loostad radyo'su tarafından yayın, ve bu dosyayı daha küçük parçalara bölerek daha kullanışlı hale getirmek istiyorsunuz. Bu bölme işlemi sırasında reklamları ve haber yayınlarını kaldırmak istiyorsunuz. Bunu en iyi şekilde nasıl yaparsınız. Yöntemlerden biri:
    Bu işlem, mp3 biçimli dosyaların aynı mp3 algoritması olarak yeniden biçimlendirilmesi kalite kaybına neden olur şeklindeki genel görüşün aksine kalite kaybına neden olmaz. Fakat uygulamada birkaç problem ortaya çıkıyor:

    Kısacası mp3 dosyasını başka dosya türüne çevirmeden düzenleme yapan bir programa gereksinimimiz var! Böyle programlar var fakat, linux için değil(şimdilik). Bu türden birçok Windows programı mevcut. Fakat bunların çoğunun büyük bir problemi var: 650 MB'lık mp3 dosyasını idare edemiyorlar! Bu işi yapan bir program meraklısı iseniz 'Mann'in mp3 düzenleyicisi' adresinde mevcut. Ben bu programı Windows98 altında kullandım . Grafiksel arayüzde istenilen parçanın başlangıç ve bitişi mp3 dosyasının aslından gösterilebilir. Bu parçayı başka bir dosyaya 'trim' komutuyla kopyalayabilirsiniz. Bu program 'bağış yazılım' olarak bulunmakta yani bu program için para ödemek zorunluluğunuz yok. Sadece nazikce eğer program isteklerinizi karşılıyorsa para ödemeniz isteniyor. Bu programın iki dezavantajı var: program 650 MB bir dosyada çok yavaş ve sadece çok küçük sabit birimlerle çalışıyor!!! Son saatin başını araştırırken ,örneğin 24 saatlik mp3 kaydıyla çalışırken, çok zaman alıyor ve çok yoğun disk işlemleri yapıyor. Fakat istenilen parçanın kopyalama işlemi çok hızlı olarak yapılabilir(mp3 kalitesinden hiç bir kayıp olamadan). Yinede herzaman son kopyaladığım mp3 parçasını mp3 düzenleyicisine yükleyerek kontrol ederim, Eğer yükleme işlemi gerçekleşirse kopyalanan dosyalarda bir sorun yoktur. Bu düzenleyiciyi ilk defa kullanırken yoğun disk işlemleri sırasında kopyala butonuna bastım ve sonuçta zarar gören mp3 dosyalarını yeniden çalıştıramadım ! Size bir fikir vermesi açısında 650 MB 'lık dosyayı düzenlemek kabaca 1 saatimi aldı.(bu bazen çok cansıkıcı olabilir)!

     

    Uzun mp3 kayıtlarının yapılması(24 saat)

    24 saatlik radyo yayınından kayıt yapmak problem değil. Dosya mantıklı bir büyüklükte kalır(örnegin 24 saat için 1.3 gigabyte) ve kolayca bilgisayara kaydedilebilir. Fakat örneğin bir haftalık bir yayın kaydı yapılırken problemin boyutu değişir. Bu problemle Noel ve yeniyıl sırasında 'Alltimes Top 2000' yayını yapan (144 saat müzik!) Alman ulusal ve yerel radyo istasyonu: Radio 2'in yayını ile karşılaştım. Benim sabit disk'im eski ve tüm bu kayıtları almak için yetersizdi. Bundan dolayı bu problemi çözmem gerekiyordu. İşte size çözüm:
    Yukardaki işlemleri uygulayarak tüm Top2000'i kaydetmeye çalıştım ve hiçbir sorunla karşılaşmadım ! 12 adet yedek CD kullandım ve bunlar bir daha kullanılamayacak. Fakat bu tür başarılı kayıt yapmak içinde biraz harcama yapmanız gerekiyor. Bunların hepsi nasıl oldu? CD-Burning-Howto 'yu okuyarak bir fikir edindim ve gerekli işlemler basamakları aşağıda açıklandı:


    Bu yaklaşımın faydası mp3 CD'si oluştururken kullanılan işlemcinin, yogunluğunu altmak şeklindedir. Bölümler zaten oluşturuldu! Tüm bu işlemleri script kullanarak otomatik olarak yapabilirsiniz:bölümün oluşturulması, mp3 kaydına başlanması,mp3 kaydının bitirilmesi,12 saatten sonra bölümün tekrar eski haline getirilmesi,ikinci bölümün oluşturulması ve böylece mp3 kaydına devam edilmesi. CD'leri elle yakarken problemler ortaya çıktı (bir zamanlar yanıltıcı ortama göre doğru olan). 4 kısım: 3 ayrı bölüm oluştururken CD yanma problemleri ile karşılaştım.(bu problemlerin çözümü 36 saatimi aldı). Kullandığım script şöyle:

    
    #!/bin/sh
    echo "loading modules for sound support..."
    modprobe -k snd-card-sb16
    modprobe -k snd-pcm-oss
    modprobe -k snd-mixer-oss
    echo "setting mixer..."
    amixer set Line 31 unmute capture; amixer set Master 31; amixer set PCM 31
    cd /where/ever/you/stored/the/images/
    for i in 1 2 3; do
    	for ii in 1 2 3 4; do
    	echo "mounting image_$ii on /mnt ..."
            mount -t ext2 -o loop=/dev/loop1 image_$ii /mnt
            echo "starting mpegrec ..."
            mpegrec -b 128 -x -mj -o /mnt/top2000_$ii.mp3
    	echo "umount /mnt"
            umount /mnt
    	done
    done
    
    

    Tüm bunları grafiksel arayüz kullanmadan bash komut satırında yaptım. Ses kartını elle yükledim, bunun yanında OSS emulatörü(ALSA sürücüsünü tam olarak kullanmak için) ve mixer sürücüsü(tabi bunu /etc/conf.modules'in içindeyken pre-install/post-install kullanarakta yapabilirsiniz) kullandım. 4'üncü sıra doğru olarak mixer ayarlarını yapar: 'line-in' kayıtlı kaynaktır ve ses sonuna kadar açıldı. Bu ayarları yaptıktan sonra script bölüm oluşturma ve eski haline getirme işlemini yapar. 'mpegrec' seçeneği ile ilgili olarak: '-mj' birleştirilmiş steryo kayıtlarını gösterir. Bu seçeneği kulanarak daha küçük mp3 dosyası oluşturmayı umuyordum(670-680 MB alana sığmalı). Bu yanlış görünüyor, fakat normal yada birleştirilmiş mp3 dosyaları kullanmak sorun teşkil etmez. Ben yeni kayıt yaparken normal steryo kullanırım. 'mpegrec' programının 12 saat sonra durması gerekiyor.Bu görevi yerine getirmesi için kaynak kodundaki 24 saati 12 saate değiştirdim. Ne yazıkki bu yaklaşım işe yaramadı: program 12 saatten sonra kayda devam etti! 12 saatten sonra kayıt işlemini yarıda kesmek zorunda kaldım(bunu zararsız atlatamazsınız...). Script kalan kısmı dikkate alıyordu. 'mpegrec' ile ilgili başka birşey anlamadım. Kaynak kodu uzerinde dikkatli olarak çalışmalıyım.

    Hatırlatma:
    CD oluştururken CD yazıcısının yeni sürümü(cdrecord-1.9) bazı problemlere sebep oldu. Bir önceki sürüm(cdrecord-1.8.1)'da hiçbir problem oluşmadı. Bu problemi CD yazıcısının daha gelişmiş bir yazılımını yükleyerek(Philips CDD 3610 için 3.02 sürümü yerine 3.09 sürümü yüklenerek) çözdüm. CD yanma probleminin çekirdek 2.4.3'ten kaynaklandıgını düşünüyordum, fakat yanlış olduğu ortaya çıktı!

     

    Mp3 kayıtlarının kalitesi

    Bir önceki sayfama koyduğum etkileşimli Konuşan sayfa yoluyla mp3 kaydıyla ilgili bilgilerin olduğu bir yörenin kısayolunu aldım. Özellikle 'lame' programına yoğunlaşılarak mp3 kalitesi ve mp3-bitrate ile olan ilişkisi çok güzel açıklanmış. Adresi şöyle: http://www.r3mix.net/.


    Önemli noktaların özetlenmesi:

    Aşağıda anlatılanların hepsi bu yörede ayrıntılarıyla anlatılmakta!  

    Mümkün olduğunca küçük mp3 dosyaları oluşturmak

    Aşağıda bir okuyucu tarafından bulunmuş bir script var. (ileti yoluyla gönderilen).Script şöyle:

    
    #!/bin/bash
    
    echo "record $1 named ($3) for $2 seconds"
    aumix -f ~/.aumixrc
    /usr/bin/yes x | /usr/bin/radio $1 >/dev/null 2>/dev/null
    sox -V -r 44100 -c 2 -t ossdsp -w -s /dev/dsp -t wav - 2>/dev/null |
    lame - ~/$3.`/bin/date "+%H%M.%m-%d-%y"`.mp3 --resample 16 -b 8 -a -m
           m -h --lowpass 4 --highpass .12 --voice&
    sleep $2
    kill -9 $!
    # copy the output to a different direcory. If you want you can
    # replace cp by rcp or scp and copy it to a different computer:
    cp $3.*`/bin/date "+.%m-%d-%y"`.mp3 /tmp/outputdir
    
    

    Bu scriptin amacı 3.5 gigabyte'lık bir disk alanına gereksinimi olan anlaşılır radyo kayıtlarını almaktır. Anlaşılırdan kastedilen birinin kaydedilen insan sesini tanımlayabilmesidir.Tabi müzik kalitesi çok kötü! Scrip'teki ilk sıra mixer'in ayarlarını yapar ve bir radyo kartı ve 'sox'u başlatır. Şimdi anlatacağımız hileler 'lame' seçeneklerinde gizli:

    --resample 16 -b 8 -a -m m -h --lowpass 4 --highpass .12 --voice
    --resample 16 Çıktı dosyasındaki örnekleme sıklığını 44 kHz'den 16 kHZ yeniden tanımlar.
    -b 8 Örnekleme oranını 8 kbit/s olarak yeniden kurar.
    -a Steryo akımlarını tek kayıt olarak birleştirir.
    -m m Tek mp3'ü yeniden biçimlenmeye zorlar.
    -h Yüksek kalitede mp3 biçimi kullanma seçeneği (daha yavaş).
    --lowpass 4 4 kHz'lik değerde altgeçer filtresi kurar. 4 kHz'den yüksek tüm sinyaller(sıklıklar) çıkarılır.
    --highpass .12 .12 kHz'lik değerde üstgeçer filtresi kurar.120 kHz'den düşük tüm sinyaller(sıklıklar) çıkarılır.
    --voice İnsan sesi için en iyi sıkıştırma yöntemlerini kullanır.

    İnsan sesi çok sıkıştırılabilir bir özellikte olsa da bu pek istenmez. Şimdi en azından seçenekler mevcut!

     

    Mp3 kaydı yapmada standart bir script

    Bu script konuşan sayfa yoluyla gönderildi (Herkesin bu bilgiden faydalanabilme olanağından memnunum!). Bu bir önceki ve şimdiki yazıda kullanılan etkileşimli sayfanın geniş faydalarından biri.Herkes deneyimlerini gönderebiliyor, problemle karşılaştıklarında ziyaretçilerden yardım isteyebiliyor, kısacası burada toplanmış çok büyük miktardaki bilgiden herkesin faydalanması mümkün oluyor(umarım). 'mp3_record' olarak adlandırılan script aşağıdaki gibi:

    #!/bin/sh
     /usr/local/bin/mpegrec \
     -l 5400 \
     -x '--preset fm \
     --tt "Computers in Your Life" \
     --tl "Open Line with Tom Wieble" \
     --ta "Tom Wieble" --ty `date +%Y` \
     --tg "Speech" \
     --tc "Copyright (c) 1997 - `date +%Y` WOSU" -c' \
     -o open_line_`date +%d%b%y`_`date +%H%M`.mp3
    

    '-l 5400' seçeneği kayıt zamanını 90 dakika olarak kurar. '-x' seçeneğinden sonra gelen ve doğrudan 'lame'(4'ten 9'a kadarki sıralar ) ve '-o' seçeneğine bağlanmış olan seçenekler dosyayı 'data_and_time.mp3' olarak kaydeder. Bu satırları herkes istediği gibi uyarlayabilir. Bu amaçla 'lame' seçeneklerini incelemek faydalı olacaktır. Varolan ayarlar aşağıdaki tabloda açıklanıyor:

    --preset fm Lame programı bazı standard ayarları tanır.'fm' radyo yayınlarından yapılan kayıtları ifade eder.Fakat 128 kbit/s'lik sabit örnekleme orananıyla karşılaştırdıgımda kayıt kalitesinden hoşlanmıyoru. Bu 'lame'deki filtrelere başvurmamın ana sebebi.
    --tt "Hayatınızda bilgisayarın yeri" '--tt' kaydın başlığını tanımlar (en fazla 30 karakter).
    --tl "Tom Wieble'la dizini başlatın" '--tl': albüm, veya: asıl kaynak (en fazla 30 karakter).
    --ta "Tom Wieble" --ty `tarih +%Y` '--ta': sanatçı (en fzla 30 karakter).
    --tg "Konuşma" '--tg': tarz (isim yada numara).
    --tc "Üretim (c) 1997 - `tarih +%Y` WOSU" -c" '--tc': göruşler (ek bilgi; en fazla 30 karakter).

    Kısaca, kayıt tarihi ve zamanını ve tüm bilgileri içeren mp3 dosyası oluşturmanın iyi bir yolu. Herşeyi scripte yazmak biraz zaman alıyor fakat tüm bunları mümkün olduğunu görmek güzel!

     

    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 de Groot
    en -> tr Celalettin Altınpınar

    2001-08-03, generated by lfparser version 2.17