FreeSwitch中的录像和录音设置

简介: FreeSwitch中的录像和录音设置

FreeSwitch中的录像功能和播放录像功能


FreeSwitch 系统中的录像功能 和 播放录像功能,系统都默认提供。

按默认配置,通过IP电话拨打9193,即可录像;通过IP电话拨打9194即可播放录像。

同时,我测试了一种有趣的用法,描述如下:


(1) 1000  呼叫 9193 并且发送视频;          (2) 1001 呼叫 9194 ,可以看到 1000 上传的视频,但非实时;          (3) 1002 呼叫 9194, 可以看到 1000 上传的视频,但非实时。  
复制代码


这样看来,一个点播系统,FreeSwitch 默认就支持!稍加改造,就可以变为一套视频直播系统。


实现上述功能的配置文件在 \conf\dialplan\default.xml 中,如下所示:

[录像]            <extension name="video_record">              <condition field="destination_number" expression="^9193$">                  <action application="answer"/>                  <action application="record_fsv" data="/tmp/testrecord.fsv"/>              </condition>            </extension>            [播放录像]            <extension name="video_playback">               <condition field="destination_number" expression="^9194$">                    <action application="answer"/>                    <action application="play_fsv" data="/tmp/testrecord.fsv"/>                </condition>            </extension> 
复制代码


FreeSwitch的录音功能


一般电话系统都可以将本系统内的语音通话录制下来,FreeSwitch 系统中也可以进行语音录制。


需求: 录制系统中的所有通话。

实现:


(1)建立一个文件夹 freeswitch/recordings/archive/ ,用来存储录音文件;

(2)修改拨码计划,打开 \conf\dialplan\default.xml

找到下面的语句:


<extension name="Local_Extension">      
复制代码


<condition field="destination_number" expression="^(10[01][0-8])$">  
复制代码


在其下,添加:


<action application="set" data="RECORD_TITLE=Recording ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}"/>                         <action application="set" data="RECORD_COPYRIGHT=(c) 2011"/>                         <action application="set" data="RECORD_SOFTWARE=FreeSWITCH"/>                       <action application="set" data="RECORD_ARTIST=FreeSWITCH"/>                        <action application="set" data="RECORD_COMMENT=FreeSWITCH"/>                        <action application="set" data="RECORD_DATE=${strftime(%Y-%m-%d %H:%M)}"/>                         <action application="set" data="RECORD_STEREO=true"/>      <action application="record_session" data="$${base_dir}/recordings/archive/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav"/>  
复制代码


(3)在 FS_CLI.EXE 中运行 reloadxml 或 按 F6 即可生效。

查询 FreeSwitch 支持的音频文件格式,可以在 FS_CLI.exe 中运行 show file 命令。


FreeSwitch播放语音文件


上面介绍了 FreeSwitch 的录音功能,若想回放这些录音,是否可以实现?或者说,通过 FreeSwitch ,是否可以直接播放语音文件?

FreeSwitch 中有一个 playback 的 application ,可以播放语音文件。

具体用法如下:


(1)播放本地文件

<action application="set" data="playback_terminators=none"/>                         <action application="playback" data="sounds/soundfile.wav"/>    
复制代码


(2)播放远程服务器上的文件


<action application="playback" data="${http_get(http://myserver.yo/media/hello_world.wav)}"/> 
复制代码


相关文章
|
数据安全/隐私保护 内存技术
Freeswitch落地网关配置
假设Freeswitch服务器地址为192.168.0.204,网关地址为192.168.0.80;外呼前缀为0。
1781 0
|
语音技术
FreeSwitch中音乐功能保持和静音回铃声怎样设置
FreeSwitch中音乐功能保持和静音回铃声怎样设置
|
Java API 语音技术
MRCP(Media Resource Control Protocol)
MRCP(Media Resource Control Protocol)是一种音视频资源控制协议,用于控制语音识别、语音合成和语音交互等场景中的音视频资源。阿里云语音交互服务(ASR、TTS、Chatbot)支持MRCP协议,您可以使用MRCP协议来控制音视频资源,并实现语音交互的功能。
3632 1
|
NoSQL API 语音技术
Freeswitch如何接收 RECORD_STOP 和 RECORD_START事件
Freeswitch如何接收 RECORD_STOP 和 RECORD_START事件
|
关系型数据库 MySQL 数据库连接
FreeSWITCH通过mod_mariadb原生连接MySQL
FreeSWITCH通过mod_mariadb原生连接MySQL
1026 0
|
关系型数据库 MySQL 数据库
debian11编译安装freeswitch
debian11编译安装freeswitch
386 0
|
NoSQL 中间件 Redis
vos3000,外呼系统,呼叫中心中间件-sofia(SIP)配置
配置sofia profile ,这个配置修改后不能实时生效的,需要重启FreeSWITCH,或者通过执行命令相关命令才可以生效。 添加删除sofia profile 需要重启fs,或者执行reload mod_sofia,才生效。 添加了网关需要执行命令 sofia profile [profilename] rescan 删除了网关需要执行命令sofia profile [profilename] killgw [gatewayname] 修改了网关配置需要先执行删除命令sofia profile [profilename] killgw [gatewayname],然后执行 sofi
|
网络协议 中间件 机器人
通过顶顶通呼叫中心中间件玩转FreeSWITCH媒体流
怎么获取FreeSWITCH的媒体流是一个老生常谈的问题了,最常见的方法media_bug 很多人需要直接获取原始的声音流,然后自己处理,其实FreeSWITCH也是支持的,只是知道的极少,FreeSWITCH原生支持 unicast 通过udp 把声音流推送到一个UDP端口,和播放网络的声音流。 fs实现的unicast,有一个缺陷如果启动了unicast 就没办法调用playback等放音函数了。
1012 0
|
JSON Ubuntu Linux
FreeSWITCH安装
FreeSWITCH
2531 0
FreeSWITCH安装