随笔分类 -  DirectX,OpenGL,ffmpeg,mencoder

利用Directsound编程实现实时混音
摘要:在游戏开发中比较常用的音效素材都是比较短的,所以一般常用的API是playsound()函数,比如我们要在游戏背景中播放一个test.wav音效素材,只要简单的调用下面的函数即可 PlaySound("test.wav",NULL,SND_FILENAME|SND_ASYNC);   如此简单,事实上我们看到,国内的游戏大致上都可以用PlaySound()搞定。但是既然是简单,从功能上就要受限了,... 阅读全文

posted @ 2009-12-29 14:32 与时俱进 阅读(1212) 评论(0) 推荐(0) 编辑

DirectSound学习笔记(6):创建辅助缓冲区
摘要:DirectSound缓冲区 DirectSound缓冲区对象控制波形数据从源到目的地的传播。源可能是一个合成器,另一个合成器,一个WAV文件,或一个资源。对于大多数合成器,目的地是一个称作主缓冲区的混合装置。从主缓冲区开始,数据传输到硬件,由硬件将采样转换为声波。 缓冲区基础 你的应用程序必须创建至少一个辅助缓冲区来存储合播放单独的声音。一个辅助缓冲区能够在整个应用程序生命周期内存在,或者在不再... 阅读全文

posted @ 2009-12-29 14:30 与时俱进 阅读(1402) 评论(0) 推荐(0) 编辑

DirectSound学习笔记(7):缓冲区操作
摘要:填充和播放静态缓冲区 向一个静态缓冲区载入数据是包含三个步骤:1.使用IDirectSoundBuffer8::Lock将整个缓冲区锁定。你指定缓冲区中你打算开始写的偏移位置(通常为0),并返回该点的内存地址。2.使用标准的内存拷贝程序将音频数据写入返回的地址中。3.使用IDirectSoundBuffer8::Unlock为缓冲区解锁。 下面的例子显示了这些步骤,其中lpdsbStatic是一个... 阅读全文

posted @ 2009-12-29 14:30 与时俱进 阅读(2298) 评论(0) 推荐(0) 编辑

DirectSound学习笔记(5):使用WAV数据
摘要:使用WAV数据 在Windows 驱动模型(WDM)中,DirectSound硬件缓冲区能够播放任何未压缩或压缩的声音格式,这些格式能够被一个WAVEFORMATEX或 WAVEFORMATEXTENSIBLE结构描述,并由硬件支持。软件缓冲区和非WDM硬件缓冲区只支持8位和16位未压缩格式。 波形(WAV)数据通常储存在资源交换文件格式(RIFF)的文件或资源中。数据包括一个WAV格式描述,包含... 阅读全文

posted @ 2009-12-29 14:29 与时俱进 阅读(1197) 评论(0) 推荐(0) 编辑

DirectSound学习笔记(4):设备性能
摘要:设备性能 DirectSound使你的应用程序可以检查声音设备的硬件性能。许多应用程序 不需要这么做,因为DirectSound自动利用任何可用的硬件加速。然而,性能良好的应用程序能够使用这些信息,根据可用的硬件扩展它们的声音需求。 比如,如果硬件混频可用,一个应用程序可能选择播放多道声音。 在调用DirectSoundCreate8 函数创建一个设备对象后,你的应用程序能够通过调用IDirect... 阅读全文

posted @ 2009-12-29 14:28 与时俱进 阅读(568) 评论(0) 推荐(0) 编辑

DirectSound学习笔记(3):协作级别
摘要:协作级别 因为Windows是一个多任务环境,多个应用程序可能在任意时刻对一个设备驱动 器进行操作。虽然使用协作级别,DirectX仍然确保每个应用程序不能以错误方式或在错误时刻访问设备。每个DirectSound应用程序都有一个协 作级别,用于决定它被允许访问设备的程度。 在创建一个设备对象后,你必须使用 IDirectSound8::SetCooperativeLevel 方法为这个设备设置协... 阅读全文

posted @ 2009-12-29 14:27 与时俱进 阅读(954) 评论(0) 推荐(0) 编辑

DirectSound学习笔记(2):创建设备对象
摘要:创建设备对象 创建设备对象最简单的方式是使用 DirectSoundCreate8 函数。函数的第一个参数指定了与对象关联的设备的GUID。你能够通过枚举设备获取这个GUID,也可以传递以下GUID中的一个来指定一个默认设备。 GUID 定义 描述 DSDEVID_DefaultPlayback 默认系统音频设备。你也可以传入一个空指针来指定这个设备。默认设备是枚举到的“主要Dir... 阅读全文

posted @ 2009-12-29 14:26 与时俱进 阅读(1054) 评论(0) 推荐(0) 编辑

DirectSound学习笔记(1):枚举声音设备
摘要:DirectSound设备 DirectSound设备对象表示一个播放设备,它被用来管理设备和创建声音缓冲区。 多个应用程序能够为相同的声音设备创建对象。当输入集中于应用程序间的变化时,音频输出自动从一个应用程序流转换到其他应用程序流。因此,当输入集中于变化时,应用程序不必反复地播放和暂停它们的缓冲区。 枚举声音设备 如果你的程序只是简单地通过用户首选设备来播放声音,那么没有必要去枚举可用的设... 阅读全文

posted @ 2009-12-29 14:21 与时俱进 阅读(694) 评论(0) 推荐(0) 编辑

Converting , extracting preview image in asp.net via ffmpeg
摘要:Introduction Well in this article I’ll talk about how using ffmpeg with asp.net , for converting video , extracting preview image and …. There are three way to using ffmpeg in your websi... 阅读全文

posted @ 2009-12-02 23:16 与时俱进 阅读(913) 评论(0) 推荐(0) 编辑

Media file conversion Using FFMPEG & C#
摘要:using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts... 阅读全文

posted @ 2009-12-02 23:07 与时俱进 阅读(394) 评论(0) 推荐(0) 编辑

FLV Flash video streaming with ASP.NET 2.0, IIS and HTTP handler
摘要:Using this HTTP handler you can easilyFLV streaming downloads just like video.google.com does.All you need is to install on your IIS 5.0/6.0 the following HTTP handler and to get this to work correctl... 阅读全文

posted @ 2009-12-02 23:02 与时俱进 阅读(576) 评论(0) 推荐(0) 编辑

NET 2.0(C#)调用ffmpeg处理视频的方法
摘要:.NET 2.0 调用FFMPEG,并异步读取输出信息的代码... public void ConvertVideo() { Process p = new Process();//建立外部调用线程 p.StartInfo.FileName = @"c:\ffmpeg.exe";//要调用外部程序的绝对路径 p.StartInfo.Arguments = "-i XXXXXXXXXXXXXX";/... 阅读全文

posted @ 2009-12-02 22:59 与时俱进 阅读(706) 评论(0) 推荐(0) 编辑

用mencoder解决ffmpeg转换wmv/asf to flv花屏的问题,并支持rm/rmvb
摘要:SS/XS里面教我们的例子是用ffmpeg的,但是转换wmv和asf时经常出现花屏现像,网上查了资料调整参数发现无效后来用了下mencoder,转换是慢了点,但是质量不错,至少试了十来个wmv/asf还没看到花屏,并意外发现转换后的flv文件比ffmpeg转出来的小。值得一提的是,mencoder比ffmpeg慢,占用系统资源也相对大一点。也许是我用的参数质量比较高,大家有空可以调整参数试试。改了... 阅读全文

posted @ 2009-12-02 22:48 与时俱进 阅读(2622) 评论(0) 推荐(0) 编辑

在线转FLV,支持RM,RMVB,RV,WMV9等所有媒体格式。
摘要:在线转FLV,支持RM,RMVB,RV,WMV9等所有媒体格式。在 线转FLV目前很多网站都实现,但是火大的是他们并不会把这技术开公,鸟火。大家都知道用FFMPEG可以转FLV,可以抓图,但是不支持RM,WMV9 等格式,有人说可以实现支持RM,WMV9等,要自己开发,俺们不会编程,可怜,自己开发的事就别想了。那有什么方法可以支持所有格式在线转FLV呢,用 一个软件转FLV的我不知道,但是我知道用... 阅读全文

posted @ 2009-12-02 22:47 与时俱进 阅读(3862) 评论(0) 推荐(0) 编辑

Asp.net 在线转Flv
摘要:实际上是利用.Net中的Process对象来实现的。   string str=@"d:\test.avi d:\test_allen.flv";   RunFFMpeg(str);   //运行FFMpeg的视频解码,   public void RunFFMpeg(string strCmd)   {   //创建并启动一个新进程   Process p = new Process();   ... 阅读全文

posted @ 2009-12-02 22:43 与时俱进 阅读(304) 评论(0) 推荐(0) 编辑

ffmpeg参数解释--中文详细
摘要:a) 通用选项-L license-h 帮助-fromats 显示可用的格式,编解码的,协议的...-f fmt 强迫采用格式fmt-I filename 输入文件-y 覆盖输出文件-t duration 设置纪录时间 hh:mm:ss[.xxx]格式的记录时间也支持-ss position 搜索到指定的时间 [-]hh:mm:ss[.xxx]的格式也支持-title string 设置标题-au... 阅读全文

posted @ 2009-12-02 22:41 与时俱进 阅读(3822) 评论(0) 推荐(0) 编辑

Mono, OpenGL and GTK#
摘要:If you want to integrate OpenGL in your C# based Application you currently only have the option to use either FreeGLUT, SDL or the GtkGlArea Widget. In this example i show you how to use the GtkGlArea... 阅读全文

posted @ 2009-10-17 22:16 与时俱进 阅读(1042) 评论(0) 推荐(0) 编辑

visual studio2008 OpenGL开发配置
摘要:visual studio2008发布已经很久了,但是Google了一下却没有多少篇文章讲关于配置OpenGL环境的,强大的visual studio2008已经非常人性化了,比起其他开发工具来 说,visual studio2008的OpenGL配置实在太简单了,下面就setp by setp地教大家配置,首先下载附件中的OpenGL库,解压缩后,把H-files里面的文件copy到C:\Pro... 阅读全文

posted @ 2009-10-17 22:09 与时俱进 阅读(407) 评论(0) 推荐(0) 编辑

Visual C#使用DirectX实现视频播放
摘要:很多人第一次接触到DirectX大都是通过游戏,至于安装、升级DirectX的原因无非是满足游戏运行的需要。Direct X其实是微软公司推出的一个为Windows平台的多媒体API函数库,它提供标准接口来与显卡和声卡、输入设备等进行交互。如果没有这组标准API函数 库,那你就需要为每一种显卡、声卡的每个组合和每种类型的键盘、鼠标和游戏杆编写不同的代码。这不又回到了以前的Dos时代。为了解决这... 阅读全文

posted @ 2009-10-17 11:07 与时俱进 阅读(774) 评论(0) 推荐(1) 编辑

用c#进行directx 3D编程:实现texture贴图的alpha通道
摘要:接触directX 3D已经有1个多月了。自己做的一个三维控件终于完成,不过还有些让人头痛的bug来修改.今天给大家写的是是现在3d里的texture贴图,并实现了其半透明效果。在这个例子里,我绘制了一个矩形,贴上了一张带alpha通道的图片,并绘制了一个三角形,透过贴图可以看到此三角形。例子的效果图如下:用到的图片pic.bmp如下:一,首先保证你机子上装了directx,没装的赶紧下载去装。二... 阅读全文

posted @ 2009-10-17 10:59 与时俱进 阅读(6111) 评论(0) 推荐(0) 编辑

友情链接:同里老宅院民居客栈