自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 声音合成

最近了解到一款声音合成软件,通过组合数字信号处理算法制作声音,感觉非常伟大!可以制作大自然的声音,如雨,打雷,刮风等。如果技术成熟,运用到软件开发中可以方便嵌入声音,而无需资源包。下面是教程,后续分析该软件运行原理,并准备开发一下,搞个sdk给大家用。http://obiwannabe.co.uk/tutorials/html/tutorials_main.html

2015-12-31 17:33:15 2599 1

原创 时间戳杂谈(二)

时间戳由时间基准和时间戳值组成。时间基准:对时间单位(s)划分的标准。例如,1/25表示每秒分为25个单位,每个单位时间间隔包含1个单位。3001/90000表示每秒分为90000单位,每个单位时间间隔包含3001个单位。时间戳值:基于时间基准的时间表示,也即多少个单位时间间隔。1)时间戳的作用是用于精确标记音视频流的相对位置和持续时间。2)基于时间基准使用时间戳,

2014-07-28 18:05:21 3872 1

原创 解复用实现原理

解复用是多媒体开发中核心的功能。解复用功能是从音视频信号源中分流出不同的音频和视频流;另外解复用一般属于一种主动操作,即从音视频信号源中取出。数据流结构为Source->Demux->Stream主要实现模式有:1)直接模式:直接从信号源获取相应的音频或者视频数据。这种方式适合顺序读取和拥有帧位置元数据等信号源。使用这种模式,实际是从Demux中直接获取数据,当然也可以从Str

2014-07-28 16:18:48 9047

原创 数据流同步控制策略

数据流同步控制策略       数据处理过程实际就是数据流控制过程,在数据流控制过程中,如何确保模块之间的同步显得尤为重要。数据流同步控制策略主要有以下两种方式,如图1所示。1)数据同步:如图上部分所示。多采用FIFO队列实现,一般会使用信号量或者事件来同步,另外还会通过定时辅助优点:消耗系统资源较少,属于比较自然的协调方式。缺点:如果划分模块耗时不

2014-03-07 18:12:59 4351 1

原创 VLC播放引擎架构

VLC虽然是用c代码实现的,但是在代码编写上遵循了面向对象原则,易修改和扩展。不过实话实说,结构之间的关联太过于频繁,理解上还是不太容易。如果能够改成c++那是最好不过了。        对于媒体播放器,肯定离不开解复用,解码,音频和视频输出这四个模块,不管是DirectShow,还是VLC,或者自己要开发一个播放器,都是如此。媒体播放器的差异主要存在于模块之间的通信方式,界面消息处理上。Di

2014-03-04 15:03:10 5128

原创 时间戳杂谈

参考时钟与时间戳处理1、参考时钟       用于作为系统的唯一参考,一般以系统启动时间开始计时,具体数值影响不大,主要是做一个比较和参考作用。参考时钟设计时主要保证稳定性,尽量不产生时钟偏移。2、时间戳时间戳有两种,1)同步时间戳        之所以称为同步,其作用是同步多个流之间的操作,如果只有一个流,显然这个时间戳是没有意义的。一般通常用于音频和视频的同步播放。

2014-02-20 16:28:55 2817

原创 WebRTC源码分析四:视频模块结构

本文在上篇的基础上介绍WebRTC视频部分的模块结构,以进一步了解其实现框架。一、对外接口       对外接口有ViEBase,ViECapture,ViECodec,ViEEncryption,ViEFile,ViEImageProcess,ViENetwork,ViERender和ViERTP_RTCP。主要接口有:1)ViEBase:负责创建和管理视频会话链路;2)ViEC

2014-02-19 16:12:06 10467 1

原创 WebRTC源码分析三:视频处理流程

文本介绍视频的处理流程。图1中显示了两路视频会话视频信号流过程。以一路视频会话为例,主要分为以下几个线程:1)视频源产生线程:Camera生产视频画面,封装成视频帧,以一定帧率投递到下一个模块。;2)采集线程:由Capturer负责采集视频帧,并对视频帧进行一定处理,如调整画面亮度。并送入各个发送链路的编码模块编码并发送出去;3)接收线程:Rtp/Rtcp负责接收RTP/R

2014-02-19 11:32:17 12507 5

原创 WebRTC源码分析二:音频模块结构

本文介绍WebRTC音频模块组成和结构,详细介绍音频引擎的配置和启动,相信看完本文后,很多人可以利用webRTC完成一个音频通话程序开发。一、对外接口      音频部分的对外主要接口如下,各个接口之间的关系如图1所示。1)VoiceEngine:负责引擎的所有接口查询,存储共享数据信息ShareData。2)VoEBase:负责音频处理的基本操作。3)VoEAudioProc

2014-02-17 17:44:30 18275 4

原创 WinHTK开发与使用三:连续语音识别

WinHTK开发与使用三:连续语音识别 本文接上文,介绍连续语音识别系统设计过程,演示视频见下载资源中。二、连续语音识别系统设计        上面讨论了一个简单的十个孤立数字识别系统的设计过程,可以看出比较简单,效果也非常好。下面将设计一连续语音识别系统,相比较于孤立词识别而言,它有很多不同的地方,且过程也比较繁琐复杂,识别效果并不是非常好(当然这是有很多原因的)。为了便于实现

2014-02-16 11:31:45 7269 1

原创 WinHTK开发与使用二:孤立词识别

WinHTK开发与使用二:孤立词识别        本文在WinHTK软件设计的基础之上,介绍设计语音识别系统过程。具体包括孤立词语音和连续语音识别系统设计,这里先介绍孤立词的识别。语音识别系统设计过程主要包括四个步骤[32]:数据准备,模型训练,识别测试,效果分析,如图1所示。 图1 基于WinHTK语音识别系统设计过程一、孤立词识别本设计的内容是介绍一个识别0到9共

2014-02-15 22:05:20 3511 3

原创 WinHTK开发与使用一:软件设计

WinHTK开发与使用一:软件设计        接触语音识别的同行都会了解HTK,HTK工具包的功能很强大;但是对于习惯界面操作的很多人而言,它有一些先天不足。当然对于一开始就习惯类Unix等命令行界面开发者而言,这些都不是问题,所以本系列文章只针对熟悉可见即可及操作的对于语音识别感兴趣的初学者。因导致HTK不方便使用的原因主要以下几点:(1) 不方便安装,随便上网上一搜,涉及HTK

2014-02-15 17:59:49 3456 14

原创 WebRTC源码分析一:音频处理流程

本文概要介绍webRTC的音频处理流程,见下图:webRTC将音频会话抽象为一个通道Channel,譬如A与B进行音频通话,则A需要建立一个Channel与B进行音频数据传输。上图中有三个Channel,每个Channel包含编解码和RTP/RTCP发送功能。以一个Channel而言,应用程序中将包含三个活动线程,录音线程,音频接收线程和播放线程。1)录音线程:负责麦克风音

2014-02-14 15:18:25 13326 6

原创 命令行解析代码

开发设计过程中,往往要对命令行进行解析,下面实现了命令行解析功能,具体见代码(QuickHash在之前文章中):命令选项类,封装-p等命令选项#ifndef COMMAND_OPTION_H#define COMMAND_OPTION_H#include /**@file CommandOption.h * * @author xiaoxing.zhou * @date 201

2014-02-11 10:15:59 5132

原创 C++状态机实现V1.0

实现状态机框架,可以继承此框架的基类实现自定义功能,需要QuickHash头文件,源码如下,请尊重原创!欢迎批评指正!FSM.h#ifndef FSM_H#define FSM_H#include #include "QuickHash.h"#include "FSMState.h"#include "TypeTag.h"/**@file FSM.h * 实现状态机

2012-04-27 18:14:57 8976 12

转载 状态机之C++解析

状态机之C++解析 2008-11-18 作者:CppExplore 来源:cppblog.com 一、状态机描述状态机理论最初的发展在数字电路设计领域。在数字电路方面,根据输出是否与输入信号有关,状态机可以划分为Mealy型和Moore型状态机;根据输出是否与输入信号同步,状态机可以划分为异步和同步状态机。而在软

2012-04-27 17:06:14 2309

原创 C++ Hash表设计V2.0

在第一个版本上修改完善的,可以任意使用,但请尊重原创:#ifndef QUICK_HASH_H#define QUICK_HASH_H#include #include /**@file QuickHash.h * 实现Hash功能的模板类 * @author xiaoxing.zhou * @date 2012-4-26 * @version v2.0 *//**@

2012-04-26 10:14:21 2225 3

原创 C++ Hash表设计V1.0

前面发了几篇博客,一个评语都没有,这次废话不多说,直接上代码。有讨论的话再给出代码介绍。请尊重原创!!!#ifndef QUICK_HASH_H#define QUICK_HASH_H#include #include /**@file QuickHash.h * 实现Hash功能的模板类 * @author xiaoxing.zhou * @date 2012-4-25

2012-04-25 17:55:15 1415

原创 svn配置

利用apache httpd服务来访问svn repository比较方便,下面介绍一下配置过程步骤1:下载subversion,并安装步骤2:创建一个代码库目录,E:/svnlib/repository步骤3:配置apache httpd服务利用htpasswd程序生成一个密码对,用于访问svn代码库;修改httpd.conf文件,添加以下内容LoadMo

2012-04-25 14:16:42 678

原创 多进程及多线程之间同步与通信

同步与互斥:简单的控制通信:交互的信息更多Windows和Linux下用于同步与通信的机制大体一致,下面简单做一个归纳。1.多线程的同步方式                         Windows                                 Linux                                  备注原子操作

2012-04-23 14:09:53 4715

原创 c++内存池实现

利用C/C++开发大型应用程序中,内存的管理与分配是一个需要认真考虑的部分。本文描述了内存池设计原理并给出内存池的实现代码,代码支持Windows和Linux,多线程安全。内存池设计过程中需要考虑好内存的分配与释放问题,其实也就是空间和时间的矛盾。有的内存池设计得很巧妙,内存分配与需求相当,但是会浪费过多的时间去查找分配与释放,这就得不偿失;实际使用中,我们更多的是关心内存分配的速

2012-04-19 17:12:25 18562 18

原创 windows下守护进程实现

这里的守护进程指的是无控制终端的进程。Linux下运行进程只需要后面添加&就可以实现。有的时候需要设计一个可以同时在Windows和Linux下运行的守护进程为了避免过多的修改代码。可以添加如下伪指令来实现:#ifndef WIN32#pragma comment(linker,"subsystem:windows entry:mainCRTStartup")#endif设

2012-02-25 17:35:36 7508 2

OpenCL programming guide

OpenCL 编程指南 英文版本 欢迎下载!

2014-03-12

OverSim仿真软件

Oversim模块根据他的名字就看出他主要是用于Overlay类型的应用层网络仿真所设计的。但是在实际的开发中,他却主要用在目前主要的那些P2P应用协议的仿真上了。 Oversim的底层是建立在一套简化的UDP协议之上(依靠了INET里面的实现),在其上,他定义了一套层次框架,由下至上为 OverlayApplicatoin Tier1 Applicatoin Tier2 Applicatoin Tier3 . 根据其设计的说明, Overlay层用于包括通用的底层Overlay协议的实现。而上层具体的应用,可以一层一层的叠加上去,作为Tier1Tier2 Tier3。拿P2P的仿真来举例,通用的Pastry协议的实现就是放在Overlay这层的,而可以利用Pastry的各种应用,比如p2p存储, 聊天,媒体播放功能可以作为Tier1层堆叠上去。 各个层次的对上层接口都由Oversim定义,也可以自己扩充(我就扩充了一套专门用于媒体数据传输的接口)。可以说Oversim提供了一个很不错的P2P设计的程序框架的参考。 

2014-02-25

WinHTK3演示

博客中的连续语音识别演示,详细见博客描述

2014-02-16

状态机设计

介绍软件状态机的设计与实现,包含普通状态机和层次状态机的介绍

2012-04-27

小波变换学习资料

学小波变换的参考资料,里面包含介绍小波变换的基础知识,比较易懂

2012-04-26

优秀精美简历模板集合

优秀精美简历模板集合,非常完整,快毕业的可以下来看看

2011-06-21

空空如也

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

TA关注的人

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