Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как перевести цвет из RGBxx в RGB24

292
21 февраля 2007 года
Matush
726 / / 14.01.2004
Я захватываю видео с вэб камеры и копмрессирую кодеком H.263. Этот кодек работает только с RGB24, а камеры могут быть разные. Моя выдает 12 битный цвет.

Захватываю с помощью функций семейства capCreateCaptureWindow
GetPixelFormat, не дает никакого результата, возвращает ноль, а GetLastError возвращает что все ОК.

Итого, каким образом можно узнать формат пикселя камеры и перевести его в RGB24 ?
5.9K
22 февраля 2007 года
Zushenskiy
161 / / 29.06.2006
Если ты захватываешь программно то наверняка используешь DirectShow тогда есть несколько вариантов:
Можешь написать свой DirectShow фильтр который будет конвертить в любой цветовой формат пиксела.
Либо используй готовые фильтры к примеру Color Space Convertor, Color Convertor, ...
Если используешь ПО написанное ранее то смотри где нибудь опции принудительной подгрузки DS фильтров и подгружай те которые занимаются конвертацией если же конечно нет настроек в ПО устанавливающие итоговый формат пиксела.
В поставке DX sdk + DirectShow или KLate Mega Codec Pack идет утилита GraphEdit которая позволяет каптить, проигрывать, писать видео аудио в различных форматах. можешь ручками конфигурить практически все что предоставляют так называемые кодеки также добовлять другие кодеки в процес удалять существующие и т.д и т.п. возьми поиграйся:)
если будут вопросы по данному материалу обращайся
5.9K
22 февраля 2007 года
Zushenskiy
161 / / 29.06.2006
Опс звиняй не увидел вот этого
Цитата:

Захватываю с помощью функций семейства capCreateCaptureWindow
GetPixelFormat, не дает никакого результата, возвращает ноль, а GetLastError возвращает что все ОК.



Мой тебе совет Используй DirectShow для этих целей:)

292
23 февраля 2007 года
Matush
726 / / 14.01.2004
Цитата: Zushenskiy
Опс звиняй не увидел вот этого
Мой тебе совет Используй DirectShow для этих целей:)



Возможно так и будет. Но сейчас уже все сделано для работы с 24битным изображением (по 8 бит на цвет).

Итого проблема остается актуальной.

29K
21 мая 2007 года
sashakz91
1 / / 21.05.2007
Цитата: Matush


Захватываю с помощью функций семейства capCreateCaptureWindow



Можно ли этой функцией делать захват изображения размером больше, чем 320*280? Что для этого надо доустановить или настроить? Пробовал под win2000 и XP.

292
21 мая 2007 года
Matush
726 / / 14.01.2004
Цитата: sashakz91
Можно ли этой функцией делать захват изображения размером больше, чем 320*280? Что для этого надо доустановить или настроить? Пробовал под win2000 и XP.



Можно. Смотри функцию capSetVideoFormat.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог