Paul-Louis Ageneau 589634670b Adapted streamer example 3 years ago
..
samples b39fe51365 Add h264 and opus samples 4 years ago
uwp 6b21637dd5 Make examples in /media, /sfu-media, and /streamer work in UWP. 4 years ago
ArgParser.cpp 4d407cf15e Replace getopt with custom arg parser 4 years ago
ArgParser.hpp 4d407cf15e Replace getopt with custom arg parser 4 years ago
CMakeLists.txt 6b6b41d909 Examples: Fixed compilation with MinGW 3 years ago
README.md d1d71b2374 Clarified streamer example Readme 4 years ago
client.js 335e9bd22a Simplified streamer example client 3 years ago
dispatchqueue.cpp d9aa1818b2 Add example project for h264 and opus streaming 4 years ago
dispatchqueue.hpp 226e849915 Include <functional> in dispatchqueue.hpp 4 years ago
fileparser.cpp 589634670b Adapted streamer example 2 years ago
fileparser.hpp 589634670b Adapted streamer example 2 years ago
h264fileparser.cpp 8680ae4a37 Public classes renaming and cleanup 3 years ago
h264fileparser.hpp d9aa1818b2 Add example project for h264 and opus streaming 4 years ago
helpers.cpp 6b6b41d909 Examples: Fixed compilation with MinGW 3 years ago
helpers.hpp 589634670b Adapted streamer example 2 years ago
index.html 335e9bd22a Simplified streamer example client 3 years ago
main.cpp 589634670b Adapted streamer example 2 years ago
opusfileparser.cpp d9aa1818b2 Add example project for h264 and opus streaming 4 years ago
opusfileparser.hpp d9aa1818b2 Add example project for h264 and opus streaming 4 years ago
stream.cpp 589634670b Adapted streamer example 2 years ago
stream.hpp 589634670b Adapted streamer example 2 years ago

README.md

Streaming H264 and opus

This example streams H264 and opus1 samples to the connected browser client.

Start the example signaling server

$ python3 examples/signaling-server-python/signaling-server.py

Start a web server

$ cd examples/streamer
$ python3 -m http.server --bind 127.0.0.1 8080

Start the streamer

$ cd build/examples/streamer
$ ./streamer

Arguments:

  • -a Directory with OPUS samples (default: ../../../../examples/streamer/samples/opus/).
  • -b Directory with H264 samples (default: ../../../../examples/streamer/samples/h264/).
  • -d Signaling server IP address (default: 127.0.0.1).
  • -p Signaling server port (default: 8000).
  • -v Enable debug logs.
  • -h Print this help and exit.

You can now open the example at the web server URL http://127.0.0.1:8080.

Generating H264 and Opus samples

You can generate H264 and Opus sample with samples/generate_h264.py and samples/generate_opus.py respectively. This require ffmpeg, python3 and kaitaistruct library to be installed. Use -h/--help to learn more about arguments.

1 Opus samples are generated from music downloaded at bensound.