Android 音视频流媒体相关知识导航 原创

Android 音视频流媒体相关知识导航

本文首发地址 https://blog.csdn.net/CSqingchen/article/details/106717995
最新更新地址 https://gitee.com/chenjim/chenjimblog

相关博客专栏


RTP RTCP RTSP SRS SRT 等的含义

  • RTP (Real-time Transport Protocol,实时传输协议
    RTP 协议分为两种子协议,分别是 Real-Time Transfer Data Protocol 和 Real-Time Transport Control Protocol。前者顾名思义,是用来传输实时数据的,即RT(D)P;后者则是我们常说的 RTCP , 实时传输控制协议,可以提供实时传输过程中的统计信息(如网络延迟、丢包率等),WebRTC 正是根据这些信息处理丢包。
    RTP与RTCP协议详细介绍:
    https://webrtc.mthli.com/lost/rtp-introduction/
    https://blog.51cto.com/zhangjunhd/25481
  • RTSP (Real-Time Streaming Protocol) 实时流协议 多用与IPCamera
  • webrtc (Web Real-Time Communication) 基于Web的音视频协议,用到SRTP和SRTCP
  • SRTP (Secure Real-time Transport Protocol) 安全实时传输协议,通过 IP 网络交付音频和视频等实时数据的标准安全格式。
  • SRTCP (Secure Real-time Control Transport Protocol) 安全实时控制传输协议,通过 SRTP 流交付发送和接收方统计及控制信息的安全控制协议。
  • SRS (Simple Realtime Server)
  • SRT (Secure Reliable Transport)

H264编码参数的设置

Video Encoding Settings for H.264 Excellence
http://www.lighterra.com/papers/videoencodingh264/

直播视频分辨率码率参考设置
https://blog.csdn.net/CSqingchen/article/details/106492496


Zookeeper相关

https://my.oschina.net/u/3796575/blog/1845035

  • PERSISTENT-持久化目录节点,客户端与zookeeper断开连接后,该节点依旧存在
  • PERSISTENT_SEQUENTIAL-持久化顺序编号目录节点,客户端与zookeeper断开连接后,该节点依旧存在,只是Zookeeper给该节点名称进行顺序编号
  • EPHEMERAL-临时目录节点,客户端与zookeeper断开连接后,该节点被删除
  • EPHEMERAL_SEQUENTIAL-临时顺序编号目录节点,客户端与zookeeper断开连接后,该节点被删除,只是Zookeeper给该节点名称进行顺序编号

ffmpeg 相关


SRS(Simple RTMP Server)

Github 地址 https://github.com/ossrs/srs


SRT 相关

srs 支持 srt 流 https://github.com/ossrs/srs/issues/1147

Larix SDK 支持 SRT 推流,Android SDK of Larix Broadcaster costs 300 USD per month

七牛 Android 推流SDKPLDroidMediaStreaming , 3.0 SDK 支持SRT,需要授权

OBS windows 客户端 支持推流 SRT 协议
https://github.com/obsproject/obs-studio

阿里云 推流SDK 支持rtmp、自有 低时延直播(RTS)
https://help.aliyun.com/document_detail/267433.html

SRT Encoder— 自定义的ffmpeg实现srt自适应码率编码器
https://github.com/runner365/srt_encoder/blob/master/README-Cn.md


直播连麦方案设计–混流设计

https://github.com/xialixin/srs_code_note/blob/master/doc/live_talk.md
srs 连麦
https://github.com/ossrs/srs/wiki/v4_CN_WebRTC#room-to-live

FFmpeg混流:将两个视频放在一个画布并以rtmp流输出
https://blog.csdn.net/to10086/article/details/107446445

FFdynamic 封装了FFmpeg的底层音视频处理,提供一个将音视频不同组件进行组合的框架,以及在程序运行时可以动态的改变各组件状态的模块。
https://github.com/Xingtao/FFdynamic


移动端推流/拉流RTMP


音视频相关方案

这里只列出我了解到的部分,无任何商业合作。


NDK OpenGL ES 3.0 开发

Android OpenGLES 3.0 开发系统性学习教程
https://github.com/githubhaohao/NDK_OpenGLES_3_0

Android FFmpeg 音视频开发系列连载
https://github.com/githubhaohao/LearnFFmpeg

使用 OpenGL ES 3.0 实现 30 种相机滤镜和特效,支持相机预览和拍照,左右滑动切换滤镜
https://github.com/githubhaohao/OpenGLCamera2



相关文章

posted @   清霜辰  阅读(0)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 【.NET】调用本地 Deepseek 模型
点击右上角即可分享
微信分享提示