自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

沧海一粟

修身养性,立志长远

  • 博客(224)
  • 资源 (13)
  • 收藏
  • 关注

原创 objective-c c++ 混编

xcode可以进行c++、objective-c混合开发,mm、m后缀为objective-c代码,可以在其中调用cpp后缀的c++类,反过来不行,除非把compile sources as设置为objective-c++才行。怎样可以做到不改compile sources as可以反向调用?下面介绍的一种方法。// objc// 头文件@interface Test : NSObje...

2020-03-12 21:25:27 406

原创 tensorflow GPU windows下编译

1.首先配置环境cuda,cudnn开发运行环境,参考https://blog.csdn.net/m0_37605642/article/details/988547532.参考我的前一篇配置CPU版本编译环境。https://blog.csdn.net/andrew57/article/details/1033964263.如果已经生成CPU版本,可以bazel clean一下。然后执行...

2019-12-05 13:55:23 461

原创 tensorflow windows版编译

环境:win10 x64python3.6tensorflow r1.14bazel 0.25.0vs2015msys2 x64脱离环境谈都是耍流氓,何况在相同环境都可能出各种问题。以下步骤使用bazel编译1.根据官网安装以上软件软件。2.下载tensorflow r1.14。3.进入tensorflow代码目录,执行python configure....

2019-12-04 23:51:03 758

原创 MonaBase之Mona.h

Mona.h中主要定义一些宏和class,他们会在整个项目中使用到。_OS_***定义具体平台的宏_ARCH_***指令集及字节序Static不可实例化类,用于归类一些常用函数。Object no copy, no move基类,项目中很多类的基类。NullableObject 派生自Object的纯虚类,实现操作符bool。ASCII类实现对128个ASCII分类。...

2019-11-14 22:59:37 205

原创 pcm混音

I am not sure weather I have fully understood your question or not, I persume that you are asking"How can we mix two or more audio stream", If this is the question then I am explaning below themix...

2019-11-08 15:32:19 516

原创 Protocol Buffers使用注意事项

Protocol Buffers做为广泛使用的一个序列化开源库,提供了很多语言下的支持,本文就谈谈MSVC c++使用pb遇到的问题,当然这些问题因为每个人的使用模式不同,可能都不一样,本文也不讨论怎么写proto及编译。我们使用pb做序列化可以把pb生成静态库或者动态库(libprotobuf.dll),然后使用protoc将message生成相应的cc文件,这些cc文件结构都类似,基本不需...

2019-09-02 15:36:16 1043 1

原创 YUV叠加

知道了YUV切割和合并的原理,叠加其实就是覆盖相应位置的数据,如果用或运算符就是混合,前面合并一篇有提及。下面还是使用I420数据,直接上代码。/** src1: background yuv* src2: source yuv* w1: src1 width* h1: src1 height* w2: src2 width* h2: src2 height* x,y: s...

2019-06-02 12:53:47 1170

原创 YUV切割

YUV分割原理是对Y、U、V三个分量分别处理。以下使用I420做例子列举出左右、上下、切块三种方式,原理都一样。不画图直接上代码。左右切割:void CutLR(const char* src1, int w, int h){ int w1 = w / 2, w2 = w - w1; int h1 = h, h2 = h; char* cut_L = new char[...

2019-06-02 12:41:47 609

原创 音视频同步阀值

做音视频同步的时候可能都会碰到一个问题,要达到理想的效果阀值到底设置多大,这是个经验值还是有数据依据,我想到很多人都有这个疑惑。最近看到一篇文章写到这个问题,而且据说是有RFC做背书的。文章中提出了一个阀值及几种情况下的效果。其中提到以下三点值得参考。1. 无法察觉:音频和视频的时间戳差值在:-100ms ~ +25ms 之间。2. 能够察觉:音频滞后了 100ms 以上,或者超前了 2...

2019-04-25 15:01:15 573

原创 emscripten 如何保存文件到本地

本文主要描述一种empscritpen开发体系下,怎么将文件保存到本地的方法。本文描述方法参考https://groups.google.com/forum/#!topic/emscripten-discuss/xnTzhcsMj4U实现,亲测可行。empscripten是一款编译器,他负责把clang编译的bitcode转换为符合asm.js或者webAssembly规范的js代码,这样可...

2019-03-19 17:50:41 1472

原创 Unity直接渲染YUV几种格式

原文地址:https://www.jianshu.com/p/e19089db6c25多年前做Unity插件的yuv渲染,当时非常想直接渲染YUV,翻遍官网,苦于无法,只能选择低效的转RGB模式。  突发兴趣搜索一番,既然现在可以通过shader直接渲染YUV,真是了却我心中悬念。也许是我当时是涉猎太窄,未知此法(D3D,opengl shader我是了解的,当时也是疑惑Uni...

2019-01-24 11:08:26 2232

原创 nginx+php+mysql支持REST api

1.安装mysql。2.安装php,打开部分extension支持,网上有很多教程,具体不写了。3.安装nginx,做好基本设置,加一行:rewrite ^/api/v1/([^/]+)/?$ /apiv1.php?method=$1? last;    写好apiv1.php文件,就可以支持http://ip/api/v1/getinfo这样的REST API访问了。&lt...

2018-12-13 22:23:10 678

原创 ndk开发指南

https://developer.android.com/ndk/guides/?hl=zh-cn

2018-11-21 11:26:41 207

原创 怎么使用命令行制作一个dll

1.安装开发工具,比如visual studio或者mingw等等。下面以visual studio编译器cl作为讲解。2.导出dll中的函数基本使用两种方式,可以使用关键字__declspec(dllexport),例如:__declspec(dllexport) int sum(int a, int b),这样就会导出一个sum函数。还可以写一个def文件,格式如下:LIBR...

2018-11-19 18:15:52 1212

原创 在线看android代码

在线看android代码地址,也有linux内核代码。 http://androidxref.com/

2018-09-19 10:31:34 276

转载 Linux下Makefile的automake生成全攻略

作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了。         在本文中,将给大家介绍如何使用 autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Makefile,这样就可以象常见的...

2018-09-19 10:29:16 893 1

原创 FireBreath让你的插件跨平台

官方地址:http://www.firebreath.org

2018-08-15 09:53:46 810

原创 SRT协议

https://en.wikipedia.org/wiki/Secure_Reliable_Transporthttps://github.com/Haivision/srt

2018-08-02 10:59:15 6392

原创 Flash html5 mse介绍

We’ve been hearing that Flash is dead since Apple introduced the iPad back in 2010. Yet it’s still the predominant technology used by premium websites, particularly those that are ad-supported. This i...

2018-08-02 10:51:19 289

原创 TS流PAT/PMT详解

http://www.cnblogs.com/shakin/p/3714848.htmlhttps://blog.csdn.net/kkdestiny/article/category/1553561 https://blog.csdn.net/cabbage2008/article/details/49871441https://en.wikipedia.org/wiki/Pac...

2018-07-16 17:26:42 867

原创 视频直播中抖动和延迟的区别

英文原文:https://www.callstats.io/2018/03/07/difference-between-jitter-and-latency/翻译:https://zhuanlan.zhihu.com/p/35256015

2018-07-11 22:36:38 762

转载 视频直播秒开背后的技术与优化经验

[摘要]在视频直播中,首屏打开速度直接关系到用户体验,而这背后蕴含着许多技术点与实践经验,其中Group of Picture(GoP)设置、缓存参数优化格外关键。本文根据迅达云SpeedyCloud工程副总裁李雨来在见云沙龙的分享整理而成。  在视频直播中,首屏打开速度直接关系到用户体验,而这背后蕴含着许多技术点与实践经验,其中Group of Picture(GoP)设置、缓存参数优化格外关键...

2018-07-11 22:34:45 420

转载 QQ视频与webrtc打洞对比分析

一、NAT1. 含义      NAT技术(Network Address Translation,网络地址转换)是一种把内部网络(简称为内网)私有IP地址转换为外部网络(简称为外网)公共IP地址的技术,它使得一定范围内的多台主机只利用一个公共IP地址连接到外网,可以在很大程度上缓解了公网IP地址紧缺的问题。2. 实现方式    静态转换、动态转换、端口多路复用。    静态转换:是指将内部网络的...

2018-03-27 20:01:11 2514

原创 YUV拼接

yuv的拼接和切割原理是很简单的,直接上图,这样非常直观。横向拼接:纵向拼接:以上是横向拼接,其他的也类似,切割自然也一样,对y、u、v各个分量做操作。水印的话就是直接覆盖x,y开始的区域(不透明),透明的水印需要orginal value+=watermarker value*transprent valueorginal value为原始值,watermar...

2018-03-21 19:19:34 1922

转载 rtmp NetConnection 状态

转载地址:http://blog.csdn.net/tongjing524/article/details/51580090"NetConnection.Connect.Success"  //服务器连接成功 "NetConnection.Connect.Closed"   //连接中断 "NetConnection.Connect.Failed"   //连接失败" "NetConnection...

2018-03-14 18:52:32 689

原创 iphone hevc视频硬解支持

2018-02-28 17:32:05 1532

原创 D3D surface渲染YUV问题

    最近参考了雷神的d3d surface渲染YUV的代码,下面对几种YUV格式做总结,只有正确区分才能正常渲染图像。     在建立离屏表面的时候需要指定图像格式D3DFormat,这个指定后后面的拷贝数据给surface息息相关,搞错了不会渲染正常。    YUV主要有packet和Planar两种存储方式。I420(YUV420P) YYYYYYYYUUVV YV12(YUV420P) ...

2018-02-26 14:06:32 1036

原创 判断IPV4有效性

最近有份代码需要判断字符串模式IP V4的有效性,使用了inet_addr发现不能全部判断,于是在网上查了下,有很多这样的例子,各有优点,但找到的都多少有些问题。其中有分代码清晰覆盖面相对很全。下面的代码是我在这份代码的基础上做了些修改,后面会给出地址。简单测试没有什么问题,如有问题请各位留言指正。bool isValidIPv4(const char *pszIPAddr){ if (!ps...

2018-02-08 00:05:44 590

原创 Intel GPU及NVIDIA GPU对视频编解码支持情况

 编解码可以软编实现(CPU),或者硬编(GPU),当然还可以使用专用的编解码卡(IC),他们各有优点,但是基于硬件的处理往往速度更快。但是也有人说软编有更大的可调节性。这里我们只记录硬编的硬件支持情况,尤其是软编效率没有上来的情况下这显得尤其重要。废话不多说,先上intel GPU QSV硬编解情况:摘自:https://en.wikipedia.org/wiki/Intel_Quick_Syn...

2018-02-06 10:40:35 24254 1

转载 Understanding Rate Control Modes (x264, x265, vpx)

原文地址:http://slhck.info/video/2017/03/01/rate-control.htmlWhat is “rate control”? It’s what a video encoder does when it decides how many bits to spend for a given frame. The goal of (lossy) video

2018-01-29 13:41:33 314

转载 H.264协议:Annex B格式和AVCC格式

转自:http://blog.csdn.net/yingmuliuchuan/article/details/78743738本文需要读者对H.264流有一定的了解才可以理解2种格式差异。        首先要理解的是没有标准的H.264基本流格式。文档中的确包含了一个Annex,特别是描述了一种可能的格式Annex B格式,但是这个并不是一个必须要求的格式。标准文档中指定了视频怎

2018-01-29 09:25:32 6613

原创 msys2安装配置

msys2安装后可以在windows下编译一些开源库的32,64位版本(当然可以做更多,而我主要用于编译不同指令集的库)。下面简单记录下msys2的安装配置过程。1. 下载msys2安装http://sourceforge.net/projects/msys2/2. 更新源在安装目录下/etc/pacman.d/找到mirrorlist.mingw32,mirrorlist.m

2018-01-14 10:35:04 6277

原创 ams录像实现

// main.asc// ========发布时录像=============application.onAppStart = function(){          trace("Application name: " + application.name);          trace("Server: " + application.server

2018-01-04 15:42:27 383

原创 MonaTiny之分析开篇Memory

一直打算分析MonaTiny流媒体服务器,只能看一部分记录一部分。MonaServer是一个类似fms,srs,live555一样的流媒体服务器,支持rtmp,rtmpe,http,websocket,rtsp等协议。MonaTiny为MonaServer的简化版本,大体上重构了一遍代码,去掉了lua部分,功能也没有MonaServer丰富,但是一些核心的功能具备。MonaTiny代码从项目上

2017-12-03 12:05:49 710

转载 x265 命令行参数大全

除非一个参数被标记为 CLI ONLY,否则该参数也被x265_param_parse() 支持。CLI使用getopt 函数来解释命令行参数,长短版本的参数都可以使用,长参数在不引起歧义的情况下可以截断成短参数。API用户必须把完整的参数名传递给 x265_param_parse()。Preset和tune 有特殊的含义,API用户需要在调用x265_param_parse()设置其他参

2017-12-01 18:32:54 1545

转载 RTMP H5 直播流技术解析

RTMP 是什么RTMP 全称即是 Real-Time Messaging Protocol。顾名思义就是用来作为实时通信的一种协议。该协议是 Adobe 搞出来的。主要是用来传递音视频流的。它通过一种自定义的协议,来完成对指定直播流的播放和相关的操作。和现行的直播流相比,RTMP 主要的特点就是高效,这里,我就不多费口舌了。我们先来了解一下 RTMP 是如何进行握手的。RTM

2017-11-14 19:19:36 5045

原创 H5视频播放

https://blog.gmem.cc/research-on-html5-video-surveillance

2017-09-22 10:46:47 639

转载 WebRTC peer之间通讯过程

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

2017-09-20 21:47:48 510

原创 STUN TURN signaling介绍

介绍stun turn signaling服务器https://www.html5rocks.com/en/tutorials/webrtc/infrastructure/stun服务器开放地址https://gist.github.com/zziuni/3741933

2017-09-19 13:16:22 451

原创 webRTC学习资料

以下资料都是收集自他人的总结,由于时间跨度大的原因,代码可能已经发生了很大的变化,请鉴别学习参考,可以少走很多弯路,在此谢谢乐于分享的人,如有侵权请留言,会立即删除。http://blog.csdn.net/foruok/article/details/53005728有丰富的webRTC教程,是不错的学习入口。http://blog.csdn.net/foruok

2017-09-06 17:49:26 282

PcmMix.zip

pcm混音例子,实现了从两个相同采样率、通道数、样本长度wav文件中提取pcm混音成一个文件。

2019-11-08

REST api demo

主要利用nginx,mysql,php实现了resapi。只是简单实现了原理。

2018-12-14

时间轴 timeline

时间轴控件,可以将不同的数据绘制到控件上,目前绘制数据不是很完善。会根据client大小调整显示。支持拖动,支持放大某一小时,可以精确到秒。

2014-02-19

arm体系结构

讲述arm体系结构的ppt,从网上下载得到,有一定参考价值,如有需要可以下载看看。

2012-12-25

海康编码数据分析库

将海康实时预览回调出来的数据分析为h264的帧数据。

2012-08-22

h264,ps流转es流

找到的一段h264编码的ps流转es流的代码,能执行,效果不是特理想,有需要的人可以下载看看。

2012-08-22

飞鸽源代码,C/C++代码

XEIM+飞鸽传书服务端源码,从网上找到的,放出来,大家研究。主要是C/C++代码

2010-10-14

com组件设计与应用

讲述com组件设计与应用,网上淘得,在此供大家下载,学习

2009-05-24

com组件设计与应用

讲述com组件设计与应用,网上淘得,在此供大家下载,学习

2009-05-24

sql讲解

关于sql报表和其他的之类<br>偶然找到,觉得很好。

2008-07-03

c/C++代码精粹

讲c/c++的书,比较好的

2008-07-03

BasmForBeginners-cn

BasmForBeginners-cn.pdf<br>看题目就是知道了,学习basm的

2008-07-03

Delphi三层代码自动生成器

自动完成生成DElphi三层架构代码,选择server,选择database,点击AutoCode就可以生成了

2007-11-02

空空如也

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

TA关注的人

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