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 NIO3:缓冲区Buffer
    Java NIO2:NIO概述
    Mybatis学习总结(六)——高级映射(一对一,一对多,多对多)
    Java NIO1:浅谈I/O模型
    Java多线程(三)—— synchronized关键字详解
    Java IO(五)——字符流进阶及BufferedWriter、BufferedReader
    Java IO(四)——字符流
    mysql 实现树形的遍历
    Java IO(三)——字节流
    使用 SVN Hook 实现服务器端代码自动更新
  • 原文地址:https://www.cnblogs.com/dong1/p/14587702.html
Copyright © 2011-2022 走看看