Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 04.01.2017, 17:11   #1
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 467
Репутация: 101
По умолчанию не показывает видео на Windows 7 Home Basic

Здравствуйте.
Вот такой тестовый код:
Код:

function buildGraph: HRESULT;
begin
    Result := CoCreateInstance(CLSID_FilterGraph, nil, CLSCTX_INPROC_SERVER ,
                           IID_IGraphBuilder, pGraphBuilder);
  Result := CoCreateInstance(CLSID_CaptureGraphBuilder2, NIL,
                          CLSCTX_INPROC_SERVER, IID_ICaptureGraphBuilder2,
                         pCaptureGraphBuilder);
  pCaptureGraphBuilder.SetFiltergraph(pGraphBuilder);
  Result := pGraphBuilder.AddSourceFilter(StringToOleStr(FileName),'source',fsource);
  Result :=  coCreateInstance(CLSID_VideoRenderer, nil,
                                   CLSCTX_INPROC_SERVER,
                                   IID_IBaseFilter, fVideoRenderer);
  pGraphBuilder.AddFilter(fVideoRenderer,'Video renderer');

  Result := CoCreateInstance(CLSID_FfdshowVideoDecoder,nil,CLSCTX_INPROC_SERVER,
                               IID_IBaseFilter,fVideoDecoder);
  pGraphBuilder.AddFilter(fVideoDecoder,'video decoder');
  Result := pCaptureGraphBuilder.RenderStream(nil,@MEDIATYPE_VIDEO,
                                   fSource,fVideoDecoder,fVideoRenderer);
  pGraphBuilder.QueryInterface(IID_IBasicVideo,pBasicVideo);
  pGraphBuilder.QueryInterface(IID_IVideoWindow,pVideoWindow);
  pGraphBuilder.QueryInterface(IID_IMediaControl,pMediaControl);

  pVideoWindow.put_Owner(Form1.pnl1.Handle);
  pVideoWindow.put_WindowStyle(WS_CHILD or WS_CLIPSIBLINGS);
  pVideoWindow.SetWindowPosition(0,0,Form1.pnl1.Width,Form1.pnl1.Height);
  pMediaControl.Run;
end;

Если обойтись без длинной и унылой предыстории, то на Windows 7 Ultimate работает, а на Windows 7 Home Basic нет. На других не проверял. В данный момент компилирую на Delphi XE10 Seattle Lite.
Result на каждой строчке равен 0.
BLACK_RAIN вне форума   Ответить с цитированием
Старый 04.01.2017, 17:14   #2
NetSpace
Профессионал
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Адрес: п.Путеец, Печорский р-н
Сообщений: 1,104
Репутация: 318
По умолчанию

на Базовой кодеки не стоят или дрова какие-нибудь?
лучше кинь саму программу, чтоб запустил народ и проверил у себя. авось, у кого-нибудь базовая стоит. ну и мы проверим работоспособность
__________________
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума   Ответить с цитированием
Старый 04.01.2017, 17:49   #3
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 13,546
Репутация: 2646

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

Какое именно издание?
Если N (не обязательно Home Basic), то там вроде нет виндовского плеера и кодеков по умолчанию.
Alex11223 на форуме   Ответить с цитированием
Старый 04.01.2017, 18:01   #4
Pavia
Лис
Профессионал
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 1,110
Репутация: 1199
По умолчанию

BLACK_RAIN
Под виртуалкой запускаешь?
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума   Ответить с цитированием
Старый 04.01.2017, 18:26   #5
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 467
Репутация: 101
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
BLACK_RAIN
Под виртуалкой запускаешь?
И под виртуалкой и на двух реальных компах.
НО. У меня есть довольно большой старый проект плеера на Delphi7. Там очень много длинного и запутанного кода (я решил переписать всё заново). Этот проект работает. Я не пойму, в чем разница. Код ведь тот же, но там дофига всякой логики прописано (скриншоты, выбор кодеков и т.п.). А если код из первого поста откомпилить в D7 - он не работает. Это как понимать?
Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Какое именно издание?
Если N (не обязательно Home Basic)
а чем это по-быстрому проверить?
BLACK_RAIN вне форума   Ответить с цитированием
Старый 04.01.2017, 18:31   #6
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 467
Репутация: 101
По умолчанию

Цитата:
Сообщение от NetSpace Посмотреть сообщение
лучше кинь саму программу, чтоб запустил народ и проверил у себя. авось, у кого-нибудь базовая стоит. ну и мы проверим работоспособность
вот: https://yadi.sk/d/5Zxl3fU336uAYz
файлы открывать перетаскиванием.
Добавил мессаги к двум возможным ошибкам.

Последний раз редактировалось BLACK_RAIN; 04.01.2017 в 18:33.
BLACK_RAIN вне форума   Ответить с цитированием
Старый 04.01.2017, 18:56   #7
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 13,546
Репутация: 2646

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
а чем это по-быстрому проверить?
должно быть указано в свойствах системы.
Ну там где лого, активация, проц/память и т.п.
Alex11223 на форуме   Ответить с цитированием
Старый 04.01.2017, 19:26   #8
Pavia
Лис
Профессионал
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 1,110
Репутация: 1199
По умолчанию

BLACK_RAIN
Ваши показания не сходятся.
У вас в первом сообщении граф захвата IID_ICaptureGraphBuilder2, а вы толкуете про вывод. Как изволите вас понимать?

Цитата:
И под виртуалкой и на двух реальных компах.
А вы знаете что на виртуалках кривые драйвера?
Из-за кривых драйверов может неработать рендер по умолчанию. Надёжнее проверять на GDI.

Какой DirectX стоит и какая видеокарта?

Во-вторых какой набор кодеков установлен? Какой формат видеофайла?

В-третьих MPEG-2 может не выдавать ошибки по формату файла до тех пор пока не начнётся проигрывание файла.

А под MPEG-2 майкрософт понимает кучу всяких форматов видеофайлов.
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 04.01.2017 в 19:30.
Pavia вне форума   Ответить с цитированием
Старый 04.01.2017, 20:27   #9
NetSpace
Профессионал
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Адрес: п.Путеец, Печорский р-н
Сообщений: 1,104
Репутация: 318
По умолчанию

мда... 3 МБайта архив и 12 Мбайт сама программа - форма+панель, которая ничего не делает... начало для саморазвития есть! причём, нехилое...
W7x32 Ultimate. итог:не работает для AVI и MP4 форматов
__________________
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума   Ответить с цитированием
Старый 04.01.2017, 20:39   #10
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 13,546
Репутация: 2646

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от NetSpace Посмотреть сообщение
3 МБайта архив и 12 Мбайт сама программа
и? это много?

вообще наверно просто дебаг сборка
Alex11223 на форуме   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
windows xp home edition pavelslap Windows 2 30.06.2011 08:06
не показывает видео mrs.rafanadal Мультимедиа в Delphi 11 29.04.2009 17:21
Vista Home Basic 64-bit NIKITUS Windows 4 31.03.2009 18:44




16:39.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru