Я буду стараться, чтобы ответить четко.
1) Когда вы подключаетесь к серверу, как вы его записываете аудио с флэш-клиента?
Прежде всего, вам необходимо знать соединение между протоколом сервера и клиента, например RTMP. Поэтому на стороне сервера нам нужно настроить наш адрес, например, rtmp://127.0.0.1/demoServer
(в red5 demoServer - ваше имя приложения). Далее в сторону флэш, мы можем подключить сервер с NetConnection:
import flash.net.NetConnection;
public var nc:NetConnection;
nc = new NetConnection();
nc.connect("rtmp://127.0.0.1/demoServer");
Я могу определенно сказать, 80% работают в сторону флэш-клиента. Для того, чтобы захватить голос, нам нужна настройка нашего Microphone:
import flash.media.Microphone;
public var mic:Microphone;
mic = Microphone.getMicrophone();
После этих нам нужна труба для транспортировки голоса захватил микрофон формы.К счастью, у нас есть NetStream:
import flash.net.NetStream;
private var stream:NetStream;
var sm:NetStream=new NetStream(nc);
stream.attachAudio(mic);
соединение так же, как строительство моста, так что поток может нести форму вещи клиента к серверу. OK, последнее, что горе нужно сделать, это publish:
stream.publish("some name","record");
Теперь вы можете увидеть файл .flv с именем some name
на стороне сервера. Этот файл станет больше, если вы открыли микрофон.
2) Через 30 секунд как остановить запись и сохранить файл в определенной папке на сервере?
Создайте таймер 30 секунд, который начинается при записи. Закрытие потока Когда тайм-аут:
import flash.utils.Timer;
t = new Timer(1000, 30);
t.addEventListener(TimerEvent.TIMER_COMPLETE, timerComplete);
private function timerComplete(event:TimerEvent):void{
//close the stream
stream.close();
mic.setSilenceLevel(0);
}
По умолчанию red5 сохранит файл в \webapps\dictRed5Server\streams
. Если вы хотите изменить это, отметьте это guide.
3) Как перенести этот файл в HTTP-папку сервера, чтобы после этого получить доступ к нему с домашней страницы?
Red5 может работать вместе с apache tomcat, и вы можете использовать проигрыватель flv для воспроизведения этих записей.
Надеюсь, что над фрагментами могут помочь вам. Я предлагаю вам, что можно установить red5 и запустить некоторые демо и Google, что вы не понимаете.
Большое вам спасибо! Это было очень полезно. – NoobDev4iPhone