在这个话题▼

使用ltmfCapture执行捕获并将其保存为WMV文件

  1. 创建的一个实例ltmfCapture类。这是使用Win32 CoCreateInstance函数完成,如下:

    C
    IltmfCapture * pCapture;CoCreateInstance (&CLSID_ltmfCapture NULL, CLSCTX_INPROC_SERVER &IID_IltmfCapture, (无效* *)&pCapture);
    c++
    IltmfCapture * pCapture;CoCreateInstance (&CLSID_ltmfCapture NULL, CLSCTX_INPROC_SERVER &IID_IltmfCapture, (无效* *)&pCapture);

  2. 定义通知窗口,接收捕获状态通知:

    C
    HWND hwndNotify;#定义WM_CAPTURENOTIFY (WM_USER + 1000)IltmfCapture_SetNotifyWindow (pCapture, ()hwndNotify WM_CAPTURENOTIFY);
    c++
    HWND hwndNotify;#定义WM_CAPTURENOTIFY (WM_USER + 1000)pCapture - > SetNotifyWindow (()hwndNotify WM_CAPTURENOTIFY);
    上面的代码指示捕获对象发送WM_CAPTURENOTIFY消息hwndNotify的窗口过程。窗口的按钮参数信息将包含通知代码。

    ✎注意

    捕获没有使用通知窗口,但是用户需要调查的对象状态确定何时捕获完成。

  3. 定义一个框架窗口的视频预览:

    C
    HWND hwndFrame;IltmfCapture_put_VideoWindowFrame (pCapture, ()hwndFrame);
    c++
    HWND hwndFrame;pCapture - > put_VideoWindowFrame (()hwndFrame);

    用户需要创建的窗口作为视频帧。ltmfCapture将这个窗口子类,因此不需要任何消息转发到ltmfCapture对象。默认情况下,ltmfCapture会自动最大化框架窗口内的视频。视频帧时将自动调整窗口大小的变化。

    ✎注意

    通知窗口和框架窗口的视频可以是相同的。

  4. 设置目标文件:

    C
    型型;型= SysAllocString (L“c: \ \ captured.wmv”);IltmfCapture_put_Target
    c++
    型型;::SysAllocString (L“c: \ \ captured.wmv”);pCapture - > put_TargetFile(型);::SysFreeString(型);

  5. 设置视频设备:

    C
    IltmfDevices *设备;IltmfCapture_get_VideoDevices (pCapture、设备);IltmfDevices_put_Selection(设备,0);IltmfDevices_Release(设备);
    c++
    IltmfDevices *设备;pCapture - > get_VideoDevices(设备);设备- > put_Selection (0);设备- >释放();

  6. 设置音频设备:

    C
    HIltmfDevices *设备;IltmfCapture_get_AudioDevices (pCapture、设备);IltmfDevices_put_Selection(设备,0);IltmfDevices_Release(设备);
    c++
    IltmfDevices *设备;pCapture - > get_AudioDevices(设备);设备- > put_Selection (0);设备- >释放();

  7. 设置目标格式:

    C
    IltmfCapture_put_TargetFormat (pCapture ltmfCapture_TargetFormat_WMV);
    c++
    pCapture - > put_TargetFormat (ltmfCapture_TargetFormat_WMV);

  8. 开始捕获,调用StartCapture函数如下:

    C
    IltmfCapture_StartCapture (pCapture ltmfCapture_Mode_VideoAndAudio)
    c++
    pCapture - > StartCapture (ltmfCapture_Mode_VideoAndAudio);

  9. 停止捕获,调用StopCapture函数如下:

    C
    IltmfCapture_StopCapture (pCapture);
    c++
    pCapture - > StopCapture ();

  10. 释放捕获对象(和所有活动对象)当你完成。

目标格式

用于转换后的文件的格式。这包括文件格式,所使用的任何特殊设置格式,音频和/或视频编解码器是用于转换,任何特殊设置使用的编解码器。

编解码器

压缩机结合减压器、编码器和译码器,它允许您同样的数据压缩和解压。
LEADTOOLS媒体基金会C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2023领先的技术公司。保留所有权利。