Flash record audio yardım (Ücretli)

  • Konuyu başlatan Konuyu başlatan and61
  • Başlangıç tarihi Başlangıç tarihi

and61

Öğrenci
Katılım
21 Ocak 2013
Mesajlar
10
Reaksiyon puanı
0
Puanları
0
Merhaba arkadaşlar actionscript konusunda pek bilgim yok fakat yapmam gereken bir proje için yardımınıza ihtiyacım var. Record audio olayı sesi kaydedip tekrar çalma aslında aşağıdaki kodlarla buton ekleyerek yaptım fakat benim istediğim şu, uygulama açıldığı zaman herhangi bir buton olmayacak sadece kişi konuştuğu zaman kayıt başlayacak ve konuşması bittiğinde kayıt işlemi de bitecek ardından 0,5 saniye veya 1 saniye sonra kendiliğinden bu kayıtı çalacak. Tabii tekrar konuşmaya başladığı zaman yine kayıt yapıp çalacak ayrıca mümkünse bu çalınan sesin tonunun da değişik olmasıni istiyorum yani kullanıcının sesi çalınacağı için aynı olmasını istemiyorum. Arkadaşlar benim için gerçekten çok önemli bir konu yardım edecek varsa ücretiyle beraber pm atabilir mi

PHP:
package  {
          import flash.display.Sprite;
          import flash.media.Microphone;
          import flash.media.Sound;
          import flash.media.SoundChannel;
          import flash.events.MouseEvent;
          import flash.events.SampleDataEvent;
          import flash.utils.ByteArray;
          import flash.events.Event;
          import flash.media.SoundMixer;
          import flash.media.AudioPlaybackMode;
 
          public class RecTest extends Sprite {
 
                    var mic:Microphone;
                    var s:Sound;
                    var sc:SoundChannel;
                    var nowRecording:Boolean = false;
                    var nowPlaying:Boolean = false;
                    var recordedBytes:ByteArray;
 
                    public function RecTest() {
 
                              SoundMixer.audioPlaybackMode = AudioPlaybackMode.MEDIA;
 
                              mic = Microphone.getMicrophone();
                              mic.rate = 44;
                              mic.gain = 70;
                              mic.setSilenceLevel(5);
 
                              s = new Sound();
 
                              recordedBytes = new ByteArray();
 
                              recorder.addEventListener(MouseEvent.CLICK, record);
                               player.addEventListener(MouseEvent.CLICK, playBack);
                    }
                    
 
 
                    function record(e:MouseEvent) {
                              if (!nowRecording) {
                                        trace("recording");
                                        recordedBytes.clear();
                                        mic.addEventListener(SampleDataEvent.SAMPLE_DATA, getMicAudio);
                                        nowRecording = true;
                              } else {
                                        trace("recording stopped");
                                        mic.removeEventListener(SampleDataEvent.SAMPLE_DATA, getMicAudio);
                                        nowRecording = false;
                              }
                    }
 
                    function getMicAudio(e:SampleDataEvent) {
                              recordedBytes.writeBytes(e.data);
                    }
 
                    function playBack(e:MouseEvent) {
                              if (!nowPlaying) {
                                        trace("playing");
                                        recordedBytes.position = 0;
                                        s.addEventListener(SampleDataEvent.SAMPLE_DATA, playAudio);
                                        sc = s.play();
                                        sc.addEventListener(Event.SOUND_COMPLETE, stopPlayback, false, 0, true);
                                        nowPlaying = true;
                              } else {
                                        sc.stop();
                                        stopPlayback();
                              }
                    }
 
                    function stopPlayback(e:Event=null) {
                              trace("playing stopped");
                              s.removeEventListener(SampleDataEvent.SAMPLE_DATA, playAudio);
                              nowPlaying = false;
                    }
 
                    function playAudio(e:SampleDataEvent) {
                              for (var i:int = 0; i < 8092 && recordedBytes.bytesAvailable > 0; i++) {
                                        var sample:Number = recordedBytes.readFloat();
                                        e.data.writeFloat(sample);
                                        e.data.writeFloat(sample);
                              }
                    }
          }
 
}
 

soldier01

Profesör
Katılım
21 Temmuz 2009
Mesajlar
1,012
Reaksiyon puanı
4
Puanları
218
ses dalgalarına göre başlatma yapacaksın ses dalgası yükselmesini takip eden bir program gömmen lazım içine
 

and61

Öğrenci
Katılım
21 Ocak 2013
Mesajlar
10
Reaksiyon puanı
0
Puanları
0
yapabilsem yapacam zaten ama ac konusunda bilgim yok cs6 da yukarıdaki kodu kullanarak yaptım ama istediğim bu değil tabi yapabilecek olan varsa ücreti neyse verecem
 
Üst