zoukankan      html  css  js  c++  java
  • iOS 直播(一)

    由于业务需求,需要从腾讯直播sdk要迅速转移到自主开发(先让我默哀三分钟)。不多说,直接开始唠嗑!

      这个项目超级简单,简单到只能一个推流,一个拉流的功能。需求多的再另谈。

      前期准备:推流用优酷开源的LFLiveKit框架。

           拉流(实际上就是一个播放器)用ijkplayer 框架,当然这个也是开源的。

           创建本地rtmp服务器

    创建本地rtmp服务器。(这个地方坑比较多,老夫深陷其中欲罢不能)

    一.打开终端, 查看是否已经安装了Homebrew, 直接终端输入命令

      man brew

    如果已经安装就会显示帮助信息,没有的情况下就去安装,终端之行命令:

      ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    安装后需要卸载的情况下

      ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

    二.安装 nginx执行命令:(分布执行)

      brew tap homebrew/nginx

      brew install nginx-full --with-rtmp-module

      nginx

    三个命令执行完成后浏览器打开:

      http://localhost:8080

    如果出现 welcome to nginx! .......表示成功

    如果出现端口被占用,则查看端口PID,执行

      lsof -i tcp:8080

    找到自己的端口kill 掉,执行

      kill xxxx(xxxx表示自己的端口)

    重复二

    三.配置nginx和ramp

    1.查看nginx的安装路径,执行命令:

      brew info nginx-full

    2.找到nginx.conf的所在位置,然后进入文件夹,用记事本打开nginx.conf,滚到最后空白处粘贴:

    # 在http节点后面加上rtmp配置:
    rtmp {
        server {
            listen 1935;
            application rtmplive {
                live on;
                record off;
            }
        }
    }

    3.查看nginx版本号,执行:

      nginx -v

    4.重启nginx

    /usr/local/Cellar/nginx-full/xxxx/bin/nginx -s reload   (xxxx表示nginx版本号)


    四.安装ffmpeg,执行:

      brew install ffmpeg(这个有50兆,建议FQ啊亲!!)

    安装完成后,本地的rtmp服务器久已经安装完成了。

    五.测试

    1.在桌面放上一个mp4的文件,例如文件名为:text.mp4

    2.终端执行:ffmpeg -re -i /Users/a123/Desktop/text.mp4 -vcodec libx264 -acodec aac -strict -2 -f flv rtmp://localhost:1935/rtmplive/room
    黄色为这个视频文件的路径,终端会显示你想要的结果(你应该能看得懂)。

    3.如果(我是说如果,你还想从服务器里面读取这个推流上来的视频),那就去下载一个播放器,自行百度。然后打开:rtmp://localhost:1935/rtmplive/room就能播放了。

    终~~~~~~~~~(好多都是借鉴别人的,好紧张啊,会不会被举报呀http://www.cnblogs.com/damiao/p/5231221.html)

  • 相关阅读:
    无限极分类查找所有子孙节点的改进算法
    递归方式将数组变对象
    中文编码与解码
    MYSQL数据库
    python之进程池与线程池
    ORM介绍
    python之协程
    windows10如何将python2和python3添加到环境变量中
    互斥锁、死锁现象、递归锁、信号量
    python之GIL(Global Interpreter Lock)
  • 原文地址:https://www.cnblogs.com/MyBlogZH/p/5763585.html
Copyright © 2011-2022 走看看