win10安装EasyDarwin并作为流媒体服务器的推流和拉流实例

  为了模拟客户端对视频流的推流和拉流,决定下一个流媒体服务器,据说EasyDarwin很一个开源又简单,就选它了。

  下载从它的官网http://www.easydarwin.org/来到git仓库,选则easydarwin项目后进入releases,选安装包:

  问题是git下载网速被限制了,下了一丢丢就没了,除非自己下载源码、编译和打包。为求方便,先将就下个老版本用用https://download.csdn.net/download/wuxun1997/12239168

  下完后解压,按readme.txt操作一番即可安装成功:

  1、运行EasyDarwin/start.bat启动EasyDarwin

D:EasyDarwinEasyDarwin-Windows-x86_64-v7.3.17.0325EasyDarwin>cd ./

D:EasyDarwinEasyDarwin-Windows-x86_64-v7.3.17.0325EasyDarwin>EasyDarwin -c ./easydarwin.xml -d
EasyDarwin/7.3 ( Build/17.0325; Platform/Win32; Compile_Flags/_RELEASE;Release/EasyDarwin; State/Development; ) Built on: Mar 25 2017, 17:14:41

  2、运行nginx-1.11.12/nginx.exe,双击exe图标后nginx是以后台进程运行的

  3、在浏览器输入localhost:10080后进入easydarwin的登陆页面

  4、敲入账号密码(默认都是admin)后进入后台管理页面

  5、作为流媒体服务器,自然是用来接收流媒体的,我们通过ffmpeg推流给它,敲入命令:

C:Userswulf>ffmpeg -re -i d:vedioVID_20200223_153448.mp4 -rtsp_transport tcp -f rtsp rtsp://127.0.0.1/test
ffmpeg version git-2020-03-06-cfd9a65 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.2.1 (GCC) 20200122
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
  libavutil      56. 42.100 / 56. 42.100
  libavcodec     58. 73.102 / 58. 73.102
  libavformat    58. 39.101 / 58. 39.101
  libavdevice    58.  9.103 / 58.  9.103
  libavfilter     7. 77.100 /  7. 77.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'd:vedioVID_20200223_153448.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    creation_time   : 2020-02-23T07:34:48.000000Z
    com.android.version: 9
  Duration: 00:08:30.66, start: 0.000000, bitrate: 9987 kb/s
    Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720, 9783 kb/s, SAR 1:1 DAR 16:9, 30.18 fps, 30 tbr, 90k tbn, 60 tbc (default)
    Metadata:
      rotate          : 90
      creation_time   : 2020-02-23T07:34:48.000000Z
      handler_name    : VideoHandle
    Side data:
      displaymatrix: rotation of -90.00 degrees
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 192 kb/s (default)
    Metadata:
      creation_time   : 2020-02-23T07:34:48.000000Z
      handler_name    : SoundHandle
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> mpeg4 (native))
  Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
Output #0, rtsp, to 'rtsp://127.0.0.1/test':014:32:22.77 bitrate=N/A speed=N/A
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    com.android.version: 9
    encoder         : Lavf58.39.101
    Stream #0:0(eng): Video: mpeg4, yuv420p, 720x1280 [SAR 1:1 DAR 9:16], q=2-31, 200 kb/s, 30 fps, 90k tbn, 30 tbc (default)
    Metadata:
      encoder         : Lavc58.73.102 mpeg4
      creation_time   : 2020-02-23T07:34:48.000000Z
      handler_name    : VideoHandle
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
      displaymatrix: rotation of -0.00 degrees
    Stream #0:1(eng): Audio: aac (LC), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      creation_time   : 2020-02-23T07:34:48.000000Z
      handler_name    : SoundHandle
      encoder         : Lavc58.73.102 aac
frame=10877 fps= 30 q=31.0 size=N/A time=00:06:02.53 bitrate=N/A dup=6 drop=68 speed=   1x

  6、然后我们刷新下界面,可以看到直播流列表来了一条数据:

  7、通过ffmpeg播放器来拉流,接收从EasyDarwin流媒体服务器过来的流:

  

C:Userswulf>ffplay -i -rtsp_transport tcp rtsp://127.0.0.1:10554/test
ffplay version git-2020-03-06-cfd9a65 Copyright (c) 2003-2020 the FFmpeg developers
  built with gcc 9.2.1 (GCC) 20200122
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
  libavutil      56. 42.100 / 56. 42.100
  libavcodec     58. 73.102 / 58. 73.102
  libavformat    58. 39.101 / 58. 39.101
  libavdevice    58.  9.103 / 58.  9.103
  libavfilter     7. 77.100 /  7. 77.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
Input #0, rtsp, from 'rtsp://127.0.0.1:10554/test':q=    0B f=0/0
  Metadata:
    title           : No Name
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: mpeg4 (Simple Profile), yuv420p, 720x1280 [SAR 1:1 DAR 9:16], 30 tbr, 90k tbn, 30 tbc
    Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp
[mpeg4 @ 00000211fc56d940] warning: first frame is no keyframe
 169.27 A-V: -0.000 fd= 154 aq=    2KB vq=    7KB sq=    0B f=0/0

  

  看起来播放的画面并不是很清晰:

原文地址:https://www.cnblogs.com/wuxun1997/p/12457502.html