Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: WinAPI и системное программирование > Зависает программа вывода видео


Автор: краб 31.1.2011, 21:02
Ситуация такая:
Есть нормально работающая программа вывода видео от WEB камеры на Panel.
Сама по себе программа работает устойчиво, нареканий нет, вывод осуществляется по OnTimer c  довольно низкой частотой смены кадров -порядка долей Гц. За время вывода кадра  программа рисует на поверхности формы всякие геометрические фигуры: линии, окружности, дуги , выводит некоторую текстовую информацию и т.д. Это все делается в той-же procedure TForm1.Timer1Timer(Sender: TObject);
Результат такой: сначала нормальная работа, а  через 5..10 минут  после запуска программа зависает, причем зависает только с выведенными геометрическими фигурами или текстом. Сам по себе вывод видео работает сколь угодно долгое время.
Кто сталкивался с подобным явлением, подскажите пожалуйста, куда рыть.

Автор: Poseidon 2.2.2011, 13:35
Где-то утечка. Объект создается, но не уничтожается. А потом опять создается и т.д.

Добавлено через 10 секунд
Без кода трудно понять

Автор: краб 2.2.2011, 20:43
Цитата(Poseidon @ 2.2.2011,  13:35)
Где-то утечка. Объект создается, но не уничтожается. А потом опять создается и т.д.


Да, именно так: объекты создаются с кадровой частотой, но не уничтожаются.
Может вопрос поставить так: как уничтожать объекты в виде графических примитивов и текста?

Автор: Coder 9.2.2011, 14:32
Цитата(краб @  3.2.2011,  04:43 Найти цитируемый пост)
Может вопрос поставить так: как уничтожать объекты в виде графических примитивов и текста?

Все эти объекты удаляются с помощью функции - DeleteObject()

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)