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

Изменение скорости воспроизведения видео   Найти похожие ветки 

← →
Sergey   (2008-04-13 15:16) [0]

Не подскажите, как сделать ползунок, при перемещении которого изменялась бы скорость воспроизведения видео-файла?


← →
AbrosimovA   (2008-04-14 16:07) [1]

Для изменения скорости воспроизведения DVD используется IDVDControl2:



procedure PlaySpeedDVD(Speed: double; Direction: integer);
var
 DvdControl2: IDVDControl2;
 DvdCmd: IDVDCmd;
begin
if Succeeded(FilterGraph.QueryInterface(IDVDControl2, DVDControl2)) then
 begin
   case Direction of
     0: DvdControl2.PlayForwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
     1: DvdControl2PlayBackwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
   end;
   DvdControl2 := nil;
   DvdCmd := nil;
 end;
end;

PlaySpeedDVD(3.0, 0); // Перемотка вперёд (скорость 3х)
PlaySpeedDVD(2.0, 1); // Перемотка назад (скорость 2х)


Для изменения скорости воспроизведения файла используется IMediaSeeking:



procedure PlaySpeedFile(Speed: double);
var MediaSeeking: IMediaSeeking;
begin
 if Succeeded(FilterGraph.QueryInterface(IMediaSeeking, MediaSeeking)) then
 begin
   MediaSeeking.SetRate(Speed);
   MediaSeeking := nil;
 end;
end;

procedure PlaySpeedDVD(Speed: double; Direction: integer);
var
 DvdControl2: IDVDControl2;
 DvdCmd: IDVDCmd;
begin
if Succeeded(FilterGraph.QueryInterface(IDVDControl2, DVDControl2)) then
 begin
   case Direction of
     0: DvdControl2.PlayForwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
     1: DvdControl2PlayBackwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
   end;
   DvdControl2 := nil;
   DvdCmd := nil;
 end;
end;

PlaySpeedFile(3.0); // Перемотка вперёд (скорость 3х)



← →
AbrosimovA   (2008-04-14 16:09) [2]

Для изменения скорости воспроизведения DVD используется IDVDControl2:



procedure PlaySpeedDVD(Speed: double; Direction: integer);
var
 DvdControl2: IDVDControl2;
 DvdCmd: IDVDCmd;
begin
if Succeeded(FilterGraph.QueryInterface(IDVDControl2, DVDControl2)) then
 begin
   case Direction of
     0: DvdControl2.PlayForwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
     1: DvdControl2PlayBackwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
   end;
   DvdControl2 := nil;
   DvdCmd := nil;
 end;
end;

PlaySpeedDVD(3.0, 0); // Перемотка вперёд (скорость 3х)
PlaySpeedDVD(2.0, 1); // Перемотка назад (скорость 2х)


Для изменения скорости воспроизведения файла используется IMediaSeeking:



procedure PlaySpeedFile(Speed: double);
var MediaSeeking: IMediaSeeking;
begin
 if Succeeded(FilterGraph.QueryInterface(IMediaSeeking, MediaSeeking)) then
 begin
   MediaSeeking.SetRate(Speed);
   MediaSeeking := nil;
 end;
end;

procedure PlaySpeedDVD(Speed: double; Direction: integer);
var
 DvdControl2: IDVDControl2;
 DvdCmd: IDVDCmd;
begin
if Succeeded(FilterGraph.QueryInterface(IDVDControl2, DVDControl2)) then
 begin
   case Direction of
     0: DvdControl2.PlayForwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
     1: DvdControl2PlayBackwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
   end;
   DvdControl2 := nil;
   DvdCmd := nil;
 end;
end;

PlaySpeedFile(3.0); // Перемотка вперёд (скорость 3х)



← →
GladiatorX ©   (2008-04-14 16:12) [3]

Для изменения скорости воспроизведения DVD используется IDVDControl2:



procedure PlaySpeedDVD(Speed: double; Direction: integer);
var
 DvdControl2: IDVDControl2;
 DvdCmd: IDVDCmd;
begin
if Succeeded(FilterGraph.QueryInterface(IDVDControl2, DVDControl2)) then
 begin
   case Direction of
     0: DvdControl2.PlayForwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
     1: DvdControl2PlayBackwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
   end;
   DvdControl2 := nil;
   DvdCmd := nil;
 end;
end;

PlaySpeedDVD(3.0, 0); // Перемотка вперёд (скорость 3х)
PlaySpeedDVD(2.0, 1); // Перемотка назад (скорость 2х)


Для изменения скорости воспроизведения файла используется IMediaSeeking:



procedure PlaySpeedFile(Speed: double);
var MediaSeeking: IMediaSeeking;
begin
 if Succeeded(FilterGraph.QueryInterface(IMediaSeeking, MediaSeeking)) then
 begin
   MediaSeeking.SetRate(Speed);
   MediaSeeking := nil;
 end;
end;

procedure PlaySpeedDVD(Speed: double; Direction: integer);
var
 DvdControl2: IDVDControl2;
 DvdCmd: IDVDCmd;
begin
if Succeeded(FilterGraph.QueryInterface(IDVDControl2, DVDControl2)) then
 begin
   case Direction of
     0: DvdControl2.PlayForwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
     1: DvdControl2PlayBackwards(Speed, DVD_CMD_FLAG_Flush, DvdCmd);
   end;
   DvdControl2 := nil;
   DvdCmd := nil;
 end;
end;

PlaySpeedFile(3.0); // Перемотка вперёд (скорость 3х)




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

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



Память: 0.46 MB
Время: 0.003 c
15-1282879219
Дмитрий С
2010-08-27 07:20
2010.12.05
Оплата через assist или подобное.


15-1283083591
D.L.
2010-08-29 16:06
2010.12.05
Web-приложение


2-1284703280
Abcdef123
2010-09-17 10:01
2010.12.05
Как временно заморозить отрисовку формы?


15-1282647499
unisk
2010-08-24 14:58
2010.12.05
чего то вопросы не добавляются((


8-1208085390
Sergey
2008-04-13 15:16
2010.12.05
Изменение скорости воспроизведения видео




   Наверх