- 博客(16)
- 资源 (16)
- 收藏
- 关注
原创 owt-server基本架构
第一块就是跟客户端进行信令交互的部件,即图中的WebRTC Portal和SIP Portal。他们跟WebRTC客户端和SIP终端进行信令交互。值得注意的一点是WebRTC标准对信令交互的格式和通道没有规定,采用的是一种承载在socket.io通道中的私有协议。第二块是跟客户端进行音视频媒体交互的部件,即图中的WebRTC Agent、Streaming Agent、SIP Agent和Recording Agent。其中WebRTC Agent负责跟客户端之间建立PeerConnection连接..
2020-08-11 19:28:45
1739
原创 OWT-SERVER
最近做mcu相关业务,原项目利用owt-server开发。management_api1个或者多个实例,owt服务的入口,保存所有房间的配置,产生和认证tokens,部署多个实例可以实现负载均衡,用户接入可见cluster-manager1个或者多个实例,控制集群中所有的workers,检查保活,按照配置去调度workers,如果设定一个是master,则提供服务,其他的作为备用,用户不可见webrtc_agent1个或者多个,负责webrtc的数据交互,接收客户端的发送和发送媒体数
2020-08-05 09:51:13
1137
原创 webrtc 视频jitterbuffer
M74版本PacketBuffer:帧完整性,保证帧中包序号连续;RtpFrameReferenceFinder:主要是查找帧的参考帧;FrameBuffer:负责帧的连续性和可解码性,
2020-07-30 19:01:06
342
原创 webrtc windows 编译
一、webrtc官网https://webrtc.org/新版网站,好多东西找不到https://webrtc.github.io/webrtc-org/ 旧版网站,说明比较详细,建议看这个二、编译步骤 webrtcnative-code开发说明参考:https://webrtc.github.io/webrtc-org/native-code/development/1、安装依赖软件 参考https://webrtc.github.io/webrtc-org/nat...
2020-07-11 11:25:31
393
原创 RTMP协议的基本过程
通过 wireshark 抓包了解直播流媒体 RTMP 协议基本过程先给出RTMP协议的原文件www.adobe.com/devnet/rtmp…需要用到的时候可以参考一下~。做推流直播接触最多的并且最主要是RTMP协议RTMP协议是应用层协议,是要靠底层可靠的传输层(TCP) 协议(通常是TCP)来保证信息传输的可靠性的。在基于传输层协议的链接建立完成后,RTMP协议也要客...
2020-03-29 22:04:13
330
原创 SDP介绍
SDPICE信息的描述格式通常采用标准的SDP,其全称为Session Description Protocol,即会话描述协议. SDP只是一种信息格式的描述标准,不属于传输协议,但是可以被其他传输协议用来交换必要的信息,如SIP和RTSP等.SDP信息一个SDP会话描述包含如下部分:会话名称和会话目的 会话的激活时间 构成会话的媒体(media) 为了接收该媒体所需要的信...
2020-03-26 13:23:11
929
原创 ice相关知识
ICE全称Interactive Connectivity Establishment:交互式连通建立方式。STUN(RFC5389)协议RFC5389是RFC3489的升级版1. 支持UDP/TCP/TLS协议2. 支持安全认证ICE利用STUN(RFC5389) Binding Request和Response,来获取公网映射地址和进行连通性检查。同时扩展了STUN的相关属...
2020-03-26 13:12:22
736
原创 音频滤镜参数介绍
音频滤镜当你配置编译FFmpeg时,先采用--disable-filters可以禁止所有的滤镜,然后显式配置想要支持的滤镜。下面是当前可用的音频滤镜adelay延迟一个或者多个音频通道它接受如下选项:delays参数是以|分隔的列表字符串,分别用于指明对应各个通道延迟的微秒(milliseconds)数。应提供至少一个大于0的延迟。未
2016-06-03 15:15:14
9983
翻译 视频滤镜参数
在配置编译FFmpeg时可以通过--disable-filters来禁止所有滤镜的编译。也可以配置编译脚本来输出所有包含进编译的滤镜信息。下面是当前可用的视频滤镜介绍。alphaextract把输入视频作为灰度视频来提取透明通道,它通常和alphamerge滤镜联用。alphamerge通过添加或者替换透明通道,让主要视频与另外一路视频混合。这里主要是使用alpha
2016-06-03 15:06:36
16205
原创 ffmpeg视频缩放算法列举
视频转换支持以下命名的选项:“ fast_bilinear ”选择快速双线性缩放算法。“bilinear”选择双线性缩放算法。“bicubic”选择双三次缩放算法。“experimental”选择实验缩放算法。'neighbor'选择近邻重新缩放算法。'area'选择平均面积重新缩放算法。“ bicublin”选择亮度分量双三次缩放算法,双线性对色度分量。“ga
2016-05-28 09:11:55
4327
原创 ffmpeg常见的命令行参数
基本选项:-formats输出所有可用格式-f fmt指定格式(音频或视频格式)-i filename指定输入文件名,在linux下当然也能指定:0.0(屏幕录制)或摄像头-y覆盖已有文件-t duration记录时长为t-fs limit_size设置文件大小上限-ss time_off
2016-05-27 20:08:24
1743
原创 两大h264视频分析工具
1、h264解码器(h264Visa)是一款非常强大的H.264视频码流的解析软件,可以看到解码后视频的像素值,运动矢量,宏块等非常多的信息(也可以打开原始的YUV视频,并看到像素值,但必须先用该软件打开某一H.264视频码流)2、Elecard .Streameye.Tools,一个强大的视频序列或码流分析软件,YUV分析,264文件分析软件,H.264视频编解码学习必备的东西,Elecar
2016-05-26 21:17:21
12217
原创 ffmpeg输入rtmp时存在内存泄露
读取flv数据时static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)中存在泄露。 if ((flags & FLV_VIDEO_FRAMETYPE_MASK) == FLV_FRAME_KEY || stream_type == FLV_STREAM_TYPE_AUDIO) av_add_index
2016-05-26 14:10:32
1295
1
原创 OBS外放声音重采样,用sdl播放
obs读取视频文件添加声音到外放,搞了好几天,不是有杂音就是声音卡顿,或者不同步,现在终于搞好了,把重采样部分代码贴出来int ff_audio_resample(struct ff_decoder *decoder, AVFrame *frame){ int dst_linesize = 0;int wanted_nd_samples=0;int sample_si
2016-05-26 13:42:39
1757
原创 h264解析
概念场和帧 : 视频的一场或一帧可用来产生一个编码图像。在电视中,为减少大面积闪烁现象,把一帧分成两个隔行的场。片: 每个图象中,若干宏块被排列成片的形式。片分为I片、B片、P片和其他一些片。 I片只包含I宏块,P片可包含P和I宏块,而B片可包含B和I宏块。 I
2016-05-26 13:20:57
721
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人