My Account Log in

2 options

Programming WebRTC / Karl Stolley.

EBSCOhost Academic eBook Collection (North America) Available online

View online

EBSCOhost eBook Community College Collection Available online

View online
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.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account