Приостановить и возобновить захват видео в реальном времени с веб-камеры с помощью DirectX.capture

#c# #windows #directx #video-capture

#c# #Windows #directx #захват видео

Вопрос:

привет, я перехожу по этой ссылке http://www.codeproject.com/KB/directx/directxcapture.aspx

для захвата данных с веб-камеры.Работает нормально, но когда я приостанавливаю и возобновляю файл, содержащий данные, его размер увеличивается, но старые данные теряются, и сохраняются только новые данные.

кто-нибудь может указать мне на рабочий пример / учебник, где работает функция паузы.

я перепробовал / искал много ссылок, но по-прежнему нигде не нашел.

кто-нибудь может мне помочь!!!

Ответ №1:

Комментарии:

1. Спасибо CharlesB за ссылки, но комментарии не решили мою проблему. Всякий раз, когда я нажимаю на паузу, генерируется файл ew avi. Если я нажимаю на resume, создается новый файл, отбрасывающий старый сохраненный. Я пытаюсь переименовать и сохранить копии и объединить их, когда пользователь останавливает изменение порядка. Давайте посмотрим, как это работает. Если у вас есть какие-либо другие идеи, пожалуйста, дайте мне знать. До тех пор я пытаюсь….

2. Чарльз по-прежнему не удается выполнить функцию приостановки, каждый раз, когда я приостанавливаю поток, а затем возобновляю, размер файла определенно увеличивается, но он не содержит предыдущих данных. он потерян.можете ли вы помочь. Предоставленные вами ссылки мне не помогают.

3. @Swati не может вам помочь, поскольку я не знаю DirectX, но отредактируйте свой вопрос с учетом возникшей у вас проблемы, и, несомненно, вы получите помощь от других

Ответ №2:

Я попробовал приостановить поведение directShow.net но почему-то это не сработало.

когда я приостановил, был создан файл avi, а когда я возобновил, я обнаружил, что новое содержимое записано в предыдущий файл. размер файла увеличился, но старое содержимое было удалено.

Итак, я попробовал это:

 1) When i paused a file say test.avi was generated.
2) when i resumed i renamed test to test1.avi and created new test.avi 
file and merged them when user clicks on stop.
  

Таким образом, я добился функции паузы. хотя это косвенно, но у меня все еще работает..
надеюсь, я смог реализовать прямой способ.