/cpp_streamer

cpp streamer work in dynamic modules for media develop. It include flv/mpegts/rtmp/webrtc modules, and go on developing more modules

Primary LanguageC++

README_中文

cpp_streamer

cpp streamer is an audio and video component developed based on C++11. Users can connect the components together to implement their own streaming media functionality.

Supports various media formats, streaming live/RTC protocols.

  • flv mux/demux
  • mpegts mux/demux
  • rtmp publish/play
  • srs whip
  • srs whip bench(srs webrtc bench)
  • mediasoup whip(mediaoup webrtc bench)

For network development, it utilizes the high-performance, cross-platform libuv network asynchronous library.

Usage Instructions.

cpp streamer is an audio-video component that offers streaming development mode.

For example:The implementation of converting FLV files to MPEG-TS is as shown in the following diagram.

cpp_stream flv2mpegts

  • First, read the FLV file;
  • Using the flvdemux component: import the file binary stream through the source interface, parse it, and then output the video + audio media stream through the sinker interface;
  • Using the mpegtsmux component: import the parsed media stream from the upstream through the source interface, encapsulate it into MPEG-TS format internally in the component, and then output it in MPEG-TS format through the sinker interface;
  • Output through the sinker interface of the mpegtsmux component, write to a file, and obtain an MPEG-TS file;

application examples