自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (5)
  • 收藏
  • 关注

原创 mediasoup信令

有两个connectWebtransport,这里只列出一个。

2023-07-05 07:20:02 318

原创 cpp_media_server开始支持metaRTC

一. cpp_media_server开始支持metaRTCMetaRTC是一个为嵌入式/物联网打造的webRTC库,为第三代互联网 元宇宙提供webRTC能力。MetaRTC实现了webrtc协议,支持webrtc/srt/rtmp,有纯C和C++两个版本。cpp_media_server是基于c++11开发的webrtc会议服务sfu,网络部分基于Boost.Asio。cpp_media_server开始支持MetaRTC客户端,MetaRTC提供window/android/linux的nat

2022-05-04 21:04:39 753 2

原创 webrtc的WHIP实现

WHIP接口1. 什么是whip全称: WebRTC-HTTP ingestion protocol (WHIP).rfc地址: rfc-draft-murillo-whip-00简单说,就是通过HTTP接口能导入webrtc媒体流。2. webrtc publish/unpublish2.1 webrtc publishwebrtc推流接口方法: http posturi: http://hostname:hostport/publish/roomId/uidhttp post bod

2022-05-03 11:36:49 1679

原创 RTP纠错机制精选翻译

9. 纠错机制9.1 前向纠错(FEC)  前向纠错(FEC)算法能让二进制流在传输过程中保持健壮性。传送大量二进制流在松散的媒介或网络下。额外的信息会加在二进制流中,能让接受者正确的重构在传输中丢失的数据。前向就戳算法主要应用在广域网,如手机网络、或包交换网络、或存储系统(如压缩盘、电脑硬盘或内存)。因为因特网是一个松散的媒介,因为媒体应用的信息对丢失非常敏感,FEC方案就被提议和编程R...

2020-04-19 21:53:52 658

原创 RTCP关键协议翻译

原版英文书链接(RTP:Audio and video for the internet.pdf)RTP协议比较简单,因此从第5章节RTCP开始。5.1 RTCP的组件  一个RTCP的应用有3个部分: 报文结构、时间规则,和参与者数据库。有几种类型的RTCP报文。5种标准的报文类型会在5.3 RTCP报文格式中描述,并随后附有报文集成放入复合报文中被发送。验证RTCP报文正确性的算法会在...

2020-04-19 21:48:19 1328

原创 SRT协议翻译

SRT协议srt是基于UDT传输协议,是用户级别的协议,其保留UDT的核心思想和机制,但是做了多项改进,包括控制报文的修改,针对直播流改进了流控,改进了拥塞算法,报文加密算法。本文介绍srt协议本身。更多的相关实现在:https://github.com/Haivision/srt简介srt传输协议为不可靠网络提供安全,可靠的数据传输,如因特网。任何数据都可以在srt协议上传输,特别是对音视...

2020-04-19 21:40:07 2221

原创 Quic_Wire_layout_specification_翻译

英文原文链接:QUIC wire specificationQUIC概述  本节我们主要介绍QUIC的关键功能和优点。QUIC功能上等于TCP+TLS+HTTP/2,但是基于UDP传输的。QUIC优于TCP+TLS+HTTP/2的关键点有:connect连接建立的低延时灵活的拥塞控制无头部阻塞的多路复用(TCP是有头部阻塞的)对头部和负载进行认证和加密流和连接的流控连接迁移c...

2020-04-19 21:05:37 326

原创 rtmp_specification_1.0翻译

英文原文: rtmp_specification_1.0.pdf5 RTMP Chunk Stream5.1 消息格式(Message Format)5.2 握手协议(Handshake)5.2.1 握手顺序5.2.2 C0和S0格式5.2.3 C1和S1格式5.2.4 C2和S2格式5.2.5. Handshake图解5.3 Chunking5.3.1 Chun...

2020-04-19 20:39:01 524 1

原创 SRT Encoder基于srt自适应码率的编码器

SRT Encodersrt encoder是基于srt发送的测试工具。基于srt协议中的rtt,maxBw,inflight等信息预测低延时的出口带宽,动态的调整编码bitrate,从而实现基于网络出口带宽的svc编码。1. 原理基于bbr基本拥塞控制算法,通过一个周期内(1~2seconds)的minRTT, maxBw, 和当前的inflight,预测出编码bitrate的状态机(保...

2020-02-09 17:06:29 4498 1

原创 SRT直播地址格式简介

SRT直播地址格式简介介绍srt在live模式下如何构造推/拉流地址。rtmp常规地址格式rtmp地址格式简介常规rtmp格式(无vhost) rtmp://hostip:port/appname/streamname 例子: rtmp://10.111.1.100:1935/live/livestream 上面例子中appname=“live”, streamname=“liv...

2020-02-06 21:04:37 7085

原创 SRS开始支持SRT

为什么我要开始着手SRT为什么我觉得SRT有趣?我们知道RTMP是公共互联网上直播视频的事实标准;但RTMP已经存在了很长一段时间,其标准在2012年最后一次更新过后就被放弃了。新的Codec标准诸如HEVC或AV1一般都没有RTMP标准支持。退一步来说,即使有人在RTMP中hack了这些Codec的支持,在移动网络上RTMP仍然工作的不大好。SRT作为RTMP潜在替换技术的一种,最近正获得不...

2020-01-25 22:49:36 4716 6

原创 rtmp over quic直播服务--mediago

mediagomediago的github地址: https://github.com/runner365/mediago_bin1. 什么是mediagoquic是基于udp的下一代高质量传输协议。mediago用quic协议来传输rtmp直播流。mediago在实现普通rtmp over tcp的基础上,同时实现rtmp over quic的服务,提供弱网环境下/高RTT等网络环境下的...

2019-05-30 09:34:08 4551

原创 ffmpeg重采样后如何获取sample_size大小的数据

ffmpeg重采样后如何获取sample_size大小的数据在ffmpeg用avfilter进行重采样后,可能得不到编码器设定好的sample_size大小的数据,这个时候需要重新组合采样数据,让sample data的大小等于_acodec_ctx_p->frame_size,才能拿去编码。这里采用ffmpeg api中av_audio_fifo的实用方法来实现1. 将sample ...

2019-05-24 16:47:18 1695

原创 ffmpeg转码过程中的dts转换过程

ffmpeg转码过程中的dts转换过程用ffmpeg api开发转码,在过程:拉流–>avfilter分辨率缩放,重采样–>编码–>写出,avpacket.dts和frame.dts在过程中需要根据不同的timebase进行转换。一,拉流在 av_read_frame后得到AVPacket packetAVPacket packet;int ret_i = av_r...

2019-05-24 10:40:51 3563

原创 RTCP(二): SR--Sender Reports 接收者报告

一. 前言发送rtp报文端向接受者发送SR报文,主要目的是方便接收方做好音视频同步工作。二. RTCP SR格式发送者报告SR,其RTCP类型payload type是200。主要信息共24bytes,也就是6 words,如图2.1                                                  图2.12.1 NTP timestampNTP timestam...

2018-02-21 22:47:19 6688

原创 RTCP(一): RR--Receiver Reports 接收者报告

RTCP RR的格式接受者报告的RTCP类型是201,如图1.1所示。 图1.1 reporter ssrcrr报告发送者的ssrc,也就是rtp报文接受者自己的ssrc.reportee ssrcrr报告接受者的ssrc,也就是rtp报文发送者的ssrc.cumulative number of packet lost累积报文丢失总数,该字段是一个24...

2018-02-19 22:10:41 12752 2

原创 ffmpeg写rtmp推流中的坑:sps/pps和aac header的首包发送

1、需要在编码中使能CODEC_FLAG_GLOBAL_HEADERAVCodecContext的flags |= CODEC_FLAG_GLOBAL_HEADER设置这个标志位后,才能在AVCodecContext中的extradata和extradata_size得到对应的音视频头信息。视频: AVCDecoderConfigurationRecord+ sps + pps

2018-01-26 18:30:26 8810 2

原创 常用音视频头的写法

一、如何判断视频I_FRAMEbool IsH264IFrame(unsigned char data) {    const unsigned char SPS_TYPE = 7;    const unsigned char PPS_TYPE = 8;    const unsigned char IDR_TYPE = 5;    unsigned char nal

2018-01-26 18:13:05 598

原创 ffmpeg常用编码参数含x264

ffmpeg常用编码参数

2017-12-13 13:04:57 2161

原创 rtp的视频和音频格式初步分析(golang解析)

rtp视频、音频格式解析一、rtp承载h264解析rtp承载h264的解析当前实现了两种方式:StapA和FuA NALU头由一个字节组成,它的语法如下: * F: 1个比特. forbidden_zero_bit. 在 H.264 规范中规定了这一位必须为 0. * NRI: 2个比特. nal_ref_idc. 取00~11,似乎指示这个NALU的重

2017-09-23 19:56:21 10866

原创 安装grpc 简述

gRPC是由Google主导开发的RPC框架,使用HTTP/2协议并用ProtoBuf作为序列化工具。其客户端提供Objective-C、Java接口,服务器侧则有Java、Golang、C++等接口,从而为移动端(iOS/Androi)到服务器端通讯提供了一种解决方案。我主要用于后端服务之间互相的调用。

2017-08-30 18:52:36 3607

原创 学习nginx-rtmp:replay push代码流程

学习nginx-rtmp:replay push代码流程:nginx的单线程异步调用方式,代码难学,本文描述nginx-rtmp模块中relay push的代码流程。

2017-05-10 18:59:03 2224

原创 [ffmpeg]avfilter的那些坑:如何用drawtext在linux系统中开发实现中文字幕

最近在做ffmpeg的avfilter开发,从编译到,编码和运行,遇到了好多坑,这里总结一下!

2016-10-08 13:32:34 17992 1

原创 python如何调用C, 如何注册成C的回调函数(python后台程序常用方法)

其实是python后台程序常用方法:C开发完成底层的功能,python直接把C当做python模块进行调用。

2016-09-27 11:24:13 11184 3

原创 RGB数据写bmp图片文件遇到的这些坑

RGB数据写bmp图片文件遇到的这些坑

2016-09-12 19:03:33 6782 4

原创 ffmpeg编译常规大全

ffmpeg常规编译,外带x264, lamemp3, aac, rtmp等

2016-08-17 16:12:45 643

原创 通过RTMP play分析FLV格式详解

通过RTMP play分析FLV格式详解最近做了一个rtmp中转服务程序,通过实践,熟悉rtmp play和push中各类格式,这里总结一下。

2016-08-12 11:07:51 1290

原创 安卓直播开源: RTMP 推流SDK

了android直播推流SDK,在github上开源出来。1,支持市面上绝大部分的rtmp服务器nginx-rtmp,SRS,RED5等2,视频用软编,兼容性好市面上的一些android rtmp推流sdk用的是android中mediacodec来进行,但是有两个缺点:1,mediacodec这个类在android4.1以后才支持,之前的版本就没法用;2,mediacodec这个类是硬件编码,需要手机厂家支持,很多厂家支持的情况都不一样,手机的失败是个大的问题。这里我采用软编,

2016-08-11 08:57:43 14793 7

原创 直播时代--IOS直播客户端SDK,美艳直播【开源】

当前视频直播非常火爆,手机端的视频直播也非常火爆,PGC、UGC的视频直播门槛都降低了很多。本文介绍一个:IOS 客户端直播的SDK,代码完全开源。直播时代:让IOS普通开发者一天内做出一个RTMP直播客户端,并且带有美艳直播功能。(文章最下面有github源码地址)

2016-03-04 11:59:09 1732

新视频直播传输协议SRT1.0.pdf

探讨“新一代直播传输协议SRT在流媒体中的应用” 主要内容: 1. 为什么选择SRT 2. SRT协议原理分析 3. SRT在SRS4.0中的方案应用 4. SRT与QUIC特点对比分析

2020-02-27

Gstreamer教程

gstreamer是视频、音频流程化编解码的开源库

2017-04-28

ISO-13818-1-2835389_1302146020

apple支持的hls直播流mpegts格式协议文档

2017-01-17

ICE分布式程序设计(中文版)

ICE 远程调用 分布式,ICE很全的文档。

2014-03-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除