Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Qt] и DirectShow, для win32 
:(
    Опции темы
Teran
  Дата 10.3.2009, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

Репутация: нет
Всего: 3



Здравствуйте.
Кто знает как подключить использование DirectShow в QT?

Прошу небольшой примерчик... smile 

Это сообщение отредактировал(а) Teran - 10.3.2009, 14:24


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
ecspertiza
Дата 10.3.2009, 14:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 3.11.2008
Где: г.Смоленск

Репутация: 4
Всего: 5



А тебе для чего? просто если я не ошибаюсь DirectShow это чисто виндовая тема а зачем на кроссплатформенной библиотеке юзать что то зависимое?


--------------------
С уважением,
мастер конфетного цеха!

онлайн компилер
залип
PM MAIL   Вверх
just_geek
Дата 10.3.2009, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 309
Регистрация: 13.12.2007

Репутация: 7
Всего: 10



phonon, да directshow 9 бэкэнд. Еще нужен dx sdk & vc++
PM MAIL   Вверх
Teran
  Дата 10.3.2009, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

Репутация: нет
Всего: 3



Цитата(ecspertiza @  10.3.2009,  14:32 Найти цитируемый пост)
А тебе для чего? просто если я не ошибаюсь DirectShow это чисто виндовая тема а зачем на кроссплатформенной библиотеке юзать что то зависимое?

Да мне нужно использовать граф DirectShow только для винды....


Цитата(just_geek @  10.3.2009,  14:34 Найти цитируемый пост)
phonon, да directshow 9 бэкэнд. Еще нужен dx sdk & vc++ 

Это все есть и под vc++ - использовать непроблема, но вот не сталькивался с самой реализацией подключения DirectShow в QT...
Как в QT можно подключить это?


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
just_geek
Дата 10.3.2009, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 309
Регистрация: 13.12.2007

Репутация: 7
Всего: 10



А что конкретно от DirectShow требуется? Проигрывание аудио/видео? Используешь phonon входящий в комплект Qt и все. Все работу он берет на себя.
PM MAIL   Вверх
Teran
Дата 10.3.2009, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

Репутация: нет
Всего: 3



Цитата(just_geek @  10.3.2009,  15:09 Найти цитируемый пост)
А что конкретно от DirectShow требуется? Проигрывание аудио/видео? Используешь phonon входящий в комплект Qt и все. Все работу он берет на себя. 

От диретшов беру многое, написание фильтров, подключение фильтров для захвата с веб камер и т.д.... , но Проигрывание аудио/видео впринципе не требуется...


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
pan2004
Дата 10.3.2009, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 357
Регистрация: 28.7.2007

Репутация: 6
Всего: 9



Цитата(just_geek @  10.3.2009,  14:34 Найти цитируемый пост)
Еще нужен dx sdk

DX Show входит в Platform SDK(not DirectX), и уже где то с 2004-2005 года.
И какие проблемы? Никто в принципе не запрещает использовать и Qt и DShow в своей программе, вещи не взаимоисключающие.


--------------------
Qt4/C++ fan
WinXP SP3: MSVC++2005 Qt4.5.1 Boost1.39
сыграем в дурака?
PM MAIL   Вверх
Teran
Дата 10.3.2009, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

Репутация: нет
Всего: 3



Цитата(pan2004 @  10.3.2009,  17:19 Найти цитируемый пост)
И какие проблемы? Никто в принципе не запрещает использовать и Qt и DShow в своей программе, вещи не взаимоисключающие.

Прошу кусочек кода....  smile 



p.s. попытался добавить 
Код

#include <QtGui/QApplication>
#include <windows.h>
#include <dshow.h>

и откомпилить новый пустой проект, так сразу накидало кучу ошибок...
windows.h и dshow.h нашел в папке инклудов MinGW


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Helmet
Дата 10.3.2009, 19:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 27.2.2009
Где: Someone's hea d

Репутация: нет
Всего: 1



Вообще не очень понимаю как QT может мешать работать DirectShow. Вот простейший пример (отлично скомпилировался студией).
Код

#include <QCoreApplication>
#include <iostream>
#include <windows.h>
#include <dshow.h>

#pragma comment(lib, "strmiids.lib")

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    
    IGraphBuilder * graphBuilder;
    IMediaControl * control;
    IMediaEvent * event;

    CoInitialize(0);
    CoCreateInstance(CLSID_FilterGraph, 0, CLSCTX_INPROC_SERVER, IID_IGraphBuilder, (void**)&graphBuilder);
    graphBuilder->QueryInterface(IID_IMediaControl, (void**)&control);
    graphBuilder->QueryInterface(IID_IMediaEvent, (void**)&event);
    
    graphBuilder->RenderFile(L"C:\\movie.avi", 0);
    control->Run();
    
    long code = 0;
    event->WaitForCompletion(INFINITE, &code);

    event->Release();
    control->Release();
    graphBuilder->Release();
    CoUninitialize();

    return a.exec();
}

Может дело в MinGW?
PM   Вверх
Teran
  Дата 11.3.2009, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

Репутация: нет
Всего: 3



Цитата(Helmet @  10.3.2009,  19:55 Найти цитируемый пост)
Может дело в MinGW? 

Возможно MinGw необходимо както еще настроить на нормальную работу....???

Провел исследование относительно dshow.h из MinGw инклудов и WinSDK.
Интересно то что например интерфейс IBaseFilter в хидерах MinGw встречается (strmif.h) НО нигде не обьявляется... т.е. при компиляции прога ругается на то что незнает что это такое... 
Так как тогда компилить MinGW -шные инклуды, если они неполные????
Кто нибудь знает как настроить или где попрописывать пути для нормальной работы MinGW???

Использую QTCreator или QDevelop

Это сообщение отредактировал(а) Teran - 11.3.2009, 11:16


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
just_geek
Дата 11.3.2009, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 309
Регистрация: 13.12.2007

Репутация: 7
Всего: 10



Попробовать обновить пакет winapi, если новее нету, то придется самому ковырять. Таким образом пришлось самому чинить кое-что и отсылать патч разработчикам, правда обновленная версия вышла спустя полгода :( . Либо воспользоваться vc++

Это сообщение отредактировал(а) just_geek - 11.3.2009, 11:24
PM MAIL   Вверх
Teran
Дата 11.3.2009, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

Репутация: нет
Всего: 3



Цитата(just_geek @  11.3.2009,  11:22 Найти цитируемый пост)
Либо воспользоваться vc++

Подскажите пожалуйста где нужно прописать пути в QT что бы при встрече 
Код

#include <QtGui/QApplication>
#include <windows.h>
#include <dshow.h>

windows.h и dshow.h брало не из C:\Qt\2009.01\mingw\include а например из с:\Program Files\Microsoft SDKs\Windows\v6.0\Include
?????

использую QTCreator


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
SABROG
Дата 11.3.2009, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

Репутация: 81
Всего: 91



Не умеет пока Qt работать с DirectShow на компиляторе MinGW. Т.к. не компилит он хедеры мягкотелых.
Знаю, что пропатченные хедеры DirectShow взяли из Wine и запихнули в kdewin32. Почему тролли не поступят также не знаю. Но могу сказать, что обычное copy-paste c перезаписью этих хедеров в папку с MinGW результата не дало.

Это сообщение отредактировал(а) SABROG - 11.3.2009, 12:40


--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
Teran
  Дата 11.3.2009, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

Репутация: нет
Всего: 3



Цитата(SABROG @  11.3.2009,  12:39 Найти цитируемый пост)
Не умеет пока Qt работать с DirectShow на компиляторе MinGW. Т.к. не компилит он хедеры мягкотелых.

...мда.... ужень жаль что так получается.....

Скажите пожалуйста как мне можно использовать VisualStudio 2005 чтобы компилить QT проекты.  что и где нужно добавить????
чтобы например пример Helmet заработал....
Код

#include <QCoreApplication>
#include <iostream>
#include <windows.h>
#include <dshow.h>
#pragma comment(lib, "strmiids.lib")
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    
    IGraphBuilder * graphBuilder;
    IMediaControl * control;
    IMediaEvent * event;
    CoInitialize(0);
    CoCreateInstance(CLSID_FilterGraph, 0, CLSCTX_INPROC_SERVER, IID_IGraphBuilder, (void**)&graphBuilder);
    graphBuilder->QueryInterface(IID_IMediaControl, (void**)&control);
    graphBuilder->QueryInterface(IID_IMediaEvent, (void**)&event);
    
    graphBuilder->RenderFile(L"C:\\movie.avi", 0);
    control->Run();
    
    long code = 0;
    event->WaitForCompletion(INFINITE, &code);
    event->Release();
    control->Release();
    graphBuilder->Release();
    CoUninitialize();
    return a.exec();
}


(Если нужно могу создать новую тему в этом разделе)

Для VisualStudio 2005 у меня стоит все.. и SDK и visual assist и sp1.
QT стоит qt-sdk-win-opensource-2009.01.exe

Это сообщение отредактировал(а) Teran - 11.3.2009, 13:28


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Helmet
Дата 11.3.2009, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 27.2.2009
Где: Someone's hea d

Репутация: нет
Всего: 1



Visual Studio Add-In

Добавлено через 53 секунды
Немного кривоватая штука, но все же удобнее, чем через Makefile-project

Добавлено через 2 минуты и 23 секунды
Да и еще, не волнуйся, если он в процессе установки скажет что не обнаружена QT'шка. Там потом в настройках добавишь.
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0935 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.