Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2013, 21:38   #1
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию Нужно разобраться с DirectShow

Писал плеер по вот этому мануалу. Ну, в общем всё хорошо, всё работает.
Нужно решить одну проблему, для более правильного функционирования интерфейса моей программы, который отличается от того, что расписан по ссылке.
При инициализации графа (по ссылке процедура Player) нужно отличить, что запускается - аудио-файл, или видео.
Надеюсь на вашу помощь.

Кстати, DirectShow предлагает использование именно кодеков системы ? Вопрос возник потому что до этого работал с компонентом TMediaPlayer, который практически ничего не переваривал. После реализации DirectShow моя программа начала переваривать AVI.

P.S. Если что, у меня ОС Windows XP, а масляю я на Delphi 7.
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 22.05.2013, 22:36   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
нужно отличить, что запускается - аудио-файл, или видео
просто проверяйте расширение, extractfileext().

Корректность же построения цепочки графа и соответственно загрузки-поддержки заданного файла дают убранные проверки if failed(CoCreateInstance( и так далее

Цитата:
Кстати, DirectShow предлагает использование именно кодеков системы ?
не только, кроме автоматического построения графа, также возможно и ручное построение с добавлением в цепочку внешних "своих" фильтров или кодеков (если они это позволяют).

Цитата:
Вопрос возник потому что до этого работал с компонентом TMediaPlayer, который практически ничего не переваривал
это лишь обертка над MCI-интерфейсом в системе и зависит от корректно установленных кодеков в системе.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 22.05.2013, 22:42   #3
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
просто проверяйте расширение, extractfileext().
А сколько всего форматов проверять надо ?
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 22.05.2013, 23:21   #4
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

1- их проверять вообще не надо, если граф не подхватит что-то, то он об этом скажет, только надо обрабатывать ошибки (как? уже показал) ...чем собственно страдает автор того "мануала", копипастя часть материалов
2- забить n-е количество поддерживаемых форматов и просто пропускать на вход процедуры открытия файла те, которые вы записали, скажем - midi, wav, mp3 ...но это, имхо, ерунда.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно разобраться с JSON SL1M_DOGG PHP 3 21.04.2013 11:28
Нужно разобраться !!! вовик 82 WordPress и другие CMS 1 15.04.2011 13:36
Нужно разобраться с S/PDIF Diesel05 Компьютерное железо 6 02.01.2011 21:54
нужно разобраться с программой tanjusha Паскаль, Turbo Pascal, PascalABC.NET 8 20.05.2010 04:29
Нужно разобраться со стеком GladiatoR24 Общие вопросы C/C++ 1 08.05.2010 11:34