通过修改linux系统默认的TCP或UDP mem大小解决开发板播放流媒体片源卡顿或马赛克问题
来源:互联网 发布:算法设计与分析第五章 编辑:程序博客网 时间:2024/06/05 02:48
背景:
在开发板上对接流媒体服务器时,遇到非常高清(码率20M)的片源,服务器推流速度非常快,在开发板上播放时经常出现卡顿(TCP)或者马赛克(UDP)的情况,在网上搜索及分析网络包之后,通过修改开发板系统默认的TCP或UDP套接字mem的大小(主要是接收数据的mem大小)之后问题得到解决,前提是socket数据接收线程已经非常高速运转了,不存在阻塞情况。
解决方案:
1、查询TCP套接字默认mem大小
cat /proc/sys/net/ipv4/tcp_mem
2、修改TCP套接字默认mem大小
echo xxx yyy zzz> /proc/sys/net/ipv4/tcp_mem
3、查询UDP套接字默认mem大小
cat /proc/sys/net/ipv4/udp_mem
4、修改UDP套接字默认mem大小
echo xxx yyy zzz > /proc/sys/net/ipv4/udp_mem
其中xxx、yyy、zzz就是想要设置的tcp或udp默认套接字mem的取值。
其他TCP或这UDP协议栈可以修改的相关参数,请参考:
http://blog.chinaunix.net/uid-10352791-id-2961508.html
- 通过修改linux系统默认的TCP或UDP mem大小解决开发板播放流媒体片源卡顿或马赛克问题
- TCP、UDP通信 Big或Little Edian字节顺序(大小端)问题的解决
- 获取linux下,tcp、udp的系统默认缓存大小和最大值
- linux系统上Chrome播放flash卡顿问题
- 网络通讯选择TCP或UDP的指导方针
- 修改Linux默认启动级别或模式
- 修改Linux默认启动级别或模式
- 修改Linux默认启动级别或模式
- 修改Linux默认启动级别或模式
- 修改Linux默认启动级别或模式
- 修改Linux默认启动级别或模式
- 插拔sd卡引起视频播放或流媒体 退出
- 解决VMware上RedHat Linux系统时间过快或过慢的问题
- 解决TCP/UDP传输文件时不能超过2G大小的问题
- 修改系统默认的音量大小
- 解决jsp开发时,卡顿问题
- 为什么linux kernel默认的页面大小是4K,而不是4M或8M?
- 为什么linux kernel默认的页面大小是4K,而不是4M或8M?
- ListView内容变化后的动态刷新
- android设置背景图片透明
- POJ 2828
- 找出10个最大的文件并排序
- 基类和派生类的赋值规则
- 通过修改linux系统默认的TCP或UDP mem大小解决开发板播放流媒体片源卡顿或马赛克问题
- Paip.断点调试MYSQL存储过程跟函数的解决方案大法
- ICE的5个服务
- JAVA NIO导致JAVA服务端程序无法关闭的奇怪问题
- 博弈论之Nim博弈与sg函数(一)
- 张孝祥java多线程视频笔记----传统线程互斥技术
- ZOJ:3721 Final Exam Arrangement
- HDOJ 2389 - Hopcroft-Carp模板二分图最大匹配
- linux 下的文本处理之“行分割”——cut命令