|
#1
|
|||
|
|||
Кодеки..
Всем привет! Хотела узнать мне нужно подключить видео большего объема, можно в прогу подключить кодеки для воспроизведения. Или подключить какой нибуть готовый проигрыватель.
Посоветуйте пожалуйста, а то мне диплом надо написать. |
#2
|
||||
|
||||
MediaPlayer с вкладки System не подойдет?
|
#3
|
||||
|
||||
DirectShow
Можно попробовать используя MPlayer или напрямую через DirectShow.
Код:
uses ...DShow, ActiveX, ComObj; procedure TForm1.Button1Click(Sender: TObject); var MyGraphBuilder: IGraphBuilder; MyMediaControl: IMediaControl; VideoWindow: IVideoWindow; begin CoInitialize(nil); {получаем интерфейс IGraphBuilder} CoCreateInstance(CLSID_FilterGraph, nil, CLSCTX_INPROC_SERVER, IID_IGraphBuilder, MyGraphBuilder); {вызываем RenderFile - граф фильтров строится автоматически} MyGraphBuilder.RenderFile('C:\Program Files\Borland\Delphi5\Demos\Coolstuf\cool.avi', nil); {получаем интерфейс ImediaControl} MyGraphBuilder.QueryInterface(IID_IMediaControl, MyMediaControl); {Примечание - MyMediaControl - переменная типа IMediaControl} {получаем интерфейс IVideoWindow} MyGraphBuilder.QueryInterface(IID_IVideoWindow, VideoWindow); {Примечание - VideoWindow - переменная типа IVideoWindow} {располагаем окошко с видео на панель} VideoWindow.Set_Owner(Self.Panel1.Handle); VideoWindow.Set_WindowStyle(WS_CHILD or WS_CLIPSIBLINGS); VideoWindow.SetWindowPosition(0, 0, Panel1.ClientRect.Right, Panel1.ClientRect.Bottom); {проигрываем видео} MyMediaControl.Run; ShowMessage('Нажмите OК'); CoUninitialize; end; Программирование - это искусство и наш смысл жизни. |
#4
|
|||
|
|||
Выкладывайте все что у кого есть, а я уже разберусь что подойдет, а что нет.
Всем большое спасибо, что помогаете мне |
#5
|
||||
|
||||
Вот небольшой пример (для начала) - Player.zip
|
#6
|
||||
|
||||
Цитата:
Я, обычно в таких случаях, использую Windows Media Player. Подключить его пожно по средствам импорта ActivеX (но тут тоже есть один недостаток - программа не будет загружаться на компе без установленного WMP версии 7(или 9... не помню уже) и выше)). Далее настраиваешь его по своему усмотрению (можно вкл/выкл автостарт, изменить громкость, показать/скрыть панель управления и т.п.). Потом просто открываешь видео файл (WMP1.URL:= OpenDialog1.FileName;) и управляешь воспроизведением видео командами: wmp1.controls.play; wmp1.controls.pause; wmp1.controls.stop; Для определения длительности фильма: wmp1.currentMedia.duration; //Double wmp1.currentMedia.durationString; //WideString Для определения позиции: wmp1.controls.currentPosition; //Double wmp1.controls.currentPositionString; //WideString Для установки WMP: В меню Delphi выбираешь Component->Import ActivX Control Далее вибарешь Windows Media Player (файл C:\WINDOWS\System32\wmp.dll) и устанавливаешь полученный компонент (по умолчанию он будет храниться в папке Delphi\Imports в виде PAS файла) |
#7
|
||||
|
||||
to Karsh
ты прав - Windows Media Player тоже неплохой и простой вариант. Однако, не зная точной постановки задачи, сложно сказать, что лучше… |
#8
|
|||
|
|||
Karsh расскажи поподробней про Windows Media Player в Delphi.
Или кто нибудь расскажите пожалуйста!! |
#9
|
|||
|
|||
Цитата:
|
#10
|
|||
|
|||
Все гораздо проще.
Пишешь плеер через DirectX (в инете полно примеров этого дела). Соответсвенно, получаешь голый проигрыватель, к которому рисуешь тот интерфейс, который хочешь. Кстати, WMP проигрывает файлы именно так. |
#11
|
|||
|
|||
Цитата:
У меня следующая проблема: TMediaPlayer воспроизводит по умолчанию файлы avi, а задача поставлена - работать с файлами mp4. Настроил фильтр OpenDialog на mp4, но , как правило вместо воспроизведения файла, получаю сообщение "Не удается определить тип устройства по указанному расширению файла" или черный прямоугольник на панели. Что нужно предпринять в этой ситуации, чтобы воспроизводить mp4. Не обижайтесь - я этот вопрос продублирую отдельной темой. Дико поджимают сроки! Буду искреенне благодарен за конкретные советы. |
#12
|
|||
|
|||
Как проиграть WMV
Подскажите, пожалуйста, есть ли возможность проиграть в программе wmv файлы, и как их связать с программой (может в res файл закинуть?)?
Особенно буду благодарен, если подскажите КАК это сделать. |
#13
|
|||
|
|||
Используй ТMediaPlayer с закладки System, а как его юзать почитай в похожих темах
|