使用Flash,PHP,Red5从浏览器录制视频

时间:2011-10-28 18:19:24

标签: php flash actionscript-3 red5 rtmp

我希望构建一个应用程序,使用它可以录制视频(连同音频)和音频(只有音频,最好是mp3格式)。

从我做过的一些研究中,我发现我需要一个flash或flex的客户端应用程序,一个RTMP服务器(RED5更好,因为它是免费的)

这是我用来获得凸轮工作闪光的代码。

var camera:Camera = Camera.getCamera();
var video:Video = new Video(); 
video.attachCamera(camera);
addChild(video);

问题是,我不知道如何将流发送到RED5。

另外,我需要做什么才能根据用户存储视频。我创建的网站是PHP / MySQL,需要录制自己的视频和音频。我喜欢facebook集成视频录制的方式。

3 个答案:

答案 0 :(得分:1)

请检查:http://www.actionscript.org/resources/articles/615/2/Getting-started-with-red5-server/Page2.html

它解释了如何连接和使用RED5,并举例说明。

答案 1 :(得分:0)

以下是将视频从Flash发布到Red5,Wowza或AMS等媒体服务器的确切AS3代码:

//init vars
public var nc:NetConnection;
public var ns:NetStream;

//net connection to media server
nc = new NetConnection();
nc.connect("rtmp://yourmediaserver/oflaDemo/instance");

//net stream through which the recording  data is sent
ns =  new NetStream(nc)

//attach cam and mic to net stream
ns.attachCamera(Camera.getCamera())
ns.attachAudio(Microphone.getMicrophone())

//send the data to the media server
ns.publish("streamName","record");

仅对ns.attachAudio行进行音频评论。

Flash Player无法编码mp3声音(它可以解码)。您将使用NellyMoser ASAO进行声音编码。 Speex也是一种选择。 See this answer了解更多详情。

oflaDemo是一款Red5应用,支持Red5附带的视频录制。

对于支持Red5和PHP的(商业)Flash / HTML视频录制解决方案,您应该查看https://hdfvr.com

  

另外,我需要做什么才能根据用户存储视频。

只需执行一个PHP脚本(来自Flash客户端),该脚本将信息保存在数据库中。您可以使用POST或GET发送视频数据和会话或cookie以检索用户数据。

答案 2 :(得分:-1)

var video:Video;
var camera:Camera = Camera.getCamera();
camera.addEventListener(ActivityEvent.ACTIVITY, active);
video = new Video();
video.attachCamera(camera);

function active(event:Event):void
 {
  addChild(video);
  camera.removeEventListener(ActivityEvent.ACTIVITY, active);
 }