Menu

VLC+WebRTC

yuanhy0055
Attachments
webrtc_droid.png (51454 bytes)

hard to NPM tools

Compile WebRTC for Android

Build WebRTC

hard to compile VLC-droid

https://caplette.org/2019/03/10/debugging-the-vlc-android-app-on-a-windows-10-machine/

hard to compile VLC

# cleanup everything (WARNING, it basically deletes everything not commited)
git clean -fdx

# build the needed tools
cd extras/tools
./bootstrap && make 

# build the contribs
cd ../../contribs && mkdir native && cd native
../bootstrap && make

# build vlc
cd ../../ && ./bootstrap && mkdir build-native && cd native && ../configure
make

Android

Computer Vision

  • OpenCV
  • FFMpeg

ONGOING WEBRTC -> VOD = AVC2 [in progress]:

  • 在HTML5上开发音视频应用的五种思路
  • 几种浏览器播放RTSP视频流解决方案
  • 方案一: H5 + websocket_rtsp_proxy 实现视频流直播
    Streamedian 提供了一种“html5_rtsp_player + websock_rtsp_proxy”的技术方案,可以通过html5的video标签直接播放RTSP的视频流。

整个架构如下图所示,分为服务器端和浏览器端两部分:

  1. 方案二:RTSP转RTMP到RTMP服务器,转http-flv,播放端用flv.js播放
    flv.js在获取到FLV格式的音视频数据后将 FLV 文件流转码复用成 ISO BMFF(MP4 碎片)片段,再通过Media Source Extensions API 传递给原生HTML5 Video标签进行播放。

flv.js 是使用 ECMAScript 6 编写的,然后通过 Babel Compiler 编译成 ECMAScript 5,使用 Browserify 打包。

flv.js 从服务器获取FLV再解封装后转给Video标签的原因如下:

兼容目前的直播方案:目前大多数直播方案的音视频服务都是采用FLV容器格式传输音视频数据。
flv格式简单,相比于MP4格式转封装简单、性能上也占优势,解析起来更快更方便。

3.方案三:RTSP转RTMP到RTMP服务器,转hls,播放端用video.js播放
Video.js是一款web视频播放器,支持html5和flash两种播放方式。更有自定义皮肤,插件,组件,语言还有丰富的选项配置。

  1. 方案四:VLC或者SmartPlayer第三方插件播放
    VLC不再多说,几乎做流媒体的开发者都知道,SmartPlayer是大牛直播SDK (Github) 的播放插件,延迟和功能体验更好。

插件形式的优点是无需二次转换,直接通过ActiveX控件的形式播放,延迟非常低,缺点是只支持IE浏览器。

  1. 方案五:RTSP转WebRTC播放
    浏览器对webrtc的支持良好,特别是在H264编码方面几个主流的浏览器都已经支持了。webrtc使用srtp进行媒体数据的传输,那么我们只需要将rtp中的负载数据通过webrtc通道发送给浏览器,而浏览器端只需要通过video标签播放即可,目前RTSP转WebRTC对浏览器的适配比较好,延迟也比较低。

Sublime 2021-3-30

----- BEGIN LICENSE -----
sgbteam
Single User License
EA7E-1153259
8891CBB9 F1513E4F 1A3405C1 A865D53F
115F202E 7B91AB2D 0D2A40ED 352B269B
76E84F0B CD69BFC7 59F2DFEF E267328F
215652A3 E88F9D8F 4C38E3BA 5B2DAAE4
969624E7 DC9CD4D5 717FB40C 1B9738CF
20B3C4F1 E917B5B3 87C38D9C ACCE7DD8
5F7EF854 86B9743C FADC04AA FB0DA5C0
F913BE58 42FEA319 F954EFDD AE881E0B
------ END LICENSE ------

OS dev

  • Minix
  • FreeRTOS

Misc

- RSSee

This is the default page, edit it as you see fit. To add a new page simply reference it within brackets, e.g.: [SamplePage].

The wiki uses Markdown syntax.
Resume Download

Project Members:

Welcome to MyTEX wiki!
This project save Android Document in PDF Files, see it.


3.18

*1. Baidu AI

  1. PuFa AI
  2. AI about things -> OpenCV
  3. OpenCV Demo
  4. OpenCV Porting*
  5. 虚拟Android + 自动化操作uiautomator/accessbility

Page simply reference it within brackets, e.g.: [SamplePage].
The wiki uses Markdown syntax.

Project Members:


MongoDB Logo MongoDB