{"id":1412,"date":"2015-02-27T08:47:00","date_gmt":"1970-01-01T00:00:00","guid":{"rendered":"http:\/\/www.yazilimmutfagi.com\/?p=1412"},"modified":"2015-02-27T08:47:00","modified_gmt":"1970-01-01T00:00:00","slug":"java-ile-ses-dosyasi-oynatma-muzik-dosyasini-play-etme","status":"publish","type":"post","link":"https:\/\/www.yazilimmutfagi.com\/index.php\/2015\/02\/27\/java-ile-ses-dosyasi-oynatma-muzik-dosyasini-play-etme\/","title":{"rendered":"Java ile Ses Dosyasi Oynatma(M\u00fczik Dosyasini Play Etme)"},"content":{"rendered":"<h1>Java ile Ses Dosyasi Oynatma(M&uuml;zik Dosyasini Play Etme)&nbsp;<\/h1>\n\n<p>Programlama dillerini genelde alisilageldik seyler i&ccedil;in kullaniyoruz. Fakat hareket alanimiz olduk&ccedil;a genis.&nbsp;<\/p>\n\n<p>Bu dersimizde ve bundan sonraki birka&ccedil; dersimizde java dilini kullanarak &ccedil;esitli ses dosyalarini oynatmayi, mikrofondan ses kaydetmeyi ve kaydettigimiz sesi tekrardan play etmeyi anlatacagiz.&nbsp;<\/p>\n\n<p>Ilk olarak kullanacagimiz k&uuml;t&uuml;phaneye dair bazi seyler &ouml;grenmeliyiz.<\/p>\n\n<h3>JavaAudio K&uuml;t&uuml;phanesine Dair Ifadeler:<\/h3>\n\n<ul>\n\t<li><strong>InputStream <\/strong>nesnesi; &ccedil;alacagi ses dosyasinin yolunu tanitir.<\/li>\n\t<li><strong>AudioStream<\/strong>, verilen ses yolunu &ccedil;almasi s&ouml;ylenir. AudioPlayer ve AudioData sinifiyla &ccedil;alisir.<\/li>\n\t<li><strong>AudioPlayer<\/strong>, &ccedil;almaya basla komutudur.<\/li>\n\t<li><strong>SourceDataLine<\/strong>: kaynak giris hattidir<\/li>\n\t<li><strong>TargetDataLine<\/strong>: &ccedil;ikis hattidir.<\/li>\n\t<li><strong>AudioFormat<\/strong>: &Ouml;rnekleme orani, kanal sayisi, kanal basi bit sayisi, dalga hizi gibi ses ile ilgili verileri kapsar.<\/li>\n\t<li><strong>GetsampleRate<\/strong>: &ouml;rnekleme hizi alan bir metotdur.<\/li>\n\t<li><strong>GetFrameSize<\/strong>: byte boyutu alir.<\/li>\n\t<li><strong>byteArrayOutputStream<\/strong>: &ccedil;ikis yolu olusturur. &Ccedil;ikisi byteArray() bi&ccedil;iminde yazar. Veri yazildik&ccedil;a buffer b&uuml;y&uuml;r. Veriye erismek i&ccedil;in toByteArray() metodu kullanilir.&nbsp;<\/li>\n<\/ul>\n\n<p>Multi-threaded programlama&#39;da (bir programda ayni anda birden fazla isin yapilabilmesidir. Yani bir kod par&ccedil;asi bir islemi ger&ccedil;eklestirirken ayni anda ona paralelel olarak bir baska kod par&ccedil;asinin &ccedil;alismasi demektir.) Thread class&#39;i ve Runnable interface&#39;i kullanilir. Runnable&#39; interface&#39;i sadece run() seklinde bir method&#39;dan olusur.&nbsp;<\/p>\n\n<p>Herhangi bir class Runnable&#39;i implement eder ve run() diye bir method yazarsa ayri bir thread&#39;de &ccedil;alistirilma olanagina sahip olabilir. Thread class&#39;i iste bu Runnable interface&#39;ini implement eden class&#39;in run method&#39;unu asil thread&#39;e paralel olarak &ccedil;alistirir. Ancak burada run() methodu dogrudan &ccedil;agrilmaz. Onun yerine Thread class&#39;inin start() methodu &ccedil;agrilir. Thread class&#39;i uygun oldugu zaman run method&#39;unu kendisi &ccedil;agirir.<\/p>\n\n<h2>(.wav) Uzantili Bir Ses Dosyasinin Java Kodu Ile Oynatilmasi<\/h2>\n\n<p>Bilgisayarda bulunan herhangi bir (.vaw uzantili) ses dosyasinin Java programlama dili ile oynatilmasi &uuml;zerinde &ccedil;alisacagiz simdi.<\/p>\n\n<p>Path olarak yolunu tanitacagimiz bir m&uuml;zik dosyasini bu sayede oynatmis olacagiz.<\/p>\n\n<pre class=\"brush:java;toolbar:false;\">\nInputStream yolal = new FileInputStream(&ldquo;muzik.wav&rdquo;);\nAudioStream muzik = new AudioStream(yolal);\nAudioPlayer.player.start(muzik);<\/pre>\n\n<p>Bu uygulamada ilk olarak InputStream nesnesi ile ses dosyasinin yolu alinir. AudioStream nesnesi ile ses yolunu &ccedil;almasini s&ouml;ylenir. AudioPlayer parametre olarak AudioStream nesnesini alarak (start eder) sesi oynatmaya baslar.&nbsp;<\/p>\n\n<p>Abdullah B&uuml;y&uuml;ktanir.<\/p>\n\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Programlama dillerini genelde alisilageldik seyler i&#231;in kullaniyoruz. Fakat hareket alanimiz olduk&#231;a genis.<br \/>\nBu dersimizde ve bundan sonraki birka&#231; dersimizde java dilini kullanarak &#231;esitli ses dosyalarini oynatmayi, mikrofondan ses kaydetmeyi ve kaydettigimiz sesi tekrardan play etmeyi anlatacagiz.<\/p>\n","protected":false},"author":521,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[419],"tags":[3934,4778,4030,5456,4750,5450],"_links":{"self":[{"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/posts\/1412"}],"collection":[{"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/users\/521"}],"replies":[{"embeddable":true,"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/comments?post=1412"}],"version-history":[{"count":0,"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/posts\/1412\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/media?parent=1412"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/categories?post=1412"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.yazilimmutfagi.com\/index.php\/wp-json\/wp\/v2\/tags?post=1412"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}