Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.137.172.68] |
|
Сообщ.
#1
,
|
|
|
Добрый день.
Есть необходимость из TStream отображать видео. Выбрал для этой задачи BASS. Есть вот такой код: xVideo_Init(Form2.panel1.handle,0); if(chan<>0) then begin xVideo_StreamFree(chan); chan := 0; Stream.Free; end; Stream:= TMemoryStream.Create(); try FileStream := TFileStream.Create(Global_FileStart, fmOpenRead); except Exit; end; Stream.LoadFromStream(FileStream); FileStream.Free; chan := xVideo_StreamCreateFileMem(Stream.Memory,Stream.Size,Form2.panel1.Handle,0); if chan<>0 then begin xVideo_ChannelSetWindow(chan,0,Form2.panel1.Handle); Form2.ProgressBar1.max:=round(xVideo_ChannelGetLength(chan,xVideo_POS_SEC)); if(paused=true)then paused:=true; xVideo_ChannelPlay(chan); end; Проблема в том, что этот код прекрасно работает на моём компьютере, а вот на соседнем, с той же виндовс 10, уже не работает. Строка chan := xVideo_StreamCreateFileMem(Stream.Memory,Stream.Size,Form2.panel1.Handle,0); Возвращает 0. Более того, я начинал с примера работы через DirectShow Там есть такой код: {вызываем RenderFile - граф фильтров строится автоматически} MyGraphBuilder.RenderFile('C:\Program Files\Borland\Delphi5\Demos\Coolstuf\cool.avi', nil); На моём компе работает отлично, на втором - Не удаётся прорендерить файл. Подскажите пожалуйста, кто работал с видео, в чём может быть проблема, куда копать? Может каких-то длл не хватает, или ещё чего? Кто нибудь может сталкивался с такой проблемой? Добавлено От чего зависит успешное выполнение этих функций? В гугле и яндексе крайне мало информации по этому вопросу, а попыка вбить в гугл или яндекс строку "xVideo_StreamCreateFileMem" даёт вообще не тот результат, который ожидаешь... |