Вниз
Скачать: CL | DM;

Копировать в битмап фильм, играемый MediaPlayer   Найти похожие ветки 

← →
Юра   (2002-12-03 11:43) [0]

Есть медиаплеер, он проигрывает фильм. В качестве display указана panel1. Хотелось бы теперь по нажатию кнопки сграбить картинку с panel1 в bitmap. Пробовал разными способами - копирует все, кроме кадров из фильма, т.е. пока фильма нет - надписи на panel, перекрывающие окна диалога - копирует, фильм - нет.


← →
trotski   (2002-12-03 21:46) [1]

Попробуй выводить не на панель, а на TImage, тогда сможешь использовать SaveToFile(lalala), или у Панели поищи что-нибудь подобное


← →
LongIsland ©   (2002-12-04 11:38) [2]

http://www.sources.ru/delphi/graphics/capture_image_from_video.shtml


← →
Юра   (2002-12-04 15:54) [3]

LongIslandу - это хорошо, но что делать, если у меня нет устройства видеозахвата? Я хочу в произвольные моменты времени делать копию кадра, который играется стандартным проигрывателем, в bitmap и не более того.


← →
LongIsland ©   (2002-12-04 16:17) [4]

Для этого нужно узнать номер кадра и скинуть его в bmp


← →
Владимир Васильев ©   (2002-12-05 10:27) [5]

Вам нужен, например, DSPack c http://www.progdigy.com/
см. пример PlayVideoCap


← →
Benedict   (2002-12-06 13:43) [6]

Дело в том, что здесь многое зависит от медиаплеера и фильма (точнее кодека к нему). Новейшие кодеки DivX, например, проигрывают фильм не на "поверхность" окна, а на оверлей DirectX
Поэтому попытка использовать для захвата GUI-шный Canvas не
проходит. Это относится и к стандартным программам GUI-захвата.
Даже использование DirectShow части DirectX в этом случае может провалиться. То есть кажется единственный разумный способ, как указал LongIsland, - разбирать АVI файл на кадры.


← →
Владимир Васильев ©   (2002-12-06 13:47) [7]

>Benedict
"использование DirectShow части DirectX " не может провалиться так как SampleGrabberFilter вы вставляете между декодером и рендерером и ISampleGrabber просто дает ссылку на текущий обработанный буфер



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
6-64275
KeLT
2003-01-29 13:17
2003.03.20
Помогите с ExitWindowsEx


3-63977
Vassiliy
2003-02-27 19:35
2003.03.20
dbExpress и TBcd


3-63962
Olivka
2003-02-22 21:49
2003.03.20
транзакции в IB (Firebird)


14-64375
бомонд
2003-03-05 14:28
2003.03.20
Сенокос


3-63986
Zergling
2003-02-28 06:45
2003.03.20
Транзакции




   Наверх