爱技术爱生活
码龄9年
  • 324,175
    被访问
  • 141
    原创
  • 1,698,553
    排名
  • 387
    粉丝
关注
提问 私信
  • 加入CSDN时间: 2012-12-26
博客简介:

tong5956的专栏

博客描述:
厚德载物,博学敦行
查看详细资料
  • 3
    领奖
    总分 378 当月 9
个人成就
  • 获得105次点赞
  • 内容获得87次评论
  • 获得283次收藏
创作历程
  • 8篇
    2021年
  • 35篇
    2020年
  • 14篇
    2019年
  • 57篇
    2018年
  • 21篇
    2017年
  • 6篇
    2016年
  • 6篇
    2015年
  • 1篇
    2014年
成就勋章
TA的专栏
  • RTMP源码剖析
    付费
    8篇
  • fflpay源码剖析
    付费
    10篇
  • Licode流媒体技术
    付费
    17篇
  • WebRTC流媒体技术
    付费
    25篇
  • MacOS多媒体技术
    3篇
  • ffmpeg开发
    35篇
  • Android多媒体技术
    19篇
  • window多媒体技术
    20篇
  • Linux多媒体技术
    5篇
  • Qt
    19篇
  • 程序人生
    3篇
兴趣领域 设置
  • 移动开发
    flutterreact native
  • iOS
    swiftobjective-cxcode
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

webrtc源码分析系列-flexfec的数据恢复流程

本文主要围绕fec的种类、fec的应用和flexfec的创建及fec数据包恢复过程展开,能够帮助读者更好的理解flexfec处理过程
原创
发布博客 2021.07.03 ·
333 阅读 ·
0 点赞 ·
0 评论

WebRTC 录制端CPU的优化

在观察线上录制进程状态时,发现录制进程的CPU占用的非常高,立足长远考虑,还是必须降下,采取一些优化措施,最后降低了20%的CPU,效果还是比较明显的。
原创
发布博客 2021.07.02 ·
243 阅读 ·
0 点赞 ·
0 评论

Cannot find module ProcessContainerFork.js

Cannot find module '/home/deploy/node_modules/pm2/lib/ProcessContainerFork.js'因为pm2环境发生了变化,需要删除这个才可以rm -rf ~/.pm2
原创
发布博客 2021.02.09 ·
562 阅读 ·
1 点赞 ·
0 评论

周末的晚上,好好学习

发布动态 2021.01.30

工作总是做不完,需要给自己留生活的时间

发布动态 2021.01.27

周末的晚上,思考人生

发布动态 2021.01.24

localtime的死锁问题及规避方式

目录1、分析进程死锁原因2、解决进程死锁问题开发webrtc服务端录制时,录制中出现偶现死锁问题。1、分析线程死锁原因通过pstack 进程id 查看进程堆栈,发现如下堆栈信息:#0 __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:95#1 0x00007f7690c0894a in _L_lock_10416 () from /lib64/libc.s...
原创
发布博客 2021.01.20 ·
291 阅读 ·
0 点赞 ·
0 评论

好好学习申论吧

发布动态 2021.01.17

考公

发布动态 2021.01.16

周末的晚上

发布动态 2021.01.16

WebRTC音频接收处理全过程(二)

webrtc拿到订阅远端数据的answer后,设置远端sdp,启动音频渲染线程,循环向neteq的数据包接受队列中拿音频包解码输出webrtc_d.dll!webrtc::AudioDeviceWindowsCore::DoRenderThread() 行2975 C++ 启动渲染进程,取数据包解码后进行渲染webrtc_d.dll!webrtc::AudioDeviceWindowsCore::WSAPIRenderThread(void * context) 行2778 C++w...
原创
发布博客 2021.01.15 ·
361 阅读 ·
0 点赞 ·
1 评论

WebRTC音频接收处理全过程(一)

目录 1.1 接收音频数据包 1.2插入音频数据包到待解码数据包队列1.3 解码音频数据包 1.1 接收音频数据包 cricket::BaseChannel::OnPacketReceived(bool rtcp, const rtc::CopyOnWriteBuffer & packet, __int64 packet_time_us) 行506 cricket::BaseChannel::OnRtpPacket(const webrtc...
原创
发布博客 2021.01.11 ·
1259 阅读 ·
1 点赞 ·
0 评论

webrtc的视频采集模块深入分析

webrtc的视频采集模块,采用的directshow实现,本文重点解析该模块,由于篇幅较大,这里会分为五个部分展开深入分析。
原创
发布博客 2021.01.06 ·
137 阅读 ·
0 点赞 ·
0 评论

总结了2020,展望了2021

发布动态 2021.01.06

2020年的总结和2021的目标

目录工作篇学习篇生活篇赚钱篇
原创
发布博客 2021.01.06 ·
2177 阅读 ·
3 点赞 ·
15 评论

YUY2转换为I420格式

做windows视频采集时需要将yuy2格式转换为I420格式,void YUY2toI420(int inWidth, int inHeight, uint8_t* pSrc, uint8_t* pDest) { int i, j; uint8_t* u = pDest + (inWidth * inHeight); uint8_t* v = u + (inWidth * inHeight) / 4; for (i = 0; i < inHeight / 2; i++) {
原创
发布博客 2020.12.31 ·
388 阅读 ·
1 点赞 ·
0 评论

YUY2转换为RGB的多种方法

在视频采集图像分析中,需要将采集的格式转换为所需的RGB格式,这里有两种方法:方法1:步骤1:转换为RGB24格式int ConvertYUY2toRGB24(char* pOutputRgb, unsigned char* pInputBuffer, int tInputWidth, int tInputHeight) { unsigned char*
原创
发布博客 2020.12.31 ·
1057 阅读 ·
0 点赞 ·
0 评论

YUY2数据格式如何写入文件

在摄像头采集时输出的数据格式有yuy2这种,在排查问题时需要判断是否是采集问题,需要将这种数据写入文件中,用工具查看在 YUY2 格式中,数据可被视为一个不带正负号的char值组成的数组,其中第一个字节包含第一个 Y 样例,第二个字节包含第一个 U (Cb) 样例,第三个字节包含第二个 Y 样例,第四个字节包含第一个 V (Cr) 样例,如图所示。 videoFrame为采集回调的一帧视频数据,videoFrameLength为一帧视频数据大小 std::string outname...
原创
发布博客 2020.12.31 ·
323 阅读 ·
0 点赞 ·
1 评论

Linux sleep的三种实现

1、采用selecttimeval timeOut;timeOut.tv_sec = useconds/1000000;timeOut.tv_usec = useconds%1000000;TLOG_INFO("tv_sec=%lld, tv_usec=%lld.", timeOut.tv_sec, timeOut.tv_usec);if (0 != select(0, NULL, NULL, NULL, &timeOut)){ TLOG_INFO("select error");
原创
发布博客 2020.12.17 ·
81 阅读 ·
0 点赞 ·
0 评论

libvpx的编译过程

libvpx编译过程:wget https://github.com/webmproject/libvpx/archive/v1.6.1.zipunzip libvpx-1.6.1.zipcd libvpx-1.6.1/./configure --prefix=/home/v/workspace/libvpx-1.6.1/build_lib --enable-realtime-only --enable-pic --enable-error-concealment --enable-examp..
原创
发布博客 2020.11.21 ·
389 阅读 ·
0 点赞 ·
0 评论
加载更多