![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Не знаю, куда поместить тему
![]() И не знаю толком, как спросить... В общем, нужно написать программу, которая "слушает" и "смотрит" телеканал через TV-тюнер, анализирует получаемую информацию, и когда она удовлетворяет определённым условиям, выполняет заданное действие. Ну, например, записывает фильм, а рекламу пропускает (это просто пример, интересует не конкретно эта задача, а сам принцип). Как это дело написать? Нужно обращаться к оборудованию или это уже стандартизовано драйверами? |
|||
|
||||
niXman |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 211 Регистрация: 4.7.2009 Репутация: 0 Всего: 0 |
Если есть драйвера, зачем писать что-то? Если нет, то нужны даташиты на чипы, и обращаться к железу. --------------------
if ( !c++ ) { *power--; this->wussiness += 10;} |
|||
|
||||
SVN74 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 5.5.2008 Где: Комсомольск на Дн епре Репутация: 1 Всего: 18 |
VFW - самый простой способ...
|
|||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Вроде здесь написано http://en.wikipedia.org/wiki/Video_for_Windows
что VfW заменено Active Movie и WDM ? |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Смотри DirectShow (Video Capture)
|
|||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
А что даёт драйвер? Пардон, понимаю, что тупой вопрос, просто не занимался этим никогда. Ну вот есть драйвер. Что я с ним могу сделать? Заказать от него получение видео или аудио потока в каком-либо формате? А если, допустим, я хочу каналы переключать или настройку на частоту производить? Это тоже в драйвере такие функции должны быть? Как мне узнать об этом? На драйвер, наверное, тоже должны быть спецификации какие-то? Или тут всё стандартизировано? Добавлено через 3 минуты и 8 секунд Или вот, допустим, мне надо прочесть телетекст, который передаётся во время VBLANK. Если я могу у драйвера запросить видеопоток, то телетекста же не будет там содержаться, так как он не входит в отображаемую информацию. Значит, либо драйвер, либо оборудование должны содержать такую функцию. Но стандартов телетекста куча, они же не могут знать их все! |
|||
|
||||
zim22 |
|
|||
![]() depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
||||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Круто, оказывается, в DirectShow всё есть: http://msdn.microsoft.com/en-us/library/dd...28VS.85%29.aspx
Похоже, это очень навороченная фиговина! Только непонятно, почему написано, что из Vista оно убрано? Надо переходить на что-то другое или просто устарело? |
|||
|
||||
SVN74 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 5.5.2008 Где: Комсомольск на Дн епре Репутация: 1 Всего: 18 |
По DirectShow очень мало написано по русски (мало подробной информации). А вот на VFW все делается очень просто и в Vist(е) работает отлично, ну конечно с помощью VFW особых доступов к драйверам не получить, но для простого использования тюнеров и вебкамер лучшего варианта нет... |
|||
|
||||
xvr |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Зато по английски написано дофига и более - читайте MSDN. И вообще - первоисточник всегда лучше, чем неизвестно кем переведенное нечто ![]()
Да да да, смотрим MSDN:
(Прямая ссылка из оглавления MSDN к VFW так же отсутствует, так что делайте выводы) |
||||||
|
|||||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
В общем, DirectShow мне очень нравится (пока).
Моя программа должна создать сеть (граф) из "фильтров", соединить им входы и выходы и запустить. Микрофон, ТВ-тюнер и прочие устройства так же являются фильтрами -- начальными и конечными. Когда сеть создана, её достаточно просто запустить -- и фильтры начинают прокачивать через себя потоковые данные. Есть куча готовых фильтров (я, правда, пока не понял, где они лежат и не может ли оказаться, что на целевой машине кто-то из них будет отсутствовать). Программа для проигрывания видеофайла или интернет-потока занимает, фактически, три строчки. Так же пока непонятно, смогу ли я сам в своей программе анализировать данные? Ведь мир фильтров -- это свой отдельный мир, которым моя программа управляет лишь со стороны. Есть механизм сообщений, которые фильтры посылают программе, а, возможно, способа дать ей сами данные нет (пока не знаю). В этом случае придётся, как я понимаю, писать свой фильтр, который будет анализировать данные и посылать программе результаты анализа в виде сообщений. Добавлено через 3 минуты и 23 секунды
Тут, к счастью, мне повезло -- английский мне вдолбили. С техническим, по крайней мере, проблем нет... |
|||
|
||||
xvr |
|
||||||||||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Угу. В DS есть утилита GraphEdit (раньше была в составе DS в DX, где она растет теперь - не знаю). С ее помощью можно визуально строить графы, исследовать их и запускать. Весьма полезная утилита
|
||||||||||||||
|
|||||||||||||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Видел её! Но почему-то я не нашёл у неё важнейшей, на мой взгляд, функции -- нажал кнопочку и получил Си++ код, который всё это создаёт. ![]() А разве не будет проблемы с быстродействием? Вдруг фильтр затеет что-то длительное? Разве другим не придётся его ждать? |
|||
|
||||
xvr |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
По большей части такая кнопка не нужна - достаточно метода RenderFile из IGraphBuilder (кажется так). Для желающих строить графы руками она умеет сбрасывать графы в виде файла, который потом можно загрузить (см тут)
|
||||
|
|||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Что-то не выходит! Похоже, с ТВ тюнером надо сделать что-то ещё, чтобы он заработал...
http://forum.vingrad.ru/forum/topic-276389.html |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |