Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.01;
Скачать: CL | DM;

Вниз

Как заставить заработать SampleGrabber из DSPack   Найти похожие ветки 

 
Valera   (2005-07-25 19:25) [0]

Из примера SnapShop из DSPack у меня не работает функция:
SampleGrabber.GetBitmap(Image.Picture.Bitmap); Делая трассировку обнаружил, что функция SampleGrabber.GetCurrentBuffer(BufferLen, DIBPtr) постоянно возвращает код ошибки. Может ли кто подсказать, как мне исправить это?


 
WondeRu ©   (2005-07-26 08:06) [1]

Драйвера платы видеозахвата переставь!


 
Ботвин Дмитрий   (2005-07-26 10:05) [2]

Драйвера могут быть и не причём. Так же как и переустановка виндус :-))
Что по этому поводу думает SysErrorMessage(GetLastError) - ?


 
Анонимщики ©   (2005-07-26 11:54) [3]

Держу пари, что Валера не представляет, что делает.


 
Valera   (2005-07-26 18:12) [4]

Анонимщики ©   (26.07.05 11:54) [3]
Держу пари, что Валера не представляет, что делает.
_______________________________________________________

Ну мне кажется, что представляю и согласен с WondeRu ©. Пробовал разные версии DSPack и переустанавливал XP. (Все таки хочется свой плеер доделать!) Только при этом не менял дрова на видюху они у меня ATI версии 5.6, может в них дело.


 
Valera   (2005-07-26 18:56) [5]

Ботвин Дмитрий   (26.07.05 10:05) [2]
Драйвера могут быть и не причём. Так же как и переустановка виндус :-))
Что по этому поводу думает SysErrorMessage(GetLastError) - ?

Недостаточно памяти для завершения операции.

Мне понравилась как сделано в AV Player, помойму кто то его делал с этого форума. Может подскажет как у него это реализовано  или хотя бы через какой интерфейс?


 
programania ©   (2005-07-26 21:51) [6]

Проверь свойство  SampleGrabber mediaType
у меня нормально работает
Major Type video
Sub Type RGB32
Sample Size 1
Format Type VideoInfo
и 2 галочки


 
Valera   (2005-07-26 22:51) [7]

programania ©   (26.07.05 21:51) [6]
Проверь свойство  SampleGrabber mediaType
у меня нормально работает
Major Type video
Sub Type RGB32
Sample Size 1
Format Type VideoInfo
и 2 галочки

Спасибо! Действительно ошибка была в том, что Sub Type был RGB24. Хотя я не менял ничего из примера и в MSDN ничего такого не накопал.


 
Анонимщики ©   (2005-07-27 19:09) [8]

Ну и что, что у тебя подтип RGB24? Что из этого следует? И как ты, интересно, исправил такую "ошибку"? Ты понимаешь вообще, что делаешь? Если понимаешь, то расскажи мне, потому что я просто концов с концами не могу свести, как можно делать такие выводы из таких посылок!?


 
Анонимщики ©   (2005-07-27 19:10) [9]

Ну и что, что у тебя подтип RGB24? Что из этого следует? И как ты, интересно, исправил такую "ошибку"? Ты понимаешь вообще, что делаешь? Если понимаешь, то расскажи мне, потому что я просто концов с концами не могу свести, как можно делать такие выводы из таких посылок!?


 
Valera   (2005-07-27 20:04) [10]

Анонимщики ©

Можно сделать выводы по исчезновению ошибки (добиваясь рабочего кода), да я еще не знаток DirectX но стараюсь разобраться. Выводы делаю как могу вы уж извините, только не понятно чего вы сами добиваетесь? (не вериться, что тебе действительно нужно что-то расказать из твоих посылок)


 
Анонимщики ©   (2005-07-28 01:38) [11]

Да ты скажи, что ты делаешь, что работает, а что нет.
Откуда я знаю, где и когда ты вызываешь GetCurrentBuffer? Вот все и опиши.


 
Ботвин Дмитрий   (2005-07-28 07:39) [12]

Я так понимаю, что у тебя видеокарта просто не поддерживает
24-битную глубину цвета, поэтому и при Sub Type RGB32 работает,
а при RGB24 нет. Вовсе это не ошибка. Ты повнимательнее прочитай
описание этого свойства. А пробывать разные версии DSPack и
переустанавливать винду - это лишнее...


 
Valera   (2005-07-28 07:44) [13]

Я же писал, что пример SnapShop который входит в набор компонентов DsPack не работает. Я привык сперва смотреть на примеры перед тем как использовать что нибудь в программе. Хочу в плеере сделать скриншоты под AVI разумеется. (не DVD пока)
Можешь верить можешь нет, но ошибка пропапала когда изменил подтип на RGB32. DSPack был 2.34 сейчас с CVS. Ничего из скаченного не изменял кроме файла DSPack.pas для изминения DSTracBar на свой и нигде пока не использовал функцию GetCurrentBuffer для получения картинки.
Могу только добавить, что интересовался еще как это сделано в AV Player. Так как прорисовка буфера медленновата и приходиться ждать его завершения после изминения позиции в файле.

Надеюсь я ответил на твой вопрос.


 
Valera   (2005-07-28 07:47) [14]

Видеокарта у меня гигабайтовская ati 9600pro, а насчет переустановки винды и всего остального уже убедился. Спасибо за вашу помощь.


 
Ботвин Дмитрий   (2005-07-28 07:51) [15]

У меня, к примеру ATI 9200 и она тока 16 и 32 глубину поддерживает, поэтому и у меня походу тока с RGB32 работать будет...


 
Ботвин Дмитрий   (2005-07-28 08:03) [16]

А вообще RGB24 и RGB32 - это почти одно и тоже в плане информации, разница тока в структуре. RGB24 - по байту на цвет, т.е 8 бит * 3 = 24 бит, а RGB32  - добавлен ещё один байт для "выравнивания", т.к. процессору удобнее работать с 32-х битными данными. Есть ещё YUV - на два соседних пикселя по
одному Y (яркость) - 8бит*2, и одна общая информация о цветносит
UV (2 байта). Таким образом получается, что  RGB32 быстрее
RGB24, в следстви своей "выровненности".


 
Анонимщики ©   (2005-07-28 11:13) [17]

Так я не понял, у тебя затруднения остались или уже все ясно?


 
Valera   (2005-07-28 12:16) [18]

Анонимщики ©

Помойму все прекрасно объяснили.



Страницы: 1 вся ветка

Текущий архив: 2006.01.01;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.027 c
1-1133697553
Mishenka
2005-12-04 14:59
2006.01.01
Как обработать выделенный текст в другом приложении?


2-1134522939
SergP
2005-12-14 04:15
2006.01.01
Скрыть метод в наследнике


3-1131727185
suharew
2005-11-11 19:39
2006.01.01
как узанть есть ли тигер у таблицы??


2-1134568860
floxi
2005-12-14 17:01
2006.01.01
MonthCalendar & Memo


1-1133630552
Задумавшийся
2005-12-03 20:22
2006.01.01
Хм. А как определить - Unicode, UTF-8 или ANSI?