zoukankan      html  css  js  c++  java
  • LIVE555 WebRTC Demonstration

    Live Networks logo

    LIVE555TM WebRTC Demonstration

    The WebRTC video demonstration is currently offline. For alternative technology for viewing a RTSP stream from within a web browser, please note instead the "LIVE555 HLS Proxy" application.


    Explanation

    network layout

    Network layout


    The "LIVE555 WebRTC Server" acts as a proxy for a 'back-end' RTSP stream (a network camera, delivering a H.264, MPEG-4, or JPEG video stream). The server transcodes the video stream into a 100kbps VP8 video stream, and delivers this VP8 video stream to one or more 'front-end' clients.

    Unlike the "LIVE555 Proxy Server" however, the "LIVE555 WebRTC Server's" front-end clients are not RTSP clients, but web browsers - using the "WebRTC" standard (part of HTML5). WebRTC allows compliant browsers (including Chrome and Opera) to receive real-time audio/video streams, without requiring a 'plugin'.

    The VP8 video stream is delivered to each 'front-end' client web browser using SRTP (i.e., encrypted RTP/RTCP, which is mandated for WebRTC). The "LIVE555 WebRTC Server" - along with each web browser - uses the IETF-standard STUN and ICE protocols to traverse any NATs that may be present between the server and browser.

    The web browsers initiate the stream by loading a web page from a regular (PHP-enhanced) web server. The web page contains Javascript code that (i) asks the web server to contact the "LIVE555 WebRTC Server" to start streaming to this new browser client, and (ii) tells the browser to start receiving the WebRTC video stream.

    Implementation notes

    • The "LIVE555 WebRTC Server" is a "GenericMediaServer" subclass, containing a "ProxyServerMediaSubsession" (subclass) object.
    • STUN/ICE (for NAT traversal/endpoint discovery) and SRTP (encrypted RTP/RTCP) has been implemented using custom subclasses of the "Groupsock" class.
    • Media transcoding support has been an (optional) feature in "ProxyServerMediaSubsession" since "LIVE555 Streaming Media" version 2015.07.19.

    If you have any questions/comments about this demo, or the underlying technology, please use our "live-devel" mailing list.


    "LIVE555" and the Live Networks logo are trademarks of Live Networks, Inc.

    Copyright

    http://webrtc.live555.com/

  • 相关阅读:
    浅谈Java中的==和equals
    Android下基于线程池的网络访问基础框架
    浅谈Android View滑动冲突
    Android View事件分发源码分析
    浅谈Android View事件分发机制
    Android弹性滑动的三种实现方式
    浅谈Android View滑动和弹性滑动
    浅谈Android View的定位
    web Form 表单method="get" method="post" 区别
    get与post的区别
  • 原文地址:https://www.cnblogs.com/dong1/p/14587702.html
Copyright © 2011-2022 走看看