流媒体协议.之(RTP,RTCP,RTSP,RTMP,HTTP)(三)

本文,分析,贴出一些博主的关键源码

git地址:https://github.com/ireader/media-server?tab=readme-ov-file

网络上也有开源的库,可以用这些。

推流协议库有,librtmp,librtp,jrtplib等;

推流工具有,ffmepg,obs.lib,ndi等;





FLV video codec: H.264/H.265/H.266/AV1/VP8/VP9/VP10

FLV audio codec: AAC/MP3/G.711/Opus

FLV file read/write

H.264/H.265/H.266/AV1 bitstream filter: annex-b <-> mp4 stream

AAC bitstream filter: ADTS <-> ASC

librtmp

rtmp-client: RTMP publish/play

rtmp-server: RTMP Server live/vod streaming

libmpeg

ITU-T H.222.0 PS/TS read/write

ps/ts codec: H.264/H.265/H.266/AAC/MP3/G.711/Opus

librtp

RFC3550 RTP/RTCP

RTP with H.264/H.265/H.266/MPEG-2/MPEG-4/VP8/VP9/AV1

RTP with G.711/G.726/G.729/MP3/AAC/Opus

RTP with MPEG-2 PS/TS

RTP Header Extension

RTCP PSFB/RTPFB/XR

librtsp

RFC2326 RTSP

RFC4566 SDP

SDP fmtp: H.264/H.265/H.266/AAC/Opus/G.711

libhls

HLS M3U8: generate m3u8 file

HLS Media: TS segmenter

HLS fmp4 segmenter

HLS Master/Playlist m3u8 parser

libdash

ISO/IEC 23009-1 MPEG-DASH static(vod)

ISO/IEC 23009-1 MPEG-DASH dynamic(live)

DASH MPD v3/v4 parser

libmov

ISO/IEC 14496-12 MP4 File reader/writer

MP4 faststart(moov box before mdat)

fMP4(Fragment MP4) writer

MP4 with H.264/H.265/H.266/AV1/VP8/VP9/JPEG/PNG

MP4 with AAC/Opus/MP3/G.711

libmkv

MKV/WebM file read/write

MKV/WebM live streaming

libsip

sip user-agent (UAC/UAS)

sip with ICE

libhttp(https://github.com/ireader/sdk)

HTTP Server(base AIO)

HTTP Client

HTTP Cookie

Make

make clean && make

make RELEASE=1 (make release library, default debug)

make PLATFORM=arm-hisiv100nptl-linux (cross compile)

二、博主开源的

相关推荐
深度Linux5 小时前
Linux网络编程中的零拷贝:提升性能的秘密武器
linux·linux内核·零拷贝技术
chian-ocean8 小时前
从理论到实践:Linux 进程替换与 exec 系列函数
linux·运维·服务器
拎得清n8 小时前
UDP编程
linux
敖行客 Allthinker8 小时前
从 UTC 日期时间字符串获取 Unix 时间戳:C 和 C++ 中的挑战与解决方案
linux·运维·服务器·c++
夏尔Gaesar10 小时前
Vim安装与配置教程(解决软件包Vim没有安装可候选)
linux·编辑器·vim
hunter20620610 小时前
如何监控ubuntu系统某个程序的运行状态,如果程序出现异常,对其自动重启。
linux·chrome·ubuntu
慕雪华年11 小时前
【Linux】opencv在arm64上提示找不到libjasper-dev
linux·运维·opencv
s_little_monster13 小时前
【Linux】从硬件到软件了解进程
linux·运维·服务器·经验分享·笔记·学习·学习方法
zyhhsss15 小时前
Ubuntu&Windows双系统安装
linux·运维·ubuntu
Marilynhom16 小时前
CentOs9新手教程
linux·centos