1. 搭建RTMP服务器

1> 获取开源代码SRS。

git clone https://github.com/ossrs/srs

下载源码后,按照如下文档安装
https://github.com/ossrs/srs/wiki/v1_CN_SampleRTMP

2> 编译SRS

cd srs/trunk

./configure && make

3> 编写SRS配置文件。详细参考RTMP分发

将以下内容保存为文件,比如conf/rtmp.conf,服务器启动时指定该配置文件(srs的conf文件中有该该文件)

# conf/rtmp.conf
listen 1935;
max_connections 1000;
vhost __defaultVhost__ {
}

4> 启动SRS。

./objs/srs -c conf/rtmp.conf

5> 启动推流编码器,可以使用ffmpeg

注意,使用的文件和ip要改成自己的

for((;;)); do ffmpeg -re -i  ./doc/source.200kbps.768x320.flv  -vcodec copy -acodec copy -f flv -y rtmp://192.168.1.170/live/livestream; sleep 1; done

或者

ffmpeg -re -i ./jni-recv.264 -vcodec copy -acodec copy -f h264 -y rtmp://192.168.1.170/live/livestream

对ffmpeg 可以参看 该系列文章 “ffmpeg命令的使用”

6> 观看RTMP流,可使用VLC 或 ffplay

ffplay rtmp://192.168.1.170/live/livestream

或者直接在VLC播放器中输入 rtmp://192.168.1.170/live/livestream

================================================================================================================

2. ubuntu 安装 ffmpeg

FFmpeg 是一款流行的多媒体框架,在安装一些播放器的时候需要依赖 FFmpeg 能让用户轻松实现 ncode、转码、mux、demux、stream、filter 和播放音频和视频内容。
最新版本 FFmpeg 2.5.1 已经发布,Ubuntu 14.04、14.10用户可通过PPA进行安装,打开终端,输入命令:

sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
sudo apt-get update
sudo apt-get install ffmpeg

卸载 ffmpeg 命令:
sudo apt-get remove ffmpeg

使用github的srs代码,搭建 RTMP_Server的更多相关文章

  1. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(四)-使用Travis自动部署Hexo(2)

    前言 前面一篇文章介绍了Travis自动部署Hexo的常规使用教程,也是个人比较推荐的方法. 前文最后也提到了在Windows系统中可能会有一些小问题,为了在Windows系统中也可以实现使用Trav ...

  2. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(三)-使用Travis自动部署Hexo(1)

    前言 前面两篇文章介绍了在github上使用hexo搭建博客的基本环境和hexo相关参数设置等. 基于目前,博客基本上是可以完美运行了. 但是,有一点是不太好,就是源码同步问题,如果在不同的电脑上写文 ...

  3. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(二)-Hexo参数设置

    前言 前文手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置介绍了github注册.git相关设置以及hexo基本操作. 本文主要介绍一下hexo的常用参数设置. ...

  4. GitHub + VSTS 开源代码双向同步

    GitHub已经是全球开源代码的大本营了,通过以下统计你可以看到仅仅javascript在github就有超过32万个活动的repo.很多开发人员都会把自己的一部分代码分享到github上进行开源,一 ...

  5. 搭建App主流框架_纯代码搭建(OC)

    转载自:http://my.oschina.net/hejunbinlan/blog/529778?fromerr=EmSuX7PR 搭建主流框架界面 源码地址在文章末尾 达成效果 效果图 注:本文部 ...

  6. Github+yeoman+gulp-angular初始化搭建angularjs前端项目框架

    在上篇文章里面我们说到了Github账号的申请与配置 那么当你有了Github账号并创建了一个自己的Github项目之后,首要的当然是搭建自己的项目框架啦! 本人对自己的定位是web前端狗,常用开发框 ...

  7. GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置

    GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置 前言 此篇博客主要为Pelican在Windows平台下的配置安装所写,在此过程中主要参考资料烟雨林博客.poem_of_ ...

  8. 使用 Github 和 Hexo 快速搭建个人博客

    导语 个人兴趣爱好特别广泛,喜欢捣鼓各种小东西自娱自乐.虽然都没能深入研究,但是自己的“孩子”还是很想拿出来遛遛得人一句夸奖的.所以刚学 Markdown 的时候很是有想过要搭个个人博客来玩玩,一来激 ...

  9. GitHub远程库的搭建以及使用

    GitHub远程库的搭建 一).配置SSH 步骤: 1).注册GitHub账号 2).本地git仓库与远程的GitHub仓库的传输要通过SSH进行加密 3).创建SSH key ​ 1.检查在用户主目 ...

随机推荐

  1. Java知多少(90)菜单

    有两种类型的菜单:下拉式菜单和弹出式菜单.本章只讨论下拉式菜单编程方法.菜单与JComboBox和JCheckBox不同,它们在界面中是一直可见的.菜单与JComboBox的相同之处是每次只可选择一个 ...

  2. easyui tree 默认选中第一个元素

    系统采用ajax异步调用后端接口做数据呈现,有个场景就是加载的树形菜单默认选中第一行,网上有人分享的解决方案能实现效果(http://aokunsang.iteye.com/blog/1489204) ...

  3. .net core 开发接口前端调用时提示错误 405

    解决方法: 在StartUp.cs文件中Configure(IApplicationBuilder app, IHostingEnvironment env)方法中添加如下代码: //跨域 app.U ...

  4. 使用log4cplus时遇到的链接错误:无法解析的外部符号 "public: static class log4cplus::Logger __cdecl log4cplus::Logger::getInstance(class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,

    #include "stdafx.h" #include <log4cplus/logger.h> #include <log4cplus/loggingmacr ...

  5. android基础---->子线程更新UI

    和许多其他的GUI 库一样,Android 的UI 也是线程不安全的.也就是说,如果想要更新应用程序里的UI 元素,则必须在主线程中进行,否则就会出现异常.了解AsyncTask的用法,请参见我的博客 ...

  6. 微信小游戏 main.js没有被压缩

    发布时,发现main.js没有被压缩. 在config.wxgame.ts里增加如下图.

  7. QT textBrowser 使用

    使用环境: VS2010 & QT Designer5 1. 在QT Designer 拖入  textBrowser,点击右键属性获得 name值 2. 在程序使用的地方 加入  ui.te ...

  8. M - Pots

    You are given two pots, having the volume of A and B liters respectively. The following operations c ...

  9. D - Brave Game

    十年前读大学的时候,中国每年都要从国外引进一些电影大片,其中有一部电影就叫<勇敢者的游戏>(英文名称:Zathura),一直到现在,我依然对于电影中的部分电脑特技印象深刻. 今天,大家选择 ...

  10. Spark RDD Action 简单用例(一)

    collectAsMap(): Map[K, V] 返回key-value对,key是唯一的,如果rdd元素中同一个key对应多个value,则只会保留一个./** * Return the key- ...