- 博客(477)
- 资源 (20)
- 收藏
- 关注
转载 那些年在 tcp_tw_recycle,tcp_tw_reuse犯下的错
而这里第三次的时间戳,小于第二次的,在服务器端看来,是不合法的,所以丢弃了。主动连接方(客户端)会占用本地端口,TIME_WAIT状态的四元组会占用本地端口过多,导致本地端口不足,TCP连接不能成功建立,可以通过调整参数来增加本地端口的选择范围,但这样效果有限,因为 TIME_WAIT 需要等待 2MSL 时长,在这个时长内,最多也就能使用 ip_local_port_range 定义的端口,其实这些是远远不够的。它是数据包在网络中的最大生存时间,这其实是相当于至少允许报文丢失一次的时间;
2023-06-27 11:45:58 358
转载 TCP短链接调优
net.ipv4.tcp_tw_reuse 这个参数启用,必须要应用程序做配置,用户态程序必须手动设置了socket是so_reuseaddr,否则无效果。接着查看了TCP参数,发现net.ipv4.tcp_tw_timeout 参数,凭直觉这个应该是TIME_WAIT过期时间,改成20,效果明显,解决问题。net.ipv4.tcp_tw_recycle 这个参数主要底层运算还是需要根据TIME_WAIT过期时间,这个不调整,启用这个参数也没有效果。
2023-06-27 10:23:59 257
原创 DASH、HLS和MP4格式有什么播放体验区别?
整体占用小,播放一个切片只下载一个切片内容;对于低码率的视频场景,因封装代价高导致流量占用相对较高。视频点播支持视频转码的输出格式主要有DASH、HLS和MP4,这三种的播放体验如。更新时间:2022-06-20 GMT+08:00。
2022-10-12 21:22:05 1361
转载 【无标题】
ffmpeg在后台运行时挂起yoosha18pythonffmpegcentos如果我按如下方式运行ffmpeg:ffmpeg -i H264-media-4.264 4.avi它工作正常(即4.avi创建好).但是,如果我尝试在后台运行它:ffmpeg -i H264-media-4.264 4.avi &它挂了!(和4.avi从未创造过)任何想法?注意:问题是在尝试将其作为子进程运行时在python中隔离类似的问题,并且它也被挂起:ff.py包括...
2022-05-17 01:24:18 104
原创 正向代理与反向代理
正向代理:1、正向代理是由客户端设立的。2、客户端了解代理服务器和目标服务器都是谁。3、作用是可以实现突破访问权限,提高访问速度,对目标服务器隐藏客户端的ip地址。反向代理:1、反向代理服务器是配置在服务端的。2、客户端不知道具体访问的是哪台服务器。3、可以实现负载均衡的功能,并隐藏服务器真实ip地址。...
2022-04-21 22:13:57 242
原创 linphone注册kamailio 服务器
linphone注册得时候,好像不能自己鉴权。需要把kamailio.cfg配置文件里面得#!define WITH_AUTH这一行删除。
2022-03-12 12:27:25 488
原创 log 打印日志
#ifdef _MSC_VER#include <float.h>#define isinf(d) (!_finite(d))@@ -565,6 +567,16 @@ int re_vfprintf(FILE *stream, const char *fmt, va_list ap) struct pl pl; size_t n;+ struct timeval tv;+ gettimeofday(&tv, NULL);+ ...
2022-03-09 19:26:00 311
原创 chrome浏览器虚拟摄像头
"C:\ProgramFiles\Google\Chrome\Application\chrome.exe"--use-fake-device-for-media-stream--disable-web-security--user-data-dir=D:chrome
2022-02-25 14:23:39 5503 1
转载 Git配置RSA KEY和关联SSH
Git配置RSA KEY和关联SSHiLynn关注2017.04.07 18:14:44字数 230阅读 1,235场景:从sourceTree改为使用vim进行git操作,每次pull和push,总是要输入账号和密码。怎么解决这个问题呢?步骤:在用户目录下,生成rsa key:ssh-keygen -t rsa [email protected],输入名字id_rsa 运行cd ~/.ssh和ls,看到里面有两个文件id_rsa和id_rsa.pub 运行ssh-.
2022-01-05 13:26:18 4132
转载 【无标题】IjkPlayer播放器秒开优化以及常用Option设置
IjkPlayer播放器秒开优化以及常用Option设置GexYY关注62018.04.19 13:28:25字数 592阅读 35,015ijkplayer和ffplay在打开rtmp串流视频时,大多数都会遇到5~10秒的延迟,在ffplay播放时,如果加上-fflags nobuffer可以缩短播放的rtmp视频延迟在1s内,而在IjkMediaPlayer中加入mediaPlayer.setOption(1, "analyzemaxduration", 100L); medi
2021-12-20 00:17:19 1477
转载 【无标题】Nvidia CUDA GPU 版本查看方法
最简单的 FFMPEG 使用 Nvidia CUDA GPU 加速的方法 - 博麗靈夢 - 博客园
2021-12-16 23:29:22 626
转载 ffmpeg--硬件加速
ffmpeg--硬件加速茄子船长 2018-07-25 16:24:11 3545 已收藏 1分类专栏: ffmpeg--ffmpeg.exe使用版权ffmpeg--ffmpeg.exe使用专栏收录该内容13 篇文章1 订阅订阅专栏英伟达一些参数 { "hwaccel", OPT_VIDEO | OPT_STRING | HAS_ARG | OPT_EXPERT | OPT_SPEC | OPT_INPU...
2021-12-16 22:42:15 454
原创 ZLMediakit 里面运行MediaServer就可以
推流地址 rtmp://localhost/live/my播放地址:rtmp://localhost/live/myhttp://localhost/live/my.flvhttp://localhost/live/my/hls.m3u8rtsp://localhost/live/my
2021-11-29 09:48:59 1677
转载 SIP 中的Dialog,call,session 和 transaction
SIP 中的Dialog,call,session 和 transaction正在上传…重新上传取消O_禾火_O关注0.182018.05.07 09:07:20字数 2,099阅读 4,076一、基本概念1、Messages(消息)消息是在服务器和客户端之间交换的独立文本, 有两种类型的消息,分别是请求(Requests)和响应(Responses)。两种类型的消息都由一个起始行、一个或多个头字段、一个标识头字段结束的空行、一个可选的消息体组成。2、Transact.
2021-11-18 12:33:22 865
转载 SIP tag 和 Call-ID 的区别
内容简介:SIP tag 和 Call-ID 的区别本文转载自:SIP tag 和 Call-ID 的区别 - 吴祖洋的技术博客,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有。SIP 的一次通话,可以通过 From, To, Call-ID 三元组来区分。但是,为什么 From 和 To 不用固定的地址,而要在地址后面加上tag=随机数呢?tag 的目的是为了解决自己给自己打电话的问题。如果你自己给自己打电话,那么你应该有两个 Session,但是,如果 From 和 T..
2021-11-17 20:55:14 2829
转载 在Windows下使用ffmpeg和AMD GPU进行硬编解码的方法
在Windows下使用ffmpeg和AMD GPU进行硬编解码的方法185264646关注2020.10.03 10:12:39字数 305阅读 4,119前言因为某些原因需要在Windows上进行大量的视频合并操作,最终选择了ffmpeg进行。ffmpeg的二进制是在官网上下载的。初步尝试最开始直接使用默认的编解码器:ffmpeg -i xx -i xx xx,结果发现ffmpeg根本就不调用GPU,纯用CPU进行软解,导致速度慢的出奇。因此想办法调用GPU进行硬解调用硬解码器
2021-11-16 22:15:12 5107
原创 av_interleaved_write_frame av_write_frame区别
6. 由于切片这块我们借助了FFMPEG,大概思路就是收到一个GOP时完成一个TS切片,切完后立即通知上传模块的线程进行读取文件上传对象存储。既然读的模块没有上传完整,大概想原因可能在读取文件时,实际切片还没完全写到磁盘的文件时,收到通知后发现有文件就开始上传了。后来也验证了猜想的正确,因为毕竟丢帧都丢在TS文件的末尾几帧数据上,那什么原因导致写磁盘的过程滞后读文件的线程呢,毕竟这里是同步操作的。再后来发现切片写文件我们用的FFmpeg接口是av_interleaved_write_frame 而不是av_
2021-11-15 18:16:31 2268
转载 音视频解封装:MP4核心Box详解及H264&AAC打包方案
音视频解封装:MP4核心Box详解及H264&AAC打包方案2020-11-12阅读4380问题背景:上一篇文章《音视频封装:MP4结构概述和分析工具》让大家看了下MP4的主要结构和推荐了一些分析工具,如果你对MP4没有任何了解,还是先看上文,了解MP4的基本结构,其中还有许多工具需要下载和使用。这篇文章借助一个实例分析下核心Box的语法结构和字段含义,其次总结下H264码流的是如何打包到MP4中的,这篇文章也是下篇文章计算一些音视频信息,实现音视频操作和对MP4码流处理的基础。学.
2021-11-14 16:07:03 1613
转载 WebRTC 系列之视频辅流
WebRTC 系列之视频辅流作者:网易云信资深客户端开发工程师 陶金亮近几年,实时音视频领域越来越热,业界很多音视频引擎都是基于 WebRTC 进行实现的。本文主要介绍 WebRTC 在视频辅流上的需求背景以及相关技术实现。WebRTC 中的 SDP 支持两种方案: PlanB 方案 和 Unified Plan 方案。早期我们使用多PeerConnection的 Plan B 方案中只支持一条视频流发送,这条视频流,我们称之为”主流”。目前我们使用单 PeerConnection 的 Uni.
2021-07-18 23:43:33 376
转载 基于webRTC 的p2p 直播架构
基于webRTC 的p2p 直播架构Created: 2018-09-27 Updated: 2018-10-06在im-live-p2p提到了p2p 架构的两大缺点:节点层级多: 导致延时大 节点退出: 导致不稳定事实上,CDN 分级架构也存在这样的问题,只是通过大宽带、主干网、节点自适应弱化了这些问题。本文将在基于webRTC 的p2p 方案中探讨如何弱化这两个问题。(Note: 并非彻底解决这个问题)1. WebRTCWebRTC (Web Real-Time Commun.
2021-07-06 15:16:29 508
原创 有时候在加了-std=c++11, 编译C,C++混合编程编译报错,可以换成-std=gnu++11试试
有时候在加了-std=c++11, 编译C,C++混合编程编译报错,可以换成-std=gnu++11试试-std=gnu++11#define member_of(ptr, type, member) ({ \ const typeof(((type *)0)->member) *__mptr = (ptr); \ (type *)((char *)__mptr - offsetof(type,member));})error: ISO C++ forbids de...
2021-07-01 16:18:51 414
转载 交互式连接建立(ICE)
交互式连接建立(ICE)ancientcc构建基于巡车的物联网23 人赞同了该文章交互式连接建立是一种标准穿透协议,利用Stun和Turn服务器来帮助端点建立连接。市面上已有不少介绍ICE的资料,像《WebRTC权威指南(第三版)》中的“9.2 交互式连接建立”。但看了那些后,有人还是不能理解,这里试着用一个实例来描述整个过程。ICE协议只是制定规范,没规定怎么实现细节,在细节实现上这里参考Google的WebRTC。图1 ICE呼叫流程 上图就是《WebRTC权威指南(第三
2021-05-11 14:54:38 949
原创 libnice交叉编译需要编译这些
glib-2.45.3 glib-2.45.3.tar.xz libffi-3.2.1 libffi-3.2.1.zip libnice openssl-1.0.2l openssl-1.0.2l.tar.gz zlib-1.2.8 zlib-1.2.8.tar.gz
2021-04-16 16:02:58 270
原创 webrtc 快速搭建 视频通话 p2p 信令服务器搭建
https://blog.csdn.net/u011077027/article/details/86225524参考上面的帖子。做到那个nginx的配置文件的时候,/etc/nginx/nginx.confssl_certificate_key /cert/cert.key;#配置密钥。这个cert.key修改为cert.pem。在用http( 不是https )访问的时候, chrome需要设置一下,参考如下的帖子:https://blog.csdn.net/m0_37.
2021-04-10 19:59:23 335
原创 webrtc c接口
https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-chttps://www.cnblogs.com/Johness/p/implement-webrtc-in-embedded-system-sec-1.html
2021-04-08 16:44:30 254
转载 创建Python3虚拟环境失败问题跟进
创建Python3虚拟环境失败问题跟进发表于2019-04-17|分类于Windows|408字数统计626|阅读时长20x00 问题描述今天在Win10上遇到一个很诡异的问题,使用python3的virtualenv创建虚拟环境失败,报错如下:Using base prefix 'c:\\users\\xxx\\appdata\\local\\programs\\python\\python37' New python executable ...
2021-04-08 15:16:22 4889
原创 启动peerconnection_client.exe报错,弹出错误对话框,提示 不支持操作,未知错误:0x800700d8
这个时候 在gn gen --ide out/Default --args= 后面的参数 不要加is_clang=false可以加is_clang=true。或者不加is_clang,因为默认就是is_clang=true。
2021-03-23 15:56:03 1194
原创 WebRTC研究:RTP中的序列号以及时间戳比较
https://blog.jianchihu.net/webrtc-research-rtp-number-timestamp-compare.htmlWebRTC研究:RTP中的序列号以及时间戳比较
2021-03-11 23:24:40 413
原创 shared_ptr提供了与内置类型同级别的线程安全性。
shared_ptr提供了与内置类型同级别的线程安全性。(1) 同一个shared_ptr对象可以被多线程同时读取。(2)不同的shared_ptr对象可以被多线程同时修改。即使这些shared_ptr对象指向同一个内存对象也没有问题,因为这些操作主要是对use_count的操作,shared_ptr内部通过cas保证安全。(3) 同一个shared_ptr对象不能被多线程直接修改,但可以通过原子函数完成。这里主要是因为同一个shared_ptr对象的修改不是原子的,需要修改use_count和
2021-03-04 23:28:52 87 1
转载 【C++ 】std::ref()和std::cref()
转自绿色冰点C++11 std::ref使用场景 C++本身有引用(&),为什么C++11又引入了std::ref(或者std::cref)?使用std::ref可以在模板传参的时候传入引用,否则只能传值。主要是考虑函数式编程(如std::bind)在使用时,是对参数直接拷贝,而不是引用。如下例子:#include <functional>#include <iostream> void f(int& n1, int& n2...
2021-03-04 20:58:37 289 1
webrtc dtls dtls
2018-06-18
wxWidgets 文档
2012-05-12
wxWidgets wxWidgets
2012-05-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人