0

ビデオを記録するために DirectShow のサンプル コードを使用しました。ただし、録画中にもビデオを表示したい。しかし、同時に行うことはできません。このエラーは常に次のように表示されます。

' Const VIDEODEVICE As Integer = 0
' zero based index of video capture device to use
Cursor.Current = Cursors.WaitCursor

If cam Is Nothing Then
    cam = New AsfFilter.Capture(VIDEODEVICE, textBox1.Text)
    previewCamera(PictureBox1) <----- this is my code regarding on previewing the video recording.
    cam.Start()

    button1.Text = "Stop"
    textBox1.[ReadOnly] = True
Else
    button1.Text = "Start"
    textBox1.[ReadOnly] = False

    ' Pause the recording
    cam.Pause()

    ' Close it down
    cam.Dispose()
    cam = Nothing
End If

Cursor.Current = Cursors.[Default]

エラー:

要求されたサービスを完了するには、システム リソースが不足しています。(HRESULT からの例外: 0x800705AA)

私は何を間違っていますか?誰かがこれを知っていましたか?

4

1 に答える 1

0

0x800705AA: ERROR_NO_SYSTEM_RESOURCES「要求されたサービスを完了するには、システム リソースが不足しています。」

知っておくべきことは次のとおりです。ビデオ キャプチャ デバイスは排他的アクセス リソースです。一度使用すると、別のフィルター グラフ (つまり、1 つのグラフを記録用に、もう 1 つのグラフを監視用) で同時に使用することはできません。ビデオ キャプチャをホストするには、単一のフィルタ グラフが必要です。そこから、Smart Tee Filter またはInfinite Pin Tee Filterを使用して、録画レッグとモニタリング レッグのビデオ フィードを複製できます。または、マルチグラフ ソリューションを使用して、単一のグラフで静止ビデオ キャプチャを実行します。

于 2013-01-18T06:00:11.737 に答える