【🔥🔥🔥热门、吃香】音视频流媒体权威资料整理,精选文章,学术论文,大佬视频,实践项目,开源框架,协议,业界大神一览
No.
book name
extraction code
author
1
FFmpeg从入门到精通
百度网盘 提取码:n4zj
刘歧, 赵文杰
2
视频图像处理与性能优化
百度网盘 提取码:9kf0
梁军, 贾海鹏
3
数字图像与视频处理
百度网盘 提取码:urz3
卢官明, 唐贵进, 崔子冠
4
数字音视频技术及应用
百度网盘 提取码:ezio
陈光军
5
音视频开发进阶指南:基于Android与iOS平台的实践
百度网盘 提取码:vr7q
展晓凯, 魏晓红
6
视频编码全角度详解:AVS_China、H.264_MPEG-4_PART10、HEVC、VP6、DIRAC、VC-1
百度网盘 提取码:mj2d
刘歧, 赵文杰
7
FFMPEG - From Zero to Hero
百度网盘 提取码:0kiu
Nick, Ferrando
8
FFmpeg Basics 2012
百度网盘 提取码:migt
Frantisek Korbel
9
Handbook on SDP for Multimedia Session Negotiations SIP and WebRTC IP Telephony
百度网盘 提取码:ol6q
Roy, Radhika Ranjan
10
Learning WebRTC
百度网盘 提取码:85wo
Dan Ristic
11
Real-Time Communication with WebRTC
百度网盘 提取码:673p
Salvatore Loreto, Simon Pietro Romano
实时音视频应用共包括几个环节:采集、编码、前后处理、传输、解码、缓冲、渲染等很多环节。每一个细分环节,还有更细分的技术模块。
比如,前后处理环节有美颜、滤镜、回声消除、噪声抑制等,采集有麦克风阵列等,编解码有VP8、VP9、H.264、H.265等。
采集->前处理编码->传输->解码后处理->渲染
实时音视频开源项目思维导图
project
website
introduce
WebRTC
webrtc.org
WebRTC实现了基于网页的视频会议,标准是WHATWG 协议,目的是通过浏览器提供简单的javascript就可以达到实时通讯(Real-Time Communications (RTC))能力。WebRTC提供了视频会议的核心技术,包括音视频的采集、编解码、网络传输、显示等功能,并且还支持跨平台:windows,linux,mac,android。
x264
www.linuxfromscratch.org
H.264是ITU(International Telecommunication Union,国际通信联盟)和MPEG(Motion Picture Experts Group,运动图像专家组)联合制定的视频编码标准。而x264是一个开源的H.264/MPEG-4 AVC视频编码函数库,是最好的有损视频编码器之一。
FFmpeg
ffmpeg.org
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。FFmpeg提供了编码、解码、转换、封装等功能,以及剪裁、缩放、色域等后期处理。
ijkplayer
bilibili/ijkplayer
ijkplayer 是一个基于 ffplay 的轻量级 Android/iOS 视频播放器。实现了跨平台功能,API易于集成;编译配置可裁剪,方便控制安装包大小;支持硬件加速解码,更加省电;提供Android平台下应用弹幕集成的解决方案。
JSMpeg
jsmpeg.com
JSMpeg is a Video Player written in JavaScript. It consists of an MPEG-TS Demuxer, WebAssembly MPEG1 Video & MP2 Audio Decoders, WebGL & Canvas2D Renderers and WebAudio Sound Output. JSMpeg can load static files via Ajax and allows low latency streaming (~50ms) via WebSocktes.
Opus
opus.nlpl.eu
Opus是一个有损声音编码的格式,由Xiph.Org基金会开发,之后由IETF(互联网工程任务组)进行标准化,目标是希望用单一格式包含声音和语音,取代Speex和Vorbis,且适用于网络上低延迟的即时声音传输,标准格式定义于RFC 6716文件。Opus格式是一个开放格式,使用上没有任何专利或限制。
live555
www.live555.com
live555是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了标准流媒体传输,是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+ 、DV、JPEG视频和多种音频编码。
project
website
introduce
jitsi
jitsi/jitsi
Jitsi is an audio/video and chat communicator that supports protocols such as SIP, XMPP/Jabber, IRC and many other useful features.
JsSIP
jssip.net
JsSIP是一个简单易用的JavaScript库,它利用SIP和WebRTC的最新发展,在任何网站上提供全功能的SIP端点。通过JsSIP ,只要几行代码,任何网站都可以通过音频,视频等获得实时通信功能。
SRS
www.ossrs.net
SRS定位是运营级的互联网直播服务器集群,追求更好的概念完整性和最简单实现的代码。SRS提供了丰富的接入方案将RTMP流接入SRS,包括推送RTMP到SRS、推送RTSP/UDP/FLV到SRS、拉取流到SRS。SRS还支持将接入的RTMP流进行各种变换,譬如将RTMP流转码、流截图、转发给其他服务器、转封装成HTTP-FLV流、转封装成HLS、转封装成HDS、录制成FLV。SRS包含支大规模集群如CDN业务的关键特性,譬如RTMP多级集群、源站集群、VHOST虚拟服务器、无中断服务Reload、HTTP-FLV集群、Kafka对接。此外,SRS还提供丰富的应用接口,包括HTTP回调、安全策略Security、HTTP API接口、RTMP测速。
JRTPLIB
j0r1/JRTPLIB
jrtplib是一个基于C++、面向对象的RTP封装库, jrtplib支持定义于RFC3550中的RTP协议,它使得发送和接收RTP报文变得异常简单,用户不用担心SSRC冲突,也不用考虑如何传输RTCP数据,因为RTCP功能完全在内部实现。
OPAL
opalvoip
Open Phone Abstraction Library (OPAL) is a C++ multi-platform, multi-protocol library for Fax, Video & Voice over IP and other networks. Also included is the Portable Tool Library (PTLib) which is a C++ multi-platform abstraction library.
Kurento
www.kurento.org
Kurento 是一个WebRTC流媒体服务器以及一些客户端API,开发WWW及智能手机平台的高级视频应用就变得更加容易。可以利用Kurento开发的应用类型包括,视频会议,音视频广播,音视频录制、转码等。
Janus
janus.conf.meetecho.com
Janus 是由Meetecho设计和开发的开源、通用的基于SFU架构的WebRTC流媒体服务器,它支持在Linux的服务器或MacOS上的机器进行编译和安装。
project
website
introduce
callstats.io
callstats
Callstats.io致力于监控和管理WebRTC应用中的音频和视频通话性能。提供Javascript客户端库,可以监测浏览器终端性能,从而帮助服务供应商准确定位那些媒体质量较低的终端用户,并进行性能问题的诊断。该信息主要是用于产品经理和工程师来提高客户体验质量,主动解决潜在的瓶颈障碍。
Meetecho
meetecho/janus-gateway
Meetecho Janus是Meetecho公司的一款WebRTC(网页即时通信)服务器。
Agora
agora.io
声网Agora提供了一套简单而强大的SDK,开发者可以利用其中的资源在任何手机或电脑应用中加入高清语音和视频通讯功能。
project
website
introduce
soundtouch
soundtouch
SoundTouch是一个开源的音频处理库,主要实现包含变速、变调、变速同时变调等三个 功能模块,能够对媒体流实时操作,也能对音频文件操作。采用32位浮点或者16位定点,支持单声道或者双声道,采样率范围为8k~48k。
project
website
introduce
SeetaFace6
SeetaFace6Open
SeetaFace6是中科视拓最新开源的商业正式版本。包含人脸识别的基本部分,如人脸检测、关键点定位、人脸识别。同时增加了活体检测、质量评估、年龄性别估计。并且响应时事,开放了口罩检测以及戴口罩的人脸识别模型。
GPUImage2
GPUImage2
GPUImage是个功能十分强大、又十分易用的图像处理库。提供各种各样的图像处理滤镜,并且支持照相机和摄像机的实时滤镜。
open nsfw
open_nsfw
open nsfw是雅虎开源项目caffeonspark,使用深度学习训练得到caffe模型。nsfw翻译为不可在工作中看的图片。主要是针对黄图的,恐怖,血腥图片不能识别。
project
website
introduce
Speex
xiph.org
Speex是一套主要针对语音的开源免费,无专利保护的音频压缩格式。
FLAC
xiph.org
FLAC中文可解释为无损音频压缩编码。FLAC是一套著名的自由音频压缩编码,其特点是无损压缩。不同于其他有损压缩编码如MP3及AAC,它不会破坏任何原有的音频信息,所以可以还原音乐光盘音质。
Xvid
xvidmovies
Xvid是一个开放源代码的MPEG-4视频编解码器,它是基于OpenDivX而编写的。
Lagarith
lags.leetcode.net
Lagarith,是一种由Ben Greenwood所撰写的影片编解码器(video codec)。
Thor
wwww.thor.com
Thor是思科开源的视频编码解码器,Thor拥有适当复杂度的高压缩率视频编码解码器,使用众所周知的 motion-compensated 预测的混合视频编码方法和变换编码。
No.
title
地址
26
windows ffmpeg命令行环境搭建
百度网盘 提取码:i3f2
27
FFMPEG如何查询命令帮助文档
百度网盘 提取码:9mqk
28
ffmpeg音视频处理流程
百度网盘 提取码:azx3
29
ffmpeg命令分类查询
百度网盘 提取码:odhc
30
ffplay播放控制
百度网盘 提取码:e51s
31
ffplay命令选项(上)
百度网盘 提取码:n1zx
32
ffplay命令选项(下)
百度网盘 提取码:rtn0
33
ffplay命令播放媒体
百度网盘 提取码:bs9s
34
ffplay简单过滤器
百度网盘 提取码:r4rk
35
ffmpeg命令参数说明
百度网盘 提取码:5q18
36
ffmpeg命令提取音视频数据
百度网盘 提取码:v807
37
ffmpeg命令提取像素格式和PCM数据
百度网盘 提取码:az9x
38
ffmpeg命令转封装
百度网盘 提取码:s7ez
39
fmpeg命令裁剪和合并视频
百度网盘 提取码:6g0g
40
fmpeg命令图片与视频互转
百度网盘 提取码:a3p5
41
ffmpeg命令视频录制
百度网盘 提取码:em7b
42
ffmpeg命令直播(上)
百度网盘 提取码:ilxz
43
ffmpeg命令直播(下)
百度网盘 提取码:akyr
44
ffmpeg过滤器-裁剪
百度网盘 提取码:toii
45
ffmpeg过滤器-文字水印
百度网盘 提取码:unuu
46
ffmpeg过滤器-图片水印
百度网盘 提取码:mw4v
47
ffmpeg过滤器-画中画
百度网盘 提取码:c6fc
48
ffmpeg过滤器-多宫格
百度网盘 提取码:aioi
49
SRS流媒体服务器实战(上)
百度网盘 提取码:4134
50
SRS流媒体服务器实战(下)
百度网盘 提取码:g4be
51
音视频开发-ffplay.iikplayer、vlc的播放器设计实现
百度网盘 提取码:1img
52
音视频成长之路-进阶三部曲
百度网盘 提取码:4nw3
53
为什么直播领域也要搞WebRTC-srs4.0
百度网盘 提取码:m47a
54
腾讯课堂直播如何做到低延迟
百度网盘 提取码:jruh
55
rtmp2webrtc提出问题-灵魂拷问
百度网盘 提取码:pupp
No.
author
introduce
1
刘岐
FFmpeg官方代码维护者之一,十余年一线技术研发与技术管理经验,人称“大师兄”。现任职于OnVideo公司,担任CTO,公司联合创立人,负责在线音视频云编辑与创作平台的开发和建设。曾任职蓝汛、高升、金山云等公司,担任视频部门架构师及技术专家。
2
赵文杰
擅长音视频编解码和渲染技术,客户端技术专家,开源流媒体服务器SRS开发者之一,现任好未来网校事业部高级架构师一职,负责端开发。
3
廖庆富
主要从事音视频驱动,多媒体中间件,流媒体服务器的高级开发,主导开发过即时通讯+音视频通话的大型项目。曾就职于联发科,现任职于零声教育,资深音视频讲师。主讲WebRTC,ffmpeg,流媒体。
4
雷霄骅
两届CSDN博客之星、微软MVP。主要从事与广播电视有关的视音频技术的研究。包括视音频质量评价,视音频编解码,流媒体,媒资检索等。
5
栗伟
资深音视频技术专家,曾任职于中科院计算所、CC视频,任职期间利用WebRTC技术开发了直播、在线课堂、视频会议等商业产品,并发用户数达到500万。开源社区的积极参与者,在GitHub上开源了视频会议项目WiLearning,免费供中小企业使用。
6
杨成立
阿里云RTC服务器团队负责人。负责中国最大CDN蓝汛科技流媒体分发系统开发项目。主导研发转码、P2P、流媒体服务器, 开源项目SRS主要开发者之一。
No.
Title
link
24
Real Time Streaming Protocol (RTSP)
rfc2326.txt.pdf
25
Key Management Extensions for Session Description Protocol (SDP) and Real Time Streaming Protocol (RTSP)
rfc4567.txt.pdf
26
A Network Address Translator (NAT) Traversal Mechanism for Media Controlled by the Real-Time Streaming Protocol (RTSP)
rfc7825.txt.pdf
27
Real-Time Streaming Protocol Version 2.0
rfc7826.txt.pdf
28
SDP: Session Description Protocol
rfc8866.pdf
No.
Title
link
29
Protocol standard for a NetBIOS service on a TCP/UDP transport: Concepts and methods
rfc1001.pdf
30
Protocol standard for a NetBIOS service on a TCP/UDP transport: Detailed specifications
rfc1002.pdf
31
Transmission Control Protocol
rfc793.pdf
No.
Title
link
32
Protocol standard for a NetBIOS service on a TCP/UDP transport: Concepts and methods
rfc1001.pdf
33
Protocol standard for a NetBIOS service on a TCP/UDP transport: Detailed specifications
rfc1002.pdf
34
SNMPv2 Management Information Base for the User Datagram Protocol using SMIv2
rfc2013.pdf
35
TCP and UDP over IPv6 Jumbograms
rfc2147.pdf
36
Compressing IP/UDP/RTP Headers for Low-Speed Serial Links
rfc2508.pdf
37
STUN - Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs)
rfc3489.pdf
38
Mobile IP Traversal of Network Address Translation (NAT) Devices
rfc3519.pdf
39
The Lightweight User Datagram Protocol (UDP-Lite)
rfc3828.pdf
40
UDP Encapsulation of IPsec ESP Packets
rfc3948.pdf
41
RObust Header Compression (ROHC): Profiles for User Datagram Protocol (UDP) Lite
rfc4019.pdf
42
Management Information Base for the User Datagram Protocol (UDP)
rfc4113.pdf
43
User Datagram Protocol
rfc768.pdf
No.
Title
link
45
SDP: Session Description Protocol
rfc2327.pdf
46
The PINT Service Protocol: Extensions to SIP and SDP for IP Access to Telephone Call Services
rfc2848.pdf
47
Carrying Label Information in BGP-4
rfc3107.pdf
48
An Offer/Answer Model with Session Description Protocol (SDP)
rfc3264.pdf
49
Support for IPv6 in Session Description Protocol (SDP)
rfc3266.pdf
50
Grouping of Media Lines in the Session Description Protocol (SDP)
rfc3388.pdf
51
Session Description Protocol (SDP) Simple Capability Declaration
rfc3407.pdf
52
The Session Initiation Protocol (SIP) and Session Description Protocol (SDP) Static Dictionary for Signaling Compression (SigComp)
rfc3485.pdf
53
Mapping of Media Streams to Resource Reservation Flows
rfc3524.pdf
54
Session Description Protocol (SDP) Bandwidth Modifiers for RTP Control Protocol (RTCP) Bandwidth
rfc3556.pdf
55
RTP Control Protocol Extended Reports (RTCP XR)
rfc3611.pdf
56
A Transport Independent Bandwidth Modifier for the Session Description Protocol (SDP)
rfc3890.pdf
57
The Alternative Network Address Types (ANAT) Semantics for the Session Description Protocol (SDP) Grouping Framework
rfc4091.pdf
58
TCP-Based Media Transport in the Session Description Protocol (SDP)
rfc4145.pdf
59
RTP Payload Format for BroadVoice Speech Codecs
rfc4298.pdf
60
SDP: Session Description Protocol
rfc4566.pdf
61
Key Management Extensions for Session Description Protocol (SDP) and Real Time Streaming Protocol (RTSP)
rfc4567.txt.pdf
No.
Title
link
62
The PPP OSI Network Layer Control Protocol (OSINLCP)
rfc1242.txt.pdf
No.
Title
link
63
RTP: A Transport Protocol for Real-Time Applications
rfc1889.txt.pdf
64
Session Description Protocol (SDP) Bandwidth Modifiers for RTP Control Protocol (RTCP) Bandwidth
rfc3556.txt.pdf
65
Real Time Control Protocol (RTCP) attribute in Session Description Protocol (SDP)
rfc3605.txt.pdf
66
RTP Control Protocol Extended Reports (RTCP XR)
rfc3611.txt.pdf
67
Framing Real-time Transport Protocol (RTP) and RTP Control Protocol (RTCP) Packets over Connection-Oriented Transport
rfc4571.txt.pdf
68
Extended RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/AVPF)
rfc4585.txt.pdf
69
RTP Retransmission Payload Format
rfc4588.txt.pdf
70
Extended Secure RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/SAVPF)
rfc5124.txt.pdf
71
Support for Reduced-Size Real-Time Transport Control Protocol (RTCP): Opportunities and Consequences
rfc5506.txt.pdf
72
Post-Repair Loss RLE Report Block Type for RTP Control Protocol (RTCP) Extended Reports (XRs)
rfc5725.txt.pdf
73
RTP Control Protocol (RTCP) Extensions for Single-Source Multicast Sessions with Unicast Feedback
rfc5760.txt.pdf
74
Datagram Transport Layer Security (DTLS) Extension to Establish Keys for the Secure Real-time Transport Protocol (SRTP)
rfc5764.txt.pdf
75
Session Initiation Protocol Event Package for Voice Quality Reporting
rfc6035.txt.pdf
76
Rapid Synchronisation of RTP Flows
rfc6051.txt.pdf
77
RTP Control Protocol (RTCP) Port for Source-Specific Multicast (SSM) Sessions
rfc6128.txt.pdf
78
Guidelines for Choosing RTP Control Protocol (RTCP) Canonical Names (CNAMEs)
rfc6222.txt.pdf
79
Application Mechanism for Keeping Alive the NAT Mappings Associated with RTP / RTP Control Protocol (RTCP) Flows
rfc6263.txt.pdf
80
Multicast Acquisition Report Block Type for RTP Control Protocol (RTCP) Extended Reports (XRs)
rfc6332.txt.pdf
81
RTP Control Protocol (RTCP) Extension for a Third-Party Loss Report
rfc6642.txt.pdf
实现了多人语音/多人视频项目, 房间号Id一致,用户Id不一致 ,即可实现多人语音/多人视频。
ijkplayer 是一个基于 ffplay 的轻量级 Android/iOS 视频播放器。实现了跨平台功能,API易于集成;编译配置可裁剪,方便控制安装包大小;支持硬件加速解码,更加省电;提供Android平台下应用弹幕集成的解决方案。
仿网易云音乐 安卓版,netease android,音乐播放器 在线 下载。
Timber是一个设计漂亮,功能完善,Material Design风格的音乐播放器。
WebRTC初学者的启动演示,包括一个基于Socket.IO的简单信号服务器,以及一些客户端演示Web/Android/IOS/Windows平台。
WebRTC入门项目部署步骤
使用WebRTC getstats APL返回对等连接状态的微小JavaScript库,如带宽使用、数据包丢失、本地)远程IP地址和端口、连接类型等。
跨平台的视频播放器,可在Linux和其他类Unix系统、Windows及Mac OS X系统使用。
IOS平台基于FFMPEG播放器
Android/IOS平台上的多媒体框架,带有硬件加速解码和渲染.
YUV转RGB.
将TS流解码为PES或ES.(下载这个源码需要FQ)
跨平台的视频播放器。现在也有安卓版本。也可以作为流媒体服务器。
免费的编解码软件,基于windows平台。原因就是directshow就是微软开发的,只能用于windows平台。
这是一个专注音视频播放器的库,目前还在不断优化中。
视频下载SDK功能。
这是一个专注音视频边下边播的库。
为了让我们的repo内容更加的丰富,更加的专业。欢迎大家贡献patch,希望大家在issue里面出谋划策,我们期待你的加入。
关注微信公众号【后台服务架构师】——【联系我们】,获取本repo最全PDF学习文档!