08 2010 档案
MS VC6编译VLC-0.9.9a步骤说明
摘要:VLC在0.8.6C版本时,还保持着大部分代码对MSVC编译环境的兼容,到了0.9版本以后,就基本放弃了对MSVC的兼容性了。不过,要在MSVC环境里编译VLC最新版本,也还是有方法可以做到。VC6的编译环境,补丁版本ServicePack5,ProcessorPackSP5。下面仅以一个plugin的移植编译过程来说明。1.首先,将VLC-0.8.6C的msvc目录拷贝到vlc-0.9.9a目录下,这里面有多数plugin的VC6的.dsp工程文件。2.用VC6打开plugin_mp4.dsp,先尝试编译,错误如下:--------------------Configuration:plug 阅读全文
posted @ 2010-08-27 16:53 一个人的天空@ 阅读(3883) 评论(0) 推荐(0)
VLC各个Module模块之间如何共享变量
摘要:在做VLC开发的时候,想使用一个模块访问另外一个模块的数据,比如在网络模块得到了一些数据,想在其他模块得到这些数据进行处理,这时候就需要两个模块共享一些变量。查看VLC的源码,发现VLC专门有variables.h和variables.c是用来处理变量的。它提供了一些方法可以创建VLC变量、设置VLC变量、改变、销毁VLC变量等。当我们要产生一个VLC变量的时候,我们使用var_Create()函数;如在UDP模块创建了一个变量,vlc_value_tvalTemp;var_Create(p_access,"var_test",VLC_VAR_STRING);valTemp 阅读全文
posted @ 2010-08-27 15:53 一个人的天空@ 阅读(936) 评论(0) 推荐(0)
There Are Free RTSP DirectShow Source Filters with full source code
摘要:Hi,Thereareseveralfreeforcommercialuse,publishedRTSPDirectShowSourceFilters,withfullsourcecodeinC++.imustadmitthatittookaLOTofsearchingtofindthem!IwilltellyouaboutonethatIthinkisthebest.LookatthesourcecodeforVLC(VideoLAN)andpulloutthefiles:access.creal.crtsp.crtsp.hThat'sallyouneed.Lookatthesamp 阅读全文
posted @ 2010-08-27 11:18 一个人的天空@ 阅读(659) 评论(0) 推荐(0)
vlc代码分析(4)——mpgv的demux
摘要:Mpgv.c是对mpegvedio的解码部分,从demux开始,到sample到输出。其中,核心部分是函数ParseMPEGBlock。两种数据格式:video_format是video的meta_data,block是实际的数据CodePath:Open()----->Modules/demux/Mpgv.c1)setfunctionpoint.p_sysismainstructurep_demux->pf_demux=Demux;p_demux->pf_control=Control;p_demux->p_sys=p_sys=malloc(sizeof(demux_ 阅读全文
posted @ 2010-08-27 10:38 一个人的天空@ 阅读(1412) 评论(0) 推荐(0)
vlc代码分析(3)——输入模块
摘要:输入模块的CodePath,看来主要的分析还是在demux和access模块的分析。现在的codepath只是大致的模块input_CreateThread2--->Create()---->Run()---->Init()vlm.cinput.cinput.cinput.c---->input_EsOutNew()input.c---->[1]InputSourceInitinput.c1)-->demux2_New--->__demux2_New-->module_Need(p_demux,"access_demux",p 阅读全文
posted @ 2010-08-27 10:37 一个人的天空@ 阅读(1121) 评论(0) 推荐(0)
vlc 代码分析(1)——框架分析
摘要:1.vlc.c只是入口程序2.Libvlc.c是各个模块的结合点,这要是对接口编程Vlc_Create():两个重要的数据结构:libvlc_t&vlc_t,所有的参数传递都在这里面Vlc_Init():初始化参数,module_bankVlc_AddInf():添加module3./src/misc/configure.c命令行参数和参数文件分析参数文件是~/.vnc/vlcrc。其中可以设置log文件的位置4./include/所有头文件的集合5./src/interface/Interface.h所有module的集合6./src/misc/Modules.c其中module_t 阅读全文
posted @ 2010-08-27 10:36 一个人的天空@ 阅读(4128) 评论(2) 推荐(0)
vlc 代码分析(2)——vlc中vlm介绍
摘要:概述代码从两大部分入手,一个telnet的deamon。还有就是rtsp的实现部分。结果发现,他们通过了一个桥梁vlm的media进行沟通。当受到newMEDIANAMEvodenabled就建立一个media。如果受到setupMEDIANAMEinputfilename.mpg就读入流准备分析,建立input流当受到rtsp的请求后,就建立这个output流这样,vod就和别的模块一致了。rtsp只是一种output流的module。代码分析1./modules/control/telnet.c/*********************************************** 阅读全文
posted @ 2010-08-27 10:36 一个人的天空@ 阅读(2168) 评论(0) 推荐(0)
vlc学习计划(7)--从接收到数据流到播放视频的过程分析
摘要:从接收到数据流到播放视频的过程分析从网络接收到流->对数据流进行视频和音频分离->对视频用解码器解码->显示解码后的视频流视频显示部分走势线:分离->解码->新的VOUT缓冲区->VOUT线程Demux(modules\demux\mpeg\ps.c)->DemuxPs(modules\demux\mpeg\system.c)->ParsePS->input_SelectES(src\input\input_programs.c)->input_RunDecoder(src\input\input_dec.c)->CreateD 阅读全文
posted @ 2010-08-27 10:14 一个人的天空@ 阅读(2078) 评论(0) 推荐(0)
vlc学习计划(6)--网络数据流接收处理过程分析
摘要:网络数据流接收处理分析1、在input.c(src\input)文件中的主线程循环ThreadinchargeofprocessingthenetworkpacketsanddemultiplexingRunThread(input_thread_t*p_input){InitThread(p_input);…………………………………………………….input_SelectES(p_input,p_input->stream.p_newly_selected_es);……………………………………………………./*Readanddemultiplexsomedata.*/i_count=p 阅读全文
posted @ 2010-08-27 10:11 一个人的天空@ 阅读(1024) 评论(0) 推荐(0)
vlc学习计划(5)--VLC程序宏及线程分析
摘要:第一部分变量及宏定义1.消息映射宏vlc_module_begin();…………………..vlc_module_end();2.结构中包含函数structinput_thread_t{VLC_COMMON_MEMBERS/*Threadproperties*/vlc_bool_tb_eof;vlc_bool_tb_out_pace_control;/*Accessmodule*/module_t*p_access;ssize_t(*pf_read)(input_thread_t*,byte_t*,size_t);int(*pf_set_program)(input_thread_t*,pgrm 阅读全文
posted @ 2010-08-27 10:10 一个人的天空@ 阅读(895) 评论(0) 推荐(0)
vlc学习计划(4)--在EMACS中使用GDB调试
摘要:一.EMACS中调试1、usingtheclipboardM-xmenu-bar-enable-clipboard(makecut,copy,pastymenuitems,usetheclipboard)2、using“wheel”miceM-xmouse-wheel-mode(激活中间的滚动键)3、退出出任何命令状态C-g4、进入编译模式M-xcompile或者从菜单-》TOOLS-》COMPILE5、用COMPILE模式C-x`(搜索出错的源代码行)<RET>(光标定位在compilebuffer的出错提示行上,按〈RET〉键,会跳到出错的源代码行)C-uC-x`在compil 阅读全文
posted @ 2010-08-27 10:09 一个人的天空@ 阅读(716) 评论(0) 推荐(0)
vlc学习计划(3)--VLC及其他播放器
摘要:一.rm格式的播放器:下载地址:http://www.real.com/linux/?src=020923home_cn_cn安装方式:~#./realplayer.bin打开方式:命令行:~#realplayGUI:redhat->audioandvideo->otherapp->realplayer二.mp3播放器:xmms-1.2.8.tar.gz安装方式:./configure&make&makeinstall三.经验:从源码编译安装Mplayer1.0pre5来自:http://yangchengkai.blogchina.com/blog/refe 阅读全文
posted @ 2010-08-27 10:07 一个人的天空@ 阅读(724) 评论(0) 推荐(0)
vlc学习计划(2)---二进制包安装及使用
摘要:1.在RH9上的安装需要1).RH9的升级包.2).FC2的RPM包详细说明清参见:http://www.videolan.org/vlc/download-redhat.html以上VLC版本为:0.7.22.下载RH9的升级包http://download.videolan.org/pub/videolan/vlc/0.7.2/rpm/redhat/rh9/3.下载FC2的RPM包http://download.videolan.org/pub/videolan/vlc/0.7.2/rpm/fedora/fc2/二进制包为:vlc-binary.tar.gz4.将RH9的升级包和vlc-b 阅读全文
posted @ 2010-08-27 10:06 一个人的天空@ 阅读(708) 评论(0) 推荐(0)
VLC 学习计划---文档阅读
摘要:一videolan-howto-en-html该文档完全描述了VideoLAN"流"的解决方法.VideoLAN项目包括两个软件.1)VLC:以前是视频流接收的客户端,但是现在也可以作为服务端工作.2)VLS:视频服务端,能发送MPEG-1,MPEG-2andMPEG-4files,DVDs,digitalsatellitechannels,digitalterrestialtelevisionchannelsandlivevideosonthenetworkinunicastormulticast.1.VLC在REDHAT下的安装从下面的链接中下载vlc的包和包所需要的库 阅读全文
posted @ 2010-08-27 10:04 一个人的天空@ 阅读(2290) 评论(0) 推荐(0)
在windows 使用vs2008编译live555
摘要:基于liveMedia的程序,需要通过继承UsageEnvironment抽象类和TaskScheduler抽象类,定义相应的类来处理事件调度,数据读写以及错误处理。live项目的源代码里有这些类的一个实现,这就是“BasicUsageEnvironment”库。1.live555源代码简介liveMedia项目的源代码包括四个基本的库,各种测试代码以及IVE555MediaServer。四个基本的库分别是UsageEnvironment&TaskScheduler,groupsock,liveMedia,BasicUsageEnvironment。UsageEnvironment和T 阅读全文
posted @ 2010-08-25 10:46 一个人的天空@ 阅读(3766) 评论(0) 推荐(1)
DirectShow一些流程
摘要:以dsnetwork为例,Directshow协商过程:1.BuildGraph维护着链表,有各个filter的链接信息.首先对输入filter和输入filter1.ConnectFilter中协商类型:我们实现的ConnectFilter方法:1).枚举输入pin的每个媒体类型:EnumPins由basefilter创建一个IEnumPin接口,basefilter已经实现,IEnumPin的next方法中会调用basefilter::GetPinCount(),和basefilter::GetPin(index)获取的每一个IOutputPin首先通过调用UpPin->Connect 阅读全文
posted @ 2010-08-18 13:39 一个人的天空@ 阅读(3304) 评论(0) 推荐(0)
参数平衡特技(ParamEQ)
摘要:参数平衡特技的参数通过下面的结构来调整:typedefstruct_DSFXParamEq{FLOATfCenter;//中心的频率,单位是hz,取值范围是80.0fhz~~16000.0f,缺省值是8000hzFLOATfBandwidth;//音的带宽,以半音为单位,取值范围是1.0f~~36.0f,缺省值是12FLOATfGain;//音频的音量,以db为单位,取值范围是-15.0db~~15.0fdb,缺省值是0db}DSFXParamEq,*LPDSFXParamEq;我们在程序中可以定义这个结构的对象,如下:LPDIRECTSOUNDFXPARAMEQ8g_pParamEq=NUL 阅读全文
posted @ 2010-08-16 11:25 一个人的天空@ 阅读(610) 评论(0) 推荐(0)
DSound的所有音频特技使用和参数解释详细笔记(音频特效)[静态缓冲]
摘要:#defineSTRICT#include<windows.h>#include"resource.h"#include<basetsd.h>#include<commdlg.h>#include<mmreg.h>#include<dxerr9.h>#include<dsound.h>#include<DSUtil.h>#include<DXUtil.h>#include<DSUtil.cpp>#include<DXUtil.cpp>#pragmacomm 阅读全文
posted @ 2010-08-12 15:09 一个人的天空@ 阅读(2524) 评论(0) 推荐(0)
RTSP实例解析
摘要:核心提示:rtsp简介(ZT)RealTimeStreamingProtocol或者RTSP(实时流媒体协议),是由Realnetwork和Netscape共同提出的如何有效地在IP网络上传输流媒体数据的应用层协议。RTSP提供一种可扩展的框架,使能够提供能控制的,按需传输实时数据,比如音频和视频文件rtsp简介(ZT)RealTimeStreamingProtocol或者RTSP(实时流媒体协议),是由Realnetwork和Netscape共同提出的如何有效地在IP网络上传输流媒体数据的应用层协议。RTSP提供一种可扩展的框架,使能够提供能控制的,按需传输实时数据,比如音频和视频文件。源数 阅读全文
posted @ 2010-08-12 11:35 一个人的天空@ 阅读(44332) 评论(3) 推荐(2)
Visual Studio 2005报错两则
摘要:1.VisualStudio2005中,关于堆溢出(Stackoverflow)问题的解决(1)出现如下类似提示:test.exe中的0x00417be5处未处理的异常:0xC00000FD:Stackoverflow,其中,0x______的值依具体情况而不同。原因:很简单,主要原因有两种,一种是程序访问了非法地址,另一种是程序的Stack不够用了。这里只讨论后一种情况。解决办法:找到程序中new大数组或者定义大数组的地方,基本上问题出在那里。解决时,到工程属性System选项,把Stack设置大一些就可以了。(2)vc6.0中可以通过以下进行设置:project->setting-& 阅读全文
posted @ 2010-08-06 11:23 一个人的天空@ 阅读(681) 评论(0) 推荐(0)
VC++的dll中接收消息
摘要:LRESULTCALLBACKMessageWinProc(HWNDhwnd,//handletowindowUINTuMsg,//messageidentifierWPARAMwParam,//firstmessageparameterLPARAMlParam//secondmessageparameter)//用于处理消息窗口接收到的消息{switch(uMsg){caseWM_CLOSE:DestroyWindow(hwnd);break;caseWM_GRAPHNOTIFY://Dothingsbreak;caseWM_DESTROY:PostQuitMessage(0);break; 阅读全文
posted @ 2010-08-04 15:07 一个人的天空@ 阅读(1821) 评论(0) 推荐(0)
How-to compile MPC-HC
摘要:PartA:PreparingtheVisualStudioenvironment.1.InstallVisualC++2008,partoftheVisualStudiopackagedownloadablehere:URL:http://msdn.microsoft.com/en-us/evalcenter/bb633753.aspx).Note:Expresseditionwon'twork(it'smissingMFC,whichMPC-HCuses).2.InstallServicePack1(SP1)forVisualStudio2008andalltheVisua 阅读全文
posted @ 2010-08-04 12:41 一个人的天空@ 阅读(1412) 评论(0) 推荐(0)