自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(214)
  • 资源 (6)
  • 收藏
  • 关注

原创 mediasoup-demo在 Windows编译安装

1、环境准备Windows10 操作系统node v10.19.0(官网要求 >= v8.6.0)npm-v6.13.4git-v2.1.10python-v2.7.17(不可以是 python3)visual studio v2017及以上(官网要求 2015 以上,笔者最开始尝试 VS2015 ,遇见 constexpr 关键字不支持,此关键字在 VS2015 中开始支持,但是如果版本较低,则不会支持此关键字,因此请至少应使用 VS2017),我使用了 VS2019。设置 npm

2021-02-12 14:37:18 1838 3

原创 mediasoup-demo安装部署笔记

mediasoup-demo的安装部署比较简单,直接按照官方的README就可以成功部署运行。1.Clone工程:git clone https://github.com/versatica/mediasoup-demo.gitcd mediasoup-demogit checkout v3 1 2 3其实clone下来默认就是v32.server安装配置:cd servernpm install1 2这一步比较慢,会进行下载编译,还可能因为超时失败,如果ser

2021-01-30 23:08:14 544

原创 live555 源码分析

https://www.wolfcstech.com/categories/live555/

2020-01-02 15:28:51 1113

转载 WINDOWS 下编译 ffmpeg 源码总结

WINDOWS 下编译 ffmpeg 源码,有两种方式:VC、GCCVC 编译: https://github.com/ShiftMediaProject/FFVS-Project-Generator.git 优点:省时省力。动态库、静态库、X86、X64都支持。 缺点: A. 需要 VC 运行库的支持。作者也不打算脱离 VC 运行库。 B. 不...

2019-12-04 23:22:47 1760

原创 ubuntu16.0.4安装freeswitch

1. 安装 freeswitch 库git clone https://github.com/signalwire/freeswitch.git2. 安装环境依赖apt-get install libedit-dev libldns-dev libpcre3-dev libspeexdsp-dev libspeex-dev libcurl4-openssl-dev libopus-...

2019-10-21 14:41:09 1851

原创 Makefile常用万能模板(包括静态链接库、动态链接库、可执行文件)

阅读目录1、生成可执行文件的makefile 2、生成静态链接库的makefile 3、生成动态链接库的makefile  本文把makefile分成了三份:生成可执行文件的makefile,生成静态链接库的makefile,生成动态链接库的makefile。  这些makefile都很简单,一般都是一看就会用,用法也很容易,只需要把它们拷贝到你的代码的同一目录下,然后就可以...

2019-10-17 17:59:14 1264

原创 IT界大佬告诉你,程序员接私活的7大平台利器

今天小编在网上汇集了一些国内程序员接私活的平台,希望对大家能够有用。1、程序员客栈:程序员的经纪人2、快码众包-让互联网产品开发更快速!认准域名Kuai.ma3、Coding 码市 - 基于云技术的软件外包服务平台 coding码市4、开源中国众包平台 oschina众包5、码易-高质量软件众包交付服务平台 码易众包平台6、人人开发 - 集可视化开发,应用市场,威客众包,P...

2019-10-15 10:05:38 1353

原创 Janus WebRTC服务器部署

第一步:安装janus依赖库和工具,并设置环境变量apt install git aptitudeaptitude install libmicrohttpd-dev libjansson-dev libssl-dev libcurl4-openssl-devaptitude install libsofia-sip-ua-dev libglib2.0-dev libopus-dev ...

2019-09-24 18:02:16 20917 10

原创 webrtc示例peerconnection_client&server

1,使用执行peerconnection_server后,服务器默认会监听本地8888端口;执行peerconnection_client,界面会转到现有的用户列表(暂时为空),服务器那边会打印出有新用户连接的消息;再执行一个peerconnection_client,连接到服务器,此时用户列表里就有先前的client,而先前连接的client的用户列表里则会出现新连接上的client;双击c...

2019-09-17 11:10:17 1439

转载 Webrtc中的各种Channel

背景自己决定整理整理之前的笔记,今天整理的这一篇是webrtc相关的,自己在这方面已经工作了几年了,之前也总结了一些文档,正好借助网络的平台整理整理对象图channelmanager_class.png对象图分析这张图我觉得是一个非常宏观的图了,我们研究的最多的音视频模块,居然在这张图里,也只是一小部分而已。现在重新来看这张图,回忆当时绘图的思路,总结总结。WebRtc...

2019-08-14 23:26:57 4046 1

原创 WEBRTC 接收H264 RTP数据流小结

WEBRTC 接收H264 RTP数据流小结这篇文章是对webrtc 中,接收H264 RTP包的一个总结,主要分为两个部分:第一部分,介绍H264打包成RTP包的规范,以及WEBRTC中目前正在使用的几种格式。第二部分,介绍WEBRTC的数据流,从接收RTP包,到拼装成H264 Frame,最终送入Decoder,获取YUV数据。第一部分:RTP Payload Format f...

2019-07-31 10:25:36 1569 1

转载 WebRTC手记之WebRtcVideoEngine2模块

终于讲到视频数据的编码发送模块了,不容易。总体来说也看了不少时间WebRTC的源码了,最大的感触就是各个模块在开发的时候非常独立,每个模块都定义了自己的一套接口,最后串起来的时候添加各种适配对象来转接。这给我们这些刚开始源码阅读的人带来非常大的苦恼,不过WebRTC的模块内的结构设计还是很不错的,不然我也没有看下去的动力。注意命名,WebRtcVideoEngine2带了个2字,不用想,这肯定...

2019-06-05 23:50:14 624

转载 WebRTC手记Channel概念

前面两篇博文完整地介绍了WebRTC音视频的采集模块,接下来应该开始介绍关键的音视频编码模块。不过在介绍音视频编码模块之前,需要介绍一下Channel概念,WebRTC的每路数据的传输流程都封装成一个Channel对象。详细UML图如下:MediaChannel及其派生类封装了待传输的编解码、RTP/RTCP封包解包等逻辑,具体对象由相应的Media Engine类创建,如图:视频Chan...

2019-06-05 23:49:34 918

转载 WebRTC手记之本地音频采集

上一篇博文介绍了本地视频采集,这一篇就介绍下音频采集流程,也是先介绍WebRTC原生的音频采集,再介绍Chromium源码对它的定制。1. WebRTC原生音频采集先介绍一下WebRTC中与音频采集貌似相关的接口概念:结构上看起来是不是和视频Track的结构类似?不过前面提过,如果你以对称的思维,在此结构中找出与视频track相似的采集源和输出源,那就肯定无功而返了,LocalAu...

2019-06-05 23:48:57 1320 1

转载 WebRTC手记之本地视频采集

前面两篇文章介绍WebRTC的运行流程和使用框架接口,接下来就开始分析本地音视频的采集流程。由于篇幅较大,视频采集和音频采集分成两篇博文,这里先分析视频采集流程。分析的时候先分析WebRTC原生的视频采集流程,再捎带提一下Chromium对WebRTC视频采集的适配,这样能更好地理解WebRTC的接口设计。1. WebRTC原生视频采集在介绍视频设备的采集之前,首先要分析一下WebRTC的...

2019-06-05 23:48:10 642

转载 WebRTC手记之框架与接口

上一篇文章简单地介绍了下WebRTC的协议流程,这一篇就开始介绍框架与接口。一提到框架,本能地不知道从什么地方入手了。曾经直接从Chromium项目对WebRTC的源码的集成方面入手,后来发现这个步子迈的太大了,看的越多,概念越混乱,看了半个月感觉也没啥沉淀。还是从WebRTC提供的示例工程peerconnection_client入手比较轻便。先抛开音视频流的构建和渲染流程,示例工程核心的代...

2019-06-05 23:47:19 538

转载 WebRTC手记之初探

WebRTC是HTML5支持的重要特性之一,有了它,不再需要借助音视频相关的客户端,直接通过浏览器的Web页面就可以实现音视频对聊功能。而且WebRTC项目是开源的,我们可以借助WebRTC源码快速构建自己的音视频对聊功能。无论是使用前端JS的WebRTC API接口,还是在WebRTC源码上构建自己的对聊框架,都需要遵循以下执行流程:上述序列中,WebRTC并不提供Stun服务器和Sig...

2019-06-05 23:46:27 528

转载 peerconnection_client分析笔记

Windows版本的peerconnection_client demo是一个win32程序,入口函数为main.cc里面的wWinMain,程序整体流程就从这个入口函数下手开始分析。1.peerconnection_client demo中主要的类的关系整个demo中有3个主要的类分别是窗口类MainWnd,它的主要功能是实现了一个窗体程序,然后是PeerConnectionClient...

2019-05-31 11:13:26 3663 2

转载 视频、音频打时间戳的方法及其音视频同步(播放)原理

视频、音频打时间戳的方法http://blog.csdn.net/wfqxx/article/details/54971381. 视频时间戳pts = inc++ *(1000/fps);其中inc是一个静态的,初始值为0,每次打完时间戳inc加1.在ffmpeg,中的代码为pkt.pts= m_nVideoTimeStamp++ * (m_...

2019-05-23 14:01:26 2639

原创 WebRTC代码走读

WebRTC代码走读:http://blog.csdn.net/wanghorse

2018-11-28 11:07:46 841

原创 ubuntu挂载主机文件夹脚本

#!/bin/bashmount -t cifs -o username='xxxxx',password='xxxxxxxx',vers=2.1  //192.168.1.1/public  /mnt

2018-11-20 17:22:03 821

转载 WebRtc语音整体框架

图一语音整体框架图 如上图所示,音频整个处理框架除了ligjingle负责p2p数据的传输,主要是VOE(Voice Engine)和Channel适配层 图二创建数据通信channel时序图 上图是本地端 的完整过程,VOE由CreateMediaEngine_w开始创建,Channel适配层由SetLocalDescription根据SDP开始创建,下面来分析下这两个过程 VOE创建过程 /*...

2018-09-25 11:28:22 1904

原创 webrtc_android代码

https://github.com/vivek1794

2018-04-18 11:07:52 949 1

转载 AppRTC-Android 源码导读

前面分享了一套开箱即用的 WebRTC 开发环境,希望能给对 WebRTC 感兴趣的朋友带来帮助。不过有了开发环境只是迈出了万里长征第一步,后面的事情还得仔细研读源码才行,所以这里给大家先带来 WebRTC 的安卓 demo 工程—— AppRTC-Android 的源码导读。(九个月前说好的拆 Dagger2 看来又要等等了,海涵海涵...)概览让我们先搞清楚 WebRTC 的几个核心类以及它们...

2018-03-19 18:07:27 1985 2

转载 WebRTC-Android 源码导读(四):VideoCRE 与内存抖动优化

前面三篇中,我们依次分析了 WebRTC Android 的视频采集、视频渲染和视频硬编码,Live Streaming 视频的前段就已经全了。WebRTC 是个宝,初窥这部分代码时就被它的 Capturer 类的设计惊艳到了,仔细品鉴后越发佩服起来,里面简直填了太多坑了,如此宝贝,如不能为我所用,岂非一大憾事!而前三篇的解读,正是为了今天能将其剥离出来所做的铺垫,现在就有请我们今天的主角——Vi...

2018-03-14 20:03:18 888

转载 WebRTC-Android 源码导读(三):视频硬编码实现分析

前两篇我们分析了 WebRTC 的相机采集和预览,接下来的环节就是编码和传输了。目前我对传输还不熟悉,本篇只关注编码相关的内容,同样也是聚焦于三个问题:数据怎么送进编码器?怎么从编码器取数据?如何做流控?在开始之前,我们先了解一下 MediaCodec 的基本知识。MediaCodec 基础Developer 官网 上的描述已经很清楚了,下面简要总结一下。首先是工作流程:生产者不断把输入数据送进 ...

2018-03-14 20:02:32 1555

转载 WebRTC-Android 源码导读(二):预览实现分析

在本系列第一篇中,我们分析了 WebRTC-Android 相机采集的实现,本文中我们将分析预览的实现。有过一定相机开发经验的朋友可能会疑惑,预览还有什么好分析的,不是直接 camera.setPreviewDisplay 或者 camera.setPreviewTexture 就能在 SurfaceView/TextureView上预览了吗?实际上预览还有更高级的玩法,尤其是需要加上图像处理功能...

2018-03-14 20:01:38 2455 1

转载 WebRTC-Android 源码导读(一):相机采集实现分析

前面分享了一套开箱即用的 WebRTC 开发环境,希望能给对 WebRTC 感兴趣的朋友带来帮助。不过有了开发环境只是迈出了万里长征第一步,后面的事情还得仔细研读源码才行,所以这里给大家先带来 WebRTC 的安卓 demo 工程—— AppRTC-Android 的源码导读系列。(十个月前说好的拆 Dagger2 看来又要等等了,海涵海涵…)WebRTC 的代码量不小,一次性看明白不太现实,在本...

2018-03-14 20:01:04 2015

转载 开箱即用的 WebRTC 开发环境

在刚刚落幕的 WWDC17 上,苹果为我们带来了一个不小的惊喜 —— 其浏览器内核WebKit将正式支持 WebRTC,而未来基于 WebKit 内核的苹果浏览器,比如macOS High Sierra、iOS 11 中的 Safari 浏览器和Safari 技术预览版 32,都将使用到 WebRTC 技术。——苹果终于入伙 WebRTC适逢我也正在倒腾一些 WebRTC 的东西,万事开头难,搞事...

2018-03-14 20:00:16 2017

转载 WebRTC之Android客户端

一.WebRTC的Android客户端搭建1.libjingle_peerconnection_so.so2.libjingle_peerconnection.jar3.客户端源码一份(可以在github上下载)二、相关概念介绍1.P2P:点对点通讯;2.STUN:提供反射地址使双方可以进行P2P通讯;3.TURN:在反射地址方式失败情况下的补充方案,即使用中继器,使双方百分之百能够通讯;4.IC...

2018-03-04 21:30:19 1626

原创 apprtc server nodejs 版

https://github.com/ISBX/apprtc-node-server

2018-02-28 10:47:37 907

转载 webrtc旧版本代码获取

获取旧版本代码的步骤参考[1],主要内容如下:    1获取代码:git clone https://chromium.googlesource.com/external/webrtc    2编辑文件.git/config(cd .git 然后vim config),在[remote "origin"]部分,增加内容fetch = +refs/branch-heads/*:ref

2018-02-06 16:01:15 1456

转载 音视频直播技术--Windows下编译WebRTC

前言随着音视频技术的不断普及,Google推出的 WebRTC 越来越受到大家的喜欢。现在很多直播产品都是基于WebRTC 进行二次开发做出来的。WebRTC是提供了一整套处理实时音视频的开源库。它包括了音视频处理(采集,编解码,前处理,后处理,渲染),数据传输(实时传输,流控)和业务逻辑控制。可以说 WebRTC 的出现大大减少了做音视频开发的难度,所以熟练掌握好这个库对于做音视频相关的同学

2017-12-26 15:09:24 867

原创 ffmpeg处理网络流

#include "utils.h"#include #include #include UdpQueue recvqueue;UdpParam udpParam;//注册av_read_frame的回调函数,这里只是最简处理,实际应用中应加上出错处理,超时等待...int read_data(void *opaque, uint8_t *b

2017-11-17 17:11:52 4712 2

转载 解决git无法clone提示443以及配置git代理方法

git config --global http.proxy 'socks5://127.0.0.1:1080'设置完成之后再次clone就会成功了(当然前提是你有s's而且在开启的前提下)

2017-09-21 13:36:28 4751 3

转载 快速编译出WebRTC for Android 的一次记录

WebRTC for android官网 http://www.webrtc.org/native-code/android WebRTC 源码地址作为新手,以前就知道chromium的项目不是好搞的,webrtc就是chromium项目中的一个子项目,在墙内光是同步下载源码都是有点困难的事情(要翻),然后再按照它的操作说明干起来。不同平台下还不同操作,各种晕啊。好在有人把这些

2017-09-18 09:30:04 1037

转载 Ubuntu 14.04编译WebRTC For Android代码

最近基于Google开源的WebRTC项目做了一款音视频聊天的即时通信项目,期间在下载WebRTC代码时就碰到了一些问题,在此以作记录,也希望能够帮助到正在下载编译WebRTC代码中碰到类似问题的童鞋们。1). 准备环境1. Ubuntu 14.04 LTS 系统2. 准备一个稳定的速度还可以的VPN 或者 VPS ,这个很重要,大家都懂,大部分下载代码失败都是因为访问go

2017-09-16 21:05:35 685

转载 ijkplayer详解使用教程

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]1.认识ijkplayer最近公司准备开发一款视频播放及直播的应用,找了许多开源的框架,大部分都是基于ffmpeg开发的。最开始准备用Vitamio框架开发的,相关的文章也比较丰富,结果对于非个人移动应用均需购买Vitamio使用授权。不过B站开源的ijkplayer也不错,而且

2017-07-28 10:52:59 1473

转载 H.264视频数据组织结构-GOP图像组和组中3类不同的图像帧

H.264视频数据组织结构-GOP图像组和组中3类不同的图像帧  前言-----------------------H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理论依据是:参照一段时间内图像的统计结果表明,在相邻几幅图像画面中,一般有差别的像素只有10%以内的点,亮度差值变化不超过2%,而色度差值的变化只有1%以内。所以

2017-07-24 16:38:58 1294

转载 VLC架构剖析

VLC架构剖析1. VideoLan简介1.1 videolan组成Videolan有以下两部分组成:VLC:一个最主要的部分,它可以播放各种类型的媒体文件和流媒体文件,并且可以创造媒体流并保存成各种格式的媒体文件,这些文件的质量要比没保存前的件好。videolan作为客户端可以播放本地文件,httP://,rtsp://。VLS:是一种流服务器,专门用来解决流的各种问题,它也

2017-07-20 17:16:09 831

live555 vs2013源码

live555 vs2013最新源码,可以直接打开编译。

2019-01-17

音频编码(高泽华)

音频编码的基本原理,主流标准和技术分析。

2018-12-14

ant批量打包

ant同时打多个jar包。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

2018-07-03

xorg-x11-deprecated-libs-6.8.2-31.i386.rpm

xwindow package. be fit for redhat/cent OS and so on.

2013-10-31

嵌入式Linux高级项目班教材

国嵌编著的基于Tiny6410开发板的一些实战项目,很有参考意义

2013-01-21

Linux下FTP命令详解

在Linux运行ftp所需的各种命令。。。。。。。。。。。。。。。。。。。。。。。。。。

2010-12-12

空空如也

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

TA关注的人

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