MDN/Projects/Content/WebRTC: Difference between revisions

From MozillaWiki
< MDN‎ | Projects‎ | Content
Jump to navigation Jump to search
No edit summary
No edit summary
Line 6: Line 6:


(Jean-Yves and Florian may share guide/reference work).
(Jean-Yves and Florian may share guide/reference work).
Meeting notes here: https://etherpad.mozilla.org/webrtc


==Goal==
==Goal==
Line 12: Line 14:
* Enable Firefox OS developers to perform peer-to-peer data transactions.
* Enable Firefox OS developers to perform peer-to-peer data transactions.
* Enable Firefox OS developers to write code that sends DTMF (touch-tone phone dialing) signals.
* Enable Firefox OS developers to write code that sends DTMF (touch-tone phone dialing) signals.
===Target Milestones===
* September 30
** Complete documentation for Web developers
** All content reviewed


==User stories==
==User stories==
Line 21: Line 28:
==Documents needed==
==Documents needed==
See also this [https://docs.google.com/a/mozilla.com/spreadsheets/d/1i5bUg_Ngrt8NrlqaXw3eUTnLJ8MdiF6JEZ2LCtetCF8/edit#gid=0 spreadsheet listing individual API items needing to be documented].
See also this [https://docs.google.com/a/mozilla.com/spreadsheets/d/1i5bUg_Ngrt8NrlqaXw3eUTnLJ8MdiF6JEZ2LCtetCF8/edit#gid=0 spreadsheet listing individual API items needing to be documented].
===Types of Pages===
* Reference
** Interfaces
** Properties
** Methods
** Events
* Landing pages
* Guides and tutorials
* Sample apps and web Apps


===User guides===
===User guides===
Line 26: Line 43:
** Introduction to WebRTC (what it is and what it can do)
** Introduction to WebRTC (what it is and what it can do)
** Overview of the APIs
** Overview of the APIs
** Supported formats
** Support and compatibility details
*** Browser compatibility details
*** Supported codecs/formats
** FAQ
** FAQ
* Low level guides
* Low level guides
Line 58: Line 77:
==References==
==References==
* http://dev.w3.org/2011/webrtc/editor/webrtc.html
* http://dev.w3.org/2011/webrtc/editor/webrtc.html
* http://dev.w3.org/2011/webrtc/editor/getusermedia.html
* http://www.webrtc.org/
* http://www.webrtc.org/
* https://hacks.mozilla.org/2013/10/an-ar-game-technical-overview/
* https://hacks.mozilla.org/2013/10/an-ar-game-technical-overview/
* https://hacks.mozilla.org/2013/11/introducing-the-whiteboard-drum-webrtc-and-web-audio-api-magic/
* https://hacks.mozilla.org/2013/11/introducing-the-whiteboard-drum-webrtc-and-web-audio-api-magic/
* https://hacks.mozilla.org/2014/04/inside-the-party-bus-building-a-web-app-with-multiple-live-video-streams-interactive-graphics/
* https://hacks.mozilla.org/2014/04/inside-the-party-bus-building-a-web-app-with-multiple-live-video-streams-interactive-graphics/
* [https://bugzilla.mozilla.org/buglist.cgi?keywords=dev-doc-needed%2C%20&keywords_type=allwords&list_id=10607798&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=INCOMPLETE&resolution=SUPPORT&resolution=EXPIRED&resolution=MOVED&query_format=advanced&component=WebRTC&component=WebRTC%3A%20Audio%2FVideo&component=WebRTC%3A%20Networking&component=WebRTC%3A%20Signaling dev-doc-needed bugs]
==Existing Content==
These articles already exist; they may or may not be any good.
* https://developer.mozilla.org/en-US/docs/Web/API/MediaStream
* https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack
* https://developer.mozilla.org/en-US/docs/Web/API/Navigator.getUserMedia
* https://developer.mozilla.org/en-US/docs/Web/API/RTCDataChannel
* https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection
* https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnectionErrorCallback
* https://developer.mozilla.org/en-US/docs/Web/API/RTCConfiguration
* https://developer.mozilla.org/en-US/docs/Web/API/RTCIceGatheringState
* https://developer.mozilla.org/en-US/docs/Web/API/RTCSignalingState
* https://developer.mozilla.org/en-US/docs/Web/API/RTCSessionDescription
* https://developer.mozilla.org/en-US/docs/Web/API/RTCDataChannel
* https://developer.mozilla.org/en-US/docs/Web/Guide/API/WebRTC
* https://developer.mozilla.org/en-US/docs/Web/Guide/API/WebRTC/WebRTC_basics
* https://developer.mozilla.org/en-US/docs/Web/Guide/API/WebRTC/WebRTC_architecture
* https://developer.mozilla.org/en-US/docs/Web/Guide/API/WebRTC/Taking_webcam_photos
* https://developer.mozilla.org/en-US/docs/Web/Guide/API/WebRTC/Peer-to-peer_communications_with_WebRTC
* https://developer.mozilla.org/en-US/docs/Web/Guide/API/WebRTC/Introduction
* https://developer.mozilla.org/en-US/docs/Web/API/MediaStream_API


==Implementation thoughts==
==Implementation thoughts==

Revision as of 19:03, 23 July 2014

Team

  • Reference: Jean-Yves
  • Guide: Florian
  • Sample code: Sheppy

(Jean-Yves and Florian may share guide/reference work).

Meeting notes here: https://etherpad.mozilla.org/webrtc

Goal

  • Encourage the use of a critical new Web technology.
  • Enable Firefox OS developers to easily learn how to write audio/video apps.
  • Enable Firefox OS developers to perform peer-to-peer data transactions.
  • Enable Firefox OS developers to write code that sends DTMF (touch-tone phone dialing) signals.

Target Milestones

  • September 30
    • Complete documentation for Web developers
    • All content reviewed

User stories

  • I want to write a video capture application.
  • I want to write a video/audio chat application.
  • I want to do easy peer-to-peer data transactions.
  • My app needs to send DTMF tones.

Documents needed

See also this spreadsheet listing individual API items needing to be documented.

Types of Pages

  • Reference
    • Interfaces
    • Properties
    • Methods
    • Events
  • Landing pages
  • Guides and tutorials
  • Sample apps and web Apps

User guides

  • High level guides
    • Introduction to WebRTC (what it is and what it can do)
    • Overview of the APIs
    • Support and compatibility details
      • Browser compatibility details
      • Supported codecs/formats
    • FAQ
  • Low level guides
    • Creating a peer-to-peer connection
    • Using DTMF
    • Sending and receiving data
    • Video conferencing

???

Code samples

  • Video
      • One way video session
        • Audio-only sessions?
      • Starting a two-way video session
      • Multi-user sessions
      • Handling video session errors
      • Adding/removing users from a session
      • Screen sharing
  • Data
      • Initiating a data transfer session
      • Unidirectional/bidirectional?
      • Multicasting? (I don't know yet if this is supported)
  • Chat
      • A larger example of a chat client/server system using a combination of WebRTC and WebSockets
        • Text chat like IRC
        • Option to initiate video conference among users
        • Option to transmit files among users
  • Contact API
      • Using contacts to start a WebRTC session

References

Existing Content

These articles already exist; they may or may not be any good.

Implementation thoughts