Показать сообщение отдельно
  #4  
Старый 01.09.2008, 14:34
cadil cadil вне форума
Начинающий
 
Регистрация: 24.10.2007
Сообщения: 169
Репутация: 10
По умолчанию

Цитата:
Сообщение от lmikle
Поставить соотв. кодек. Дело в том, что этот медиаплеер является "оберткой" над системным плеером и поддерживает все то, что и системный.

Можно отказаться от собственно TMediaPlayer и написать свой на DirectX (там для собственно проигрывания нужно всего строк 10 кода).

Я, похоже, был неправ. Выбор avi-файла определяет процедура DimAvi:

Код:
// возвращает размер изображения AVI файла
procedure DimAvi(f: string; var w,h: integer);
var
    fst: TFileStream;
    // структуру заголовка AVI файла можно
    // найти, например, в  ..\CBuilder\Include\aviriff.h
    header: record
        RIFF: array[1..4] of char;    // 'RIFF'
        nu1:  array[1..5] of LongInt; // не используеися (в данном случае)
        AVIH: array[1..4] of char;    // 'avih'
        nu2:  array[1..9] of LongInt; // не используеися (в данном случае)
        Width:  LongInt;
        Height: LongInt;
    end;
....
 OpenDialog.Title := 'Выбор клипа';
    if not OpenDialog.Execute
      then exit;

    DimAvi(OpenDialog.FileName,width,height);
....
А как написать (или где можно найти) процедуру, чтобы задать mpeg2 или любой другой формат? Заранее спасибо!
Ответить с цитированием