Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.11;
Скачать: CL | DM;

Вниз

Мучения с видео :)   Найти похожие ветки 

 
Ray ©   (2006-05-22 20:40) [0]

1.Как узнать, какое в загружаемом .avi разрешение и частота кадров?
2.Как вывести отдельный указанный кадр в виде стоп-кадра?
3.Как его сохранить в Image?


 
programania ©   (2006-05-22 20:52) [1]

Вот пример из книги "win32 Api в Delphi" для Delphi7 8кб
В нем определяется число кадров в фильме его длительность и
сохраняется в bmp кадр соответствующий trackBar
http://programania.com/avi2bmp.zip


 
Desdechado ©   (2006-05-22 21:10) [2]

> Как вывести отдельный указанный кадр в виде стоп-кадра?
Многие кодеки хранят не кадр целиком, а его отличие от какого-то базового кадра. Причем этот базовый определяется при кодировании исходя из динамичности сцены, но не реже, чем некоторое число. Поэтому получить небазовый кадр можно только путем просчета всех кадров до нужного начиная с базового.
А вообще многое от кодека зависит.

> Как его сохранить в Image?
Image ничего не кохраняет, он показывает.


 
Ray ©   (2006-05-23 21:59) [3]

Ответ:

Poz:=CurPoz.Frames+Trunc(fps*(CurPoz.Seconds+60*CurPoz.Minutes+360*CurPoz.Hours));
With MediaPlayer do
 begin
  StartPos:=Poz;
  EndPos:=Poz+1;
  Play;
 end;

И всего-то :)


 
Ray ©   (2006-05-23 22:06) [4]

Возвращаюсь к п.3
Вывожу видео на панель:

 With MediaPlayer do
     begin
      FileName:=BackgroundAVIFileName;
      TimeFormat:= tfFrames;
      Display := PreviewForm.VideoPanel;
      DeviceType:= dtAutoSelect; //set Device compatibility to AVI
      Open();
      DisplayRect:=PreviewForm.VideoPanel.ClientRect;
     ...
    end;

Видео выводится, но у меня на этой панели еще лежат Image, в которых после вывода видео рисуется текст надписей.

Мне надо вывести на этот кадр надписи.

Вместо этого получается, что мигнут надписи, а потом все закрывает кадр видео. Если по нему провести посторонним окном, видео стирается и появляются надписи.
Как сделать, чтобы получилось как мне надо?


 
Ray ©   (2006-05-24 08:40) [5]

Кстати, вот тут исходник этого модуля (12 кБт).
http://r7.org.ru/files/trabla.zip


 
Ray ©   (2006-05-26 09:36) [6]


> Вот пример из книги "win32 Api в Delphi" для Delphi7 8кб
> В нем определяется число кадров в фильме его длительность
> и
> сохраняется в bmp кадр соответствующий trackBar
> http://programania.com/avi2bmp.zip


В общем, тут то, что надо. Но оно работает ДИКО ТОРМОЗНО :(
В плеерах же скакание по кадрам происходит довольно бодро. Интересно, как этого достичь?



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

Текущий архив: 2006.06.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.032 c
15-1148039880
iZEN
2006-05-19 15:58
2006.06.11
Сначала подсадить на иглу, а потом требовать деньги.


1-1146844311
Teddy24
2006-05-05 19:51
2006.06.11
Подключение к сетевому ресурсу БД из Delphi


2-1148803213
Fantasy
2006-05-28 12:00
2006.06.11
SQL


3-1144416948
Petrovski
2006-04-07 17:35
2006.06.11
Как установить CommandTimeout в ADOStoredProc?


3-1145411027
NigthSkif
2006-04-19 05:43
2006.06.11
SQL и обновление таблиц