0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何用芒果派做一个直播流媒体服务器

jf_06445065 来源:jf_06445065 作者:jf_06445065 2023-07-22 09:16 次阅读

拿到手里面的芒果派首先看一下他的CPU信息和内存信息:

wKgaomS6nLqAbv7sAFwy5J-kPHc662.pngwKgZomS6nLuAcInyAF75z8BS518086.png

还挺好,4核CPU,1G内存,在机器上跑一下ssh服务,然后剩下的远程登录操作就行了:

sudo service ssh start

然后就是用另一台常用的电脑远程登录就行了,登录界面还是挺用心的:

wKgZomS6nLWAWbpqAACQMG2Xvq8496.png

登录完成后,接下来就开始尝试着构建自己的直播流媒体服务器的环境了。

git clone https://github.com/ossrs/srs.git
cd srs/trunk
./configure
make

在这里可以放心大胆的configure和make,因为亲片是allwinner的,也就是ARM的,srs的关键核心组件statethread已经支持arm下面跑协程了。

编译完成之后看一下基本上会用到的文件:

wKgaomS6ni2AaYo5AAGvJ64FuvU684.png

编译完成了,因为我在这里只想试一试srs服务器是否跑起来了,如果能顺便试试RTMP转RTC就更好了,所以选择了rtmp2rtc.conf。

这里有一点需要注意,想跑RTC的话,需要设置一下CANDIDATE环境变量,而且还需要注意运行服务的权限。然后再跑服务,就可以了。

wKgaomS6nxKAZMCHAAOdRfRoMa0976.pngwKgZomS6nxKAavLTAAW1nN3VRsM468.png

从上面两张图可以一看到,srs的直播流媒体服务已经在板子上面跑起来了,接下来就可以开始尝试从别的地方像板子上面推流了。我推的是自己生成的测试内容:

(base) MacBook-Pro$ ffmpeg -re -f lavfi -i testsrc=s=176x144 -vcodec libx264 -f flv rtmp://192.168.3.18/app/test1
ffmpeg version N-111491-g31979127f8 Copyright (c) 2000-2023 the FFmpeg developers
  built with Apple clang version 14.0.3 (clang-1403.0.22.14.1)
  configuration: --enable-libass --enable-opengl --enable-libx264 --enable-libmp3lame --enable-gpl --enable-nonfree --prefix=/usr/local --enable-libtesseract --enable-libspeex --enable-libfreetype --enable-libfontconfig --enable-libfdk-aac --enable-videotoolbox --enable-libxml2 --enable-version3 --disable-stripping --disable-optimizations --enable-openssl
  libavutil      58. 14.100 / 58. 14.100
  libavcodec     60. 22.100 / 60. 22.100
  libavformat    60. 10.100 / 60. 10.100
  libavdevice    60.  2.101 / 60.  2.101
  libavfilter     9.  8.102 /  9.  8.102
  libswscale      7.  3.100 /  7.  3.100
  libswresample   4. 11.100 /  4. 11.100
  libpostproc    57.  2.100 / 57.  2.100
Input #0, lavfi, from 'testsrc=s=176x144':
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Video: wrapped_avframe, rgb24, 176x144 [SAR 1:1 DAR 11:9], 25 fps, 25 tbr, 25 tbn
Stream mapping:
  Stream #0:0 -> #0:0 (wrapped_avframe (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 0x7f893a706800] using SAR=1/1
[libx264 @ 0x7f893a706800] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2
[libx264 @ 0x7f893a706800] profile High 4:4:4 Predictive, level 1.1, 4:4:4 8-bit
[libx264 @ 0x7f893a706800] 264 - core 133 r2334M a3ac64b - H.264/MPEG-4 AVC codec - Copyleft 2003-2013 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=18 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, flv, to 'rtmp://192.168.3.18/app/test1':
  Metadata:
    encoder         : Lavf60.10.100
  Stream #0:0: Video: h264 ([7][0][0][0] / 0x0007), yuv444p(tv, progressive), 176x144 [SAR 1:1 DAR 11:9], q=2-31, 25 fps, 1k tbn
    Metadata:
      encoder         : Lavc60.22.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame=  419 fps= 22 q=28.0 size=      85kB time=00:00:16.68 bitrate=  41.9kbits/s speed=0.892x

已经推成功了,用播放器播放一下试试看:

wKgZomS6n4iAAQDdAADWxUjOuJE270.png

播放页成功了。到这里可以看到用板子做个流媒体直播服务器还可以用的。接下来看一下流媒体服务器的看板和信息。

wKgaomS6n8SANk_YAAFNIwzF2O0308.png

看板看上去也没有什么问题,接下来可以从看板里面看到更多的服务器相关的信息和推的流的信息和内容。

到这里,使用芒果派构建一个直播流媒体服务器的体验就完成了,可以在家里面玩直播喽。
责任编辑:彭菁

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 直播
    +关注

    关注

    1

    文章

    240

    浏览量

    20900
  • 服务器
    +关注

    关注

    12

    文章

    8116

    浏览量

    82509
收藏 人收藏

    评论

    相关推荐

    流媒体高清视频编码技术应用于视频直播和网络电视台

    概述WebLIVE 视频直播系统是基于Web 应用的全新视频直播系统,它综合了计算机网络技术和视频技术的优点,采用最先进的H.264 编解码技术,服务器端进行实时编码压缩,客户端进行实时解码、实时播放
    发表于 08-10 14:32

    嵌入式流媒体服务器的设计与实现

    嵌入式流媒体服务器的设计与实现
    发表于 08-20 10:09

    流媒体视频直播技术加快电力行业信息化建设

    的音、视频信号进行实时编码,并通过网络传输至发布服务器,再由发布服务器软件经过系列处理,在网络中实时发布出去,起到现场直播的效果。 流媒体
    发表于 08-23 10:13

    树莓媒体服务器——MiniDLNA

    成为可能。在这个教程我将向你展示如何用MiniDLNA做一个树莓媒体服务器,让你的照片、音乐和视频在网络流动。这里直接跳过树莓
    发表于 01-19 14:35

    树莓搭建基于DLNA的家庭流媒体服务器

    本方案主要由两部份组成:媒体服务器和笔记本电脑。第部份:用MINIDLNA搭建媒体服务器、移
    发表于 08-06 00:42

    Linux下视频流媒体直播服务器搭建详解

    目标: 搭建网络直播流媒体服务器系统(Linux操作系统) 背景:用于OTT-TV大并发的直播和点播的
    发表于 06-02 14:35

    树莓做一个网络摄像头上传实时视频到云服务器,云服务器推流到客户端可以实现吗

    树莓做一个网络摄像头,不想在树莓派上直接搭建流媒体服务器,因为它没有公网ip,虽然可以通过路由映射,但不便于用户直接使用,所以想上传实时
    发表于 08-16 01:23

    直播软件开发过程中,如何选择流媒体协议?

    移动设备上效果比较好?接下来小编就先从各项协议的优缺点比较说起。、常见的几种流媒体协议的优缺点:RTMP:Adobe 公司为Flash/AIR与服务器之间传输音视频数据而开发的私有协议,也是目前最常
    发表于 08-21 14:34

    什么是流媒体服务器

    。  作为新代的互联网应用技术,近几年发展是非常快的,是些运营商为用户提供视频服务的关键因素。要知道,平台的视频播放,调度及传播是取
    发表于 06-30 09:28

    怎样去编译完整的流媒体服务系统呢

    流媒体技术在安防监控、网络电视、视频会议等应用领域都起着重要的作用,为人们的工作生活带来了便利。嵌入式流媒体服务器不同于传统的基于 PC 架构的流媒体
    发表于 12-14 08:18

    何用C++做一个TCP的服务器进行数据观察及采集呢

    何用C++做一个TCP的服务器进行数据观察及采集呢?有哪些设计步骤?
    发表于 12-23 09:41

    webrtc流媒体转发服务器是如何定义的

    webrtc流媒体转发服务器定义难点建立连接如何转发媒体流如何高效转发媒体流转发后如何保证视频质量定义由于webrtc是基于P2P技术的
    发表于 02-11 06:16

    流媒体服务器大比拼

    流媒体服务器大比拼 网络流媒体服务在最近已经成为非常热门的一个话题,无论是电信、广电、还是新兴的ISP/ICP部门都对此非常关注
    发表于 01-13 11:16 1206次阅读

    流媒体服务器使用说明书

    本使用手册适用MPEG4系列CIF 4路/8路/16路、 D1 4路/8/16路流媒体服务器
    发表于 12-31 14:51 1次下载

    如何选择流媒体存储服务器,硬件条件不能差

    流媒体存储服务器流媒体应用的核心系统,是运营商为用户提供视频服务的关键平台。它的主要功能是收集、缓存、调度和传输媒体内容。
    发表于 04-16 10:54 1826次阅读