`
pdreamer
  • 浏览: 56108 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

关于flex3+fms3.5 录制音视频流时的声音问题

    博客分类:
  • php
阅读更多
<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> 
    <mx:Script> 
    <![CDATA[ 
        import mx.messaging.errors.NoChannelAvailableError; 
        
        private var nc:NetConnection; 
        private var ns:NetStream; 
        private var rtmpNow:String; 
        private var msg:Boolean; 
        private var metaSniffer:Object; 
        private var dur:Number; 
        private var cam:Camera; 
        private var mic:Microphone; 
        private var vid1:Video; 
        
        private function startup():void{ 
            //初始化一个网络连接 
            // 1...
            nc=new NetConnection(); 
            //为这个连接添加事件,这个事件有返回连接状态 
            nc.addEventListener(NetStatusEvent.NET_STATUS,checkConnect); 
            //这是连接的地址其实就是在你FMS的安装目录里,Applications下新建一个vid2的文件夹,这个文件夹可以看成是你的工程名了 
            //至于后面的recordings是你录制视频时存放视频的文件夹 
            rtmpNow="rtmp://localhost/test"; 
            
            // 2...
            //开始连接     
            nc.connect(rtmpNow); 
            
            //获取系统的microphone 
            mic=Microphone.getMicrophone(); 
            mic.setLoopBack(true);
            
            //获取系统的摄像头 
            cam=Camera.getCamera(); 
            //设定宽,高,以及帧 
            cam.setMode (240,180,24); 
            //设定画面质量 
            cam.setQuality (0,90); 
            
            //让videoDisplay加载摄像头 
            vid.attachCamera(cam);
            msgError.text="initnize"; 
        } 
        
        private function checkConnect(event:NetStatusEvent):void{ 
            //根据连接返回的状态信息判断是滞连接成功 
            msg=(event.info.code=="NetConnection.Connect.Success"); 
            msgError.text=event.info.code; 
            if(msg){ 
                //如果成功,就利用些连接建立一个流,为以后的录制传输数据 
                // 3...
                ns=new NetStream(nc); 
                msgError.text="establish netStream"; 
            } 
        } 
        
        private function startRecord(e:Event):void{ 
            if(ns){     
                msgError.text="start record"; 
                
                // 4...
                //开始录制时要加载micphone和摄像头 
                ns.attachAudio(mic); 
                ns.attachCamera(cam); 
                
                // 5...
                //这里是关键,从这里开始,就开始录制了,input.text是录制的视频文件的名称 
                ns.publish(input.text, "record"); 
            } 
        } 
        
        private function stop(event:Event):void{ 
            //和JAVA里类似,流类的东西一定要记得关闭 
            ns.play(false); 
            ns.close(); 
            msgError.text="stop"; 
        } 
        
    ]]> 
    </mx:Script> 
    
    <mx:VBox id="myVb" creationComplete="startup();"> 
        <mx:VideoDisplay id="vid" width="400" height="300" /> 
        <mx:Button label="record" id="btn" click="startRecord(event);" /> 
        <mx:Button label="play" id="stopbtn" click="stop(event);" /> 
        <mx:TextInput id="input" />
        <mx:TextArea id="msgError" backgroundColor="red" /> 
    </mx:VBox> 
</mx:Application> 


我这代码是什么回事,录视频的时候总是录不了声音,只能录视频?

还发现一个问题是:
当我把Microphone.getMicrophone(); 写到一个方法里,再在creationComplete执行的函数里调用该封装的函数,运行该mxml的时候flash player无论如何都没法播放麦克风的声音。

flex 3.0.2 
flex sdk 3.2
flash player 10
fms 3.5
(我的代码要复杂很多,这里是结合javaeye的某兄的代码简化进行测试)
分享到:
评论

相关推荐

    Flash+Media+Server3.5使用教程

    - **音频流式处理**: 除了视频,FMS 3.5 也支持音频流,适合在线音乐或播客服务。 - **实时视频流**: 可用于构建实时视频流媒体服务器,适用于直播事件或在线会议。 - **动态流**: 动态流功能允许根据网络条件...

    Flex +FMS实现视频聊天

    Flex+FMS写的视频聊天,在本机亲测通过。但唯一不足得是在别的机子上连接不成功。我也不知道为什么。望有才之士能完善。huzhaohui1992@qq.com 如能完善,请给我邮箱一份,在下感激不尽。

    流媒体服务器FMS3.5

    流媒体服务器FMS3.5 sn:1373-5465-5574-9110-6240-7230

    fms3.5注册机(上面上传的那个有问题)这个可以用

    fms3.5注册机 (肯定可用)fms3.5注册机 (肯定可用)fms3.5注册机 (肯定可用)fms3.5注册机 (肯定可用)

    flex+fms实现视频直播源码

    Flex+FMS实现视频直播源码是一种基于Adobe Flex和Flash Media Server (FMS)技术的视频直播解决方案。这个项目提供了一个简单示例,演示了如何利用Flex进行摄像头和音频的捕获与录制,以及如何将这些内容实时推送到...

    FMS3.5 教程(PPT)

    Adobe FMS3.5,全称Adobe Flash Media Server 3.5,是一款强大的实时流媒体服务器,用于处理和分发富媒体内容,如音频、视频和数据。它提供了丰富的功能,包括实时视频直播、动态流媒体、数字视频录像(DVR)以及与...

    FMS3.5.rar_as3

    标题"FMS3.5.rar_as3"提示我们这个压缩包主要包含了与Adobe Flash Media Server (FMS) 3.5版本相关的学习资料,且与ActionScript 3 (AS3)有关。AS3是Flash平台上用于创建动态内容、交互式应用程序和网络服务的主要...

    fms3.5开发向导

    1. **实时视频流传输**:FMS3.5支持实时视频流传输,能够实现高质量的实时音视频通信,适用于直播、在线教育、远程会议等多种场景。 2. **内容分发网络(CDN)集成**:通过与CDN的无缝集成,FMS3.5能够在全球范围内...

    asp+fms聊天室

    总的来说,ASP+FMS语音聊天室是一个结合了前后端技术的实时通讯应用,它利用ASP处理后端逻辑,通过FMS提供高效的音视频流服务,从而实现流畅的在线聊天体验。在深入研究和使用这套系统时,开发者需要熟悉ASP编程、...

    FMS+FLASH+在线视频录制+ASP+Access

    FMS+FLASH+在线视频录制+ASP+Access. &lt;br&gt;编者的话 &lt;br&gt;自己骗写的,下载本文件的朋友请自己研究,该注释的,我已经打好了详细注释,修改不困难,这样还不懂的话我也没有办法,另外还附了播放器。 &lt;br&gt;不...

    fms3.5开发指南

    FMS是用于提供流媒体和交互式服务的服务器,支持即时启动、直播视频流和根据用户带宽调整流速率等功能。本指南涵盖了从服务器版本选择、FMS的基本概念、开发环境配置、简单的"Hello World"应用程序创建,到应用程序...

    FMS视频录制监控

    在IT行业中,FMS(Flash Media Server)是Adobe公司推出的一款强大的流媒体服务器软件,用于实时音频、视频的发布和交互。"FMS视频录制监控"的标题表明我们正在讨论如何利用FMS来实现视频录制和监控功能。下面将详细...

    FMS3.5和4.0注册机

    破解FMS4.0 FMS3.5,本人FMS4.0成功

    FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)

    FMS3特别适用于开发基于Flash和Flex的应用,因为这两个技术平台可以无缝集成FMS,创建出具有高质量音视频效果的实时通信应用。 **实时视频聊天的技术原理** 1. **RTMP协议**:RTMP是实时消息协议,用于在客户端(如...

    基于FLASH+XML+FMS的视频点播.pdf

    ### 基于FLASH+XML+FMS的视频点播系统设计与实现 #### 一、引言 视频点播(Video On Demand, VOD)作为现代远程教育的关键组成部分,在提高教育资源利用率方面扮演着极其重要的角色。传统的视频点播系统多依赖于...

    fms+flex完成视频的录制与播放

    首先下载fms服务器安装好,并在fms安装目录的applications目录下新建一个test_video文件夹目录,一定要与flext程序中rtmp://127.0.0.1/test_video的test_video要一致,fms服务器启动后,执行flex程序,即可实现

    flash media server 3.5使用教程

    FMS 3.5作为网络中心存储音频和视频媒体文件,当用户请求时,通过实时消息协议(RTMP)与Flash Player进行通信,实现流畅的播放体验。RTMP是一种专为Flash设计的传输协议,能实现实时数据传输,且不需下载整个文件到...

    thikphp+FMS 直播系统.rar_fms php_php 直播_thikphp+FMS 直播系统_直播_视频直播

    《构建基于thikphp+FMS的视频直播系统详解》 在现代互联网技术中,实时视频直播已经成为不可或缺的一部分,广泛应用于教育、娱乐、社交等多个领域。本文将深入探讨如何利用thikphp框架与FMS(Flash Media Server)...

    Flex FMS 发送和接收视频

    FMS是Flex背后的关键技术,它作为服务器端的平台,支持实时传输协议(RTMP)、Real-Time Messaging Protocol (RTMFP) 和HLS等协议,用于实时音频和视频流的发布、播放和录制。在本实例中,FMS将作为视频流的处理中心...

Global site tag (gtag.js) - Google Analytics