vfw

    1热度

    1回答

    我真的很简单的程序添加一个音频流添加到一个AVI文件与预先存在的视频流。 问题是生成的文件包含视频流,但流中没有任何数据。 音频文件由DirectX示例中的SDKwavefile读取。 AVIFileInit(); PAVIFILE avi; AVIFileOpen(&avi, argv[1], OF_WRITE, NULL); CWaveFile wav; wav.Open(argv

    2热度

    1回答

    我有一个制作AVI电影的Delphi 6应用程序。我已经到了可以编写具有未压缩视频帧的AVI文件的程度。当我尝试创建一个压缩的视频流,我碰到一个错误AVIERR_MEMORY当我叫AVIStreamSetFormat(): hr := AVIStreamSetFormat( FAvi_.thePsCompressed, 0, @dsBmih, dsBm

    2热度

    1回答

    我正在尝试编写一个Delphi 6应用程序,该应用程序需要使用VFW服务将视频和音频写入AVI。我设法让视频流正常工作。它在VLC或Windows Media Player中运行良好。但是当我添加一个音频流并尝试播放输出AVI时,VLC播放器抱怨AVI文件被破坏。它会播放文件和视频看起来不错,但没有音频。我试图在写入视频流之前添加音频流,然后再添加音频流。都没有工作。 此外,如果我不添加音频流,我

    4热度

    1回答

    我有一串JPEG帧和伴随音频缓冲区,我想要写入视频文件。如果可能的话,我想让用户从可用的Windows编解码器中选择他们的格式,如果库/组件支持使用这些格式的话。如果没有,那么如果它可以创建像AVI,WMV或MOV格式文件流行的东西,那就没问题。有没有人知道一个好的库或组件与Delphi 6兼容,可以做到这一点?如果没有,C/C++示例也可以工作。

    0热度

    1回答

    我想写使用AVIStreamWrite AVI文件,但生成的AVI文件是有点乱了。 avi中的图像包含适当的图像和颜色,但视频的持续时间和速度已关闭。我录制了一段应该在7秒钟左右的视频,并在Windows资源管理器中查看文件属性,结果显示它有大约2秒的持续时间。当我在媒体播放器中播放它时,它太短了,似乎很快播放(视频中的动作就像快进)。我似乎也无法使用Media Player在视频中寻找。 下面是

    4热度

    1回答

    我有一个Delphi 6应用程序,要求用户使用AVISaveOptions()选择音频和视频压缩器。然后,我将每个选择的FOURCC ID存储在数据文件中。我想使用属于每个压缩机/过滤器的FOURCC ID来查找每个选择的过滤器友好名称,以便稍后可以向用户显示当前的选择,并在选定的FOURCC ID旁显示压缩机/过滤器友好名称。我怎样才能做到这一点? 注意我只想向用户显示在AVISaveOptio

    0热度

    1回答

    我正在写一个简单的AVI加载程序,以从AVI文件中获取每个帧并将其保存为OpenGL纹理。我正在使用VFW,并且AVIStreamRead未返回任何内容。这是我的代码,抓住每一帧: void CVideoControl::SetFrame(long frame) { HRESULT result; long bytes, samples; //Update var

    3热度

    1回答

    我发现一个堆栈溢出后用样本显示如何得到一个AVI文件的时间: Getting AVI file duration 我修改了它为我的目的,我的Delphi 6应用程序,并创建下面的代码。最初我在调用AviFileExit()之前删除了核心IAviFile指针的那一行。但是当我这样做时,当AviFileExit()被调用时,我得到了访问冲突。我恢复了这一行,访问冲突消失了。 为什么在调用AviFile

    0热度

    1回答

    我有两个不同的网络摄像头连接到我的电脑,但在运行下面的代码时选择它们时遇到问题。我包含了所有初始化例程,并且capDlgVideoSource调用的最后一行仅导致一个网络摄像头的视频源对话框出现,而不是我可以在其中进行选择的列表。 OS是WinXP的SP3 //Create invisible window to hold the capture window. hwnd = CreateWin

    0热度

    2回答

    我有一台IP摄像机将流式视频转换成公司提供给我的黑盒缓冲区代码。他们还向我提供了如何将缓冲区转换为无符号字符数组的示例代码。有了这个阵列,我可以创建一个AVI文件并保存视频缓冲区并创建一个视频文件。 for(unsigned short lLine = 0; lLine < mSizeY -1; lLine++) { NumOfLines = lLine; unsigned