yum install -y make expat-devel git gcc-c++ autoconf automake libtool wget python-devel ncurses-devel zlib-devel \
libjpeg-devel openssl-devel e2fsprogs-devel sqlite-devel libcurl-devel pcre-devel \
speex-devel ldns-devel libedit-devel libxml2-devel libdb4* libidn-devel \
unbound-devel libuuid-devel lua-devel libsndfile-devel yasm-devel libtiff-devel \
readline-devel unixODBC unixODBC-devel mysql-connector-odbc

echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig

cd /opt
wget http://www.lua.org/ftp/lua-5.3.5.tar.gz
tar xzvf lua-5.3.5.tar.gz
cd lua-5.3.5
make linux
make install
ln -sf /usr/local/bin/lua /usr/bin
ln -sf /usr/local/bin/luac /usr/bin

cd /opt
wget https://www.nasm.us/pub/nasm/releasebuilds/2.14/nasm-2.14.tar.gz
tar xzvf nasm-2.14.tar.gz
cd nasm-2.14
./configure
make
make install

cd /opt
wget https://downloads.sourceforge.net/libpng/libpng-1.6.35.tar.xz
tar xJvf libpng-1.6.35.tar.xz
cd libpng-1.6.35
./configure
make
make install
/bin/cp /usr/local/lib/pkgconfig/libpng* /usr/lib64/pkgconfig/

cd /opt
wget https://archive.mozilla.org/pub/opus/opus-1.3.tar.gz
tar xzvf opus-1.3.tar.gz
cd opus-1.3
./configure
make
make install
/bin/cp /usr/local/lib/pkgconfig/opus* /usr/lib64/pkgconfig/

cd /opt
wget https://download.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20190225-2245.tar.bz2
tar xjvf x264-snapshot-20190225-2245.tar.bz2
cd x264-snapshot-20190225-2245
./configure --enable-shared --enable-static --disable-opencl
make
make install
/bin/cp /usr/local/lib/pkgconfig/x264* /usr/lib64/pkgconfig

cd /opt
wget https://libav.org/releases/libav-12.3.tar.xz
tar xJvf libav-12.3.tar.xz
cd libav-12.3
sed -i 's/x264_bit_depth/X264_BIT_DEPTH/' libavcodec/libx264.c
./configure --disable-static --enable-shared --enable-pic --enable-libx264 --enable-gpl
make CXXFLAGS="-fPIC"
make install
/bin/cp /usr/local/lib/pkgconfig/libav*.pc /usr/lib64/pkgconfig/
/bin/cp /usr/local/lib/pkgconfig/libsw*.pc /usr/lib64/pkgconfig/

cd /opt
wget http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.5.tar.xz
tar xJvf freeswitch-1.8.5.tar.xz
cd freeswitch-1.8.5
perl -i -pe 's/^#applications\/mod_av/applications\/mod_av/g' modules.conf
perl -i -pe 's/^applications\/mod_signalwire/#applications\/mod_signalwire/g' modules.conf
perl -i -pe 's/^codecs\/mod_opus/#codecs\/mod_opus/g' modules.conf
./configure --prefix=/opt/fs --with-openssl --enable-optimization
make
make install
make sounds-install
make moh-install
make samples
ln -sf /opt/fs/bin/freeswitch /usr/bin
ln -sf /opt/fs/bin/fs_cli /usr/bin

rm -rf /opt/fs/etc/freeswitch/sip_profiles/*ipv6*
perl -i -pe 's/"::"/"127.0.0.1"/g' /opt/fs/etc/freeswitch/autoload_configs/event_socket.conf.xml
perl -i -pe 's/OPUS,G722,PCMU,PCMA,VP8"/OPUS,G722,PCMU,PCMA,VP8,H264"/g' /opt/fs/etc/freeswitch/vars.xml
perl -i -pe 's/<!--<load module="mod_h26x"/>-->/<load module="mod_h26x"/>"/g' /opt/fs/etc/freeswitch/autoload_configs/modules.conf.xml

/opt/fs/etc/freeswitch/autoload_configs/conference.conf.xml
对应profile修改视频混屏转码模式
<param name="conference-flags" value="transcode-video|minimize-video-encoding"/>
<param name="video-mode" value="transcode"/>

sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
sysctl -w kernel.core_pattern=core.%p
/opt/fs/bin/freeswitch -nonat -nc

freeswitch -stop
fs_cli

wget https://codeload.github.com/j0sh/crtmpserver/zip/centosinit
unzip centosinit
cd crtmpserver-centosinit/builders/cmake
cmake .
make
./crtmpserver/crtmpserver ./crtmpserver/crtmpserver.lua

bgapi originate user/1001 &conference(3000@default)
conference 3000-47.93.177.234 recording /tmp/testrecord.mp4
conference 3000-47.93.177.234 recording /tmp/testrecord.fsv
conference 3000-47.93.177.234 record rtmp://127.0.0.1/live/stream1
conference mute all 静音
conference unmute all 取消静音
conference 3000-47.93.177.234 vid-layout 2x2
floor 大屏
conference stop all
conference 3000-47.93.177.234 play /usr/local/xxx.mp4 播放视频文件
file_seek 翻页
kitk 剔除成员
conference 3000-47.93.177.234 vid_floor 1 force 强制设置大画面
vid-codec-grop 多方编码不一致

fs的更多相关文章

  1. Node+fs+定时器(node-schedule)+MySql

    目标:将本人写博客时候的截图保存到桌面的图片 执行保存到指定文件进行整理 并写入数据库 先看最终的目录结构: package.json文件: { "name": "zqz ...

  2. NodeJs+http+fs+request+cheerio 采集,保存数据,并在网页上展示(构建web服务器)

    目的: 数据采集 写入本地文件备份 构建web服务器 将文件读取到网页中进行展示 目录结构: package.json文件中的内容与上一篇一样:NodeJs+Request+Cheerio 采集数据 ...

  3. Node.js:fs文件系统模块

    fs文件系统模块,这是一个非常重要的模块,对文件的操作都基于它.该模块的所有方法都有同步和异步两种方式,下面便介绍一下该模块的使用. 1.检测当前进程对文件的权限 使用fs.access(path[, ...

  4. Node.js学习——基本模块之fs

    基本模块之fs 异步读文件 异步读取一个文本文件的代码如下: 'use strict'; var fs = require('fs'); fs.readFile('sample.txt', 'utf- ...

  5. hadoop程序问题:java.lang.IllegalArgumentException: Wrong FS: hdfs:/ expected file:///

    Java代码如下: FileSystem fs = FileSystem.get(conf); in = fs.open(new Path("hdfs://192.168.130.54:19 ...

  6. nodejs 使用fs实现多级联动

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA0gAAAEdCAIAAAC5WdDhAAAgAElEQVR4nO3da3Mc153f8X4feq5lFR

  7. 【转】Hadoop FS Shell命令

    FS Shell 调用文件系统(FS)Shell命令应使用 bin/hadoop fs <args> 的形式. 所有的的FS shell命令使用URI路径作为参数.URI格式是scheme ...

  8. Asynchronous fs.stat.isDirectory()

    function showFile() { for(var i = 0; i< files.length; i++){ var itemFile = files[i]; fs.stat(__di ...

  9. Node.js入门笔记(4):文件系统(fs)

    文件系统(FileSystem) 文件系统模块 对于文件无外乎创建修改添加. File System - 文件系统模块 - require('fs') fs模块是核心模块,需要使用require导入后 ...

  10. RHCS 6.5 由于resource-agents-3.9.2-40.el6版本过低导致rgmanager[61164]: [fs] umount failed - REBOOTING问题的解决

    問題描述: RHEL 6.5版本RHCS在disable或者relocate service的時候,會導致節點重啟,查看日誌顯示umount掛载點失敗,日誌如下: Nov 29 16:03:50 ph ...

随机推荐

  1. CLR与Netframework版本的关系

    CLR有3个版本,详细地址看微软官方文档

  2. 基于I/O的Server/Client实现

    在前面的文章中讲了基于NIO实现的Server/Client.本文就讲讲基于同步堵塞式I/O实现的Server/Client好与前面的NIO中的Server/Client进行对照. 网络编程中须要解决 ...

  3. 最简单的基于FFmpeg的移动端样例:IOS 推流器

    ===================================================== 最简单的基于FFmpeg的移动端样例系列文章列表: 最简单的基于FFmpeg的移动端样例:A ...

  4. iOS 8 中 UIAlertView 和 UIActionSheet 河里去了?

    iOS 8 中 UIAlertView 和 UIActionSheet 河里去了? 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商 ...

  5. ios设计一部WindowsPhone手机

    ios设计一部WindowsPhone手机 main.m #import <Foundation/Foundation.h> #import "WindowsPhone.h&qu ...

  6. sublime中BracketHighlighter 插件使用 (转)

    sublime中BracketHighlighter 插件使用 1.打开package Control,选择install Package 2.输入BracketHighlighter,回车 3.这样 ...

  7. 将python的程序包装成windows下的service

    使用python编写的脚本应用程序,在运行的时候需要有python的运行环境,但是我们肯定是希望整个python程序能够像应用程序一样打包生成一个包括其运行环境的exe文件包,这是第一步,但是要想使用 ...

  8. Hdu-6243 2017CCPC-Final A.Dogs and Cages 数学

    题面 题意:问1~n的所有的排列组合中那些,所有数字 i 不在第 i 位的个数之和除以n的全排,即题目所说的期望,比如n=3 排列有123(0),132(2),231(3),213(2),312(3) ...

  9. iOS怎么判断字典中存在nil值

    遍历字典中的key,然后根据key值取出对应的value如:for (NSString *key in dict) { //处理字典的键值 NSString *value = dict[key]; i ...

  10. winFrom线程

    方法--->委托--->BeginInvoke用指定的参数异步执行委托 委托就是我想做什么,而你可以作什么,我就让你去做.