Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2006.01.01;
Скачать: [xml.tar.bz2];

Вниз

Как заставить заработать 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 вся ветка

Форум: "Media";
Текущий архив: 2006.01.01;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.009 c
10-1110566105
Nicolas1989
2005-03-11 21:35
2006.01.01
Функция Sort


2-1134556725
Centory
2005-12-14 13:38
2006.01.01
Функции в DLL, которые берутся из другой DLL


5-1118905491
flake
2005-06-16 11:04
2006.01.01
TTrackBar - ползунки


2-1134473133
vitaliy14
2005-12-13 14:25
2006.01.01
Сжатие картинки


2-1134734712
vale88
2005-12-16 15:05
2006.01.01
Строка в строке





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский