2 options
Programming WebRTC / Karl Stolley.
- Format:
- Book
- Author/Creator:
- Stolley, Karl, author.
- Language:
- English
- Subjects (All):
- Application software--Development.
- Application software.
- Real-time data processing.
- Physical Description:
- 1 online resource (260 pages)
- Edition:
- First edition.
- Place of Publication:
- Raleigh, North Carolina : The Pragmatic Programmers, LLC, [2024]
- Summary:
- Programming WebRTC by Karl Stolley is a comprehensive guide that delves into the intricacies of Web Real-Time Communication (WebRTC), an API for enabling real-time communication in web applications. The book is structured to take readers through the process of building WebRTC applications, from setting up a development environment to deploying apps in production. It emphasizes practical learning through iterative development, covering topics such as peer-to-peer connections, signaling channels, and managing user media. The author combines technical depth with humor, making complex topics accessible. This book is intended for software developers and technologists interested in mastering WebRTC and building robust real-time streaming applications using modern web technologies like HTML, CSS, and JavaScript. Generated by AI.
- Contents:
- Cover
- Table of Contents
- Acknowledgments
- Preface
- Your WebRTC Journey
- Who Should Read This Book?
- What's Covered (And What's Not)
- How This Book Is Organized
- Online Resources
- 1. Preparing a WebRTC Development Environment
- Installing Node.js
- Downloading the Supporting Code and Installing Dependencies
- Serving HTTPS in Development
- Choosing a Development Browser
- Starting and Stopping the Server
- 2. Working with a Signaling Channel
- Preparing a Basic Peer-to-Peer Interface
- Adding Video Elements: Self and Peer
- Styling the Core App Elements
- Adding Functionality to the Call Button in JavaScript
- Positioning WebRTC as a Front-End Technology
- Using a Lightweight Signaling Channel
- Connecting to the Signaling Channel
- 3. Establishing a Peer-to-Peer Connection
- Requesting User-Media Permissions
- Setting Up the Peer Connection
- Building Connection Logic to the "Perfect Negotiation" Pattern
- Receiving Media Tracks
- Testing Out Your First Peer-to-Peer App
- 4. Handling Data Channels
- Adding Basic Visual Effects to User Videos
- Determining Peer-Connection States
- Applying Filters Remotely with Data Channels
- Uniquely Identifying Data Channels
- Adding a Text-Chat Feature
- Adding Logic to Handle Chat Events
- Setting Up the Text-Chat Data Channel
- Building a Message Queue
- 5. Streaming Complex Data
- Structuring Chat Messages in JSON
- Adding Mic and Camera Toggles
- Refining the Initial Properties on Self and Peer
- Building A/V Toggles
- Sharing Features over Data Channels
- Sending Images over the Chat
- Sending and Receiving Binary Data
- 6. Managing Multipeer Connections
- Learning from a Failed Peer-to-Peer Call
- Working with a Multipeer-Ready Signaling Channel
- Revising the Signaling Logic on the Client
- Generating Video Structures on the Fly.
- Initializing Peers as Needed
- Fleshing out the Skeletal Signaling Callbacks
- Working with Peer IDs in the handleScSignal() Callback
- Restructuring WebRTC Callbacks with Closures
- Sharing Features over Multipeer Data Channels
- 7. Managing User Media
- Determining Device Availability
- Detecting Device Changes
- Removing User Media for Remote Peers
- Programmatically Recognizing Denied Media Permissions
- Setting and Applying Media Constraints Objects
- 8. Deploying WebRTC Apps to Production
- Configuring a WebRTC App for Public Deployment
- Configuring a Server to Host Your WebRTC App
- Deploying Your App with Git
- Monitoring Your App with PM2
- Configuring Nginx for Reverse Proxies
- Setting Up Your Own STUN/TURN Server
- A1. Connection Negotiation in Legacy Browsers
- Implementing Backward-Compatible Fixes
- Bibliography
- Index
- - SYMBOLS -
- - A -
- - B -
- - C -
- - D -
- - E -
- - F -
- - G -
- - H -
- - I -
- - J -
- - K -
- - L -
- - M -
- - N -
- - O -
- - P -
- - Q -
- - R -
- - S -
- - T -
- - U -
- - V -
- - W -
- - Z -.
- Notes:
- Description based on publisher supplied metadata and other sources.
- Part of the metadata in this record was created by AI, based on the text of the resource.
- Description based on print version record.
- Description based on online resource; title from PDF title page (EBook Central, viewed May 16, 2025).
- Includes bibliographical references and index.
- ISBN:
- 9798888651117
- 9798888651124
- OCLC:
- 1456760500
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.