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

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

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.07.2013, 18:46   #11
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
Вот одно из решений:
Код:
function FindPin(const filter: IBaseFilter; const pinDir: _PinDirection; var pinOut: IPin):Boolean;
var
  enumPins: IEnumPins;
  Direction : _PinDirection;
begin
  Result := False;
  enumPins := nil;
  filter.EnumPins(enumPins);
  while enumPins.Next(1,pinOut,0)=s_ok do
    begin
      pinOut.QueryDirection(Direction);
      if Direction=pinDir then
      begin
        Result := True;
        enumPins := nil;
        Exit;
      end;
    end;
  if Assigned(enumPins) then enumPins := nil;
end;


var
  pin : IPin;
  mediatype : TAMMediaType;

pGraphBuilder.AddSourceFilter(StringToOleStr(FileName),'source file',fSource);
  if not FindPin(fSource,PINDIR_OUTPUT,pin) then
  begin
    ClearGraph;
    Result := S_FALSE;
    Exit;
  end;
  pin.ConnectionMediaType(mediatype);
  Result := pCaptureGraphBuilder.RenderStream(nil, mediatype.pbFormat, fSource, nil ,pVideoRender);
  Result := pCaptureGraphBuilder.RenderStream(nil, MEDIATYPE.pbFormat, fSource, nil ,pAudioRender);
  MoFreeMediaType(@mediatype);
.......
Надо было просто MediaType узнать.
Проверил на нескольких файлах. Видео и звук есть.
Говорил же Bass_DSHOW была бы лучше. Я за 50 минут написал работающую программу на нем.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 06.07.2013, 19:09   #12
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 867
По умолчанию

Цитата:
Сообщение от саша40 Посмотреть сообщение
Говорил же Bass_DSHOW была бы лучше. Я за 50 минут написал работающую программу на нем.
а где скачать *.dll, которые требуются для запуска проектов? В архиве я их не нашел.
BLACK_RAIN вне форума Ответить с цитированием
Старый 07.07.2013, 16:02   #13
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
а где скачать *.dll, которые требуются для запуска проектов? В архиве я их не нашел.
Как не нашел? Или ты слепой? Вот кидаю свой(специльно для нуба!):
BASS_DSHOW.rar
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 07.07.2013, 16:03   #14
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

ищи файлы в архиве:
BASS_DSHOW.dll
BASS_DSHOW.pas
BASS.dll
BASS.pas
bassmix.dll
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 07.07.2013, 16:18   #15
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 867
По умолчанию

Цитата:
Сообщение от саша40 Посмотреть сообщение
Как не нашел? Или ты слепой?
не заю. Очки вроде надел и экранную лупу включил
А может у них просто Opacity=0 и их не видно? Скачайте архив на 32 бит с первой страницы и сами посмотрите.
p.s. В вашем архиве они есть.

Последний раз редактировалось BLACK_RAIN; 07.07.2013 в 16:30.
BLACK_RAIN вне форума Ответить с цитированием
Старый 07.07.2013, 16:31   #16
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
не заю. Очки вроде надел и экранную лупу включил
А может у них просто Opacity=0 и их не видно? Скачайте архив на 32 бит с первой страницы и сами посмотрите.
p.s. В вашем архиве они есть.
Вот и славно, что в моем они есть. Используй как для mp3-проигрывателя, только иницилизируй handle панели или другого окна для вывода, так туда будет выводится видео.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 07.07.2013, 16:37   #17
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 867
По умолчанию

Цитата:
Сообщение от саша40 Посмотреть сообщение
Используй как для mp3-проигрывателя, только иницилизируй handle панели или другого окна для вывода, так туда будет выводится видео.
Почитаю примеры и факи. Думаю, разберусь.
BLACK_RAIN вне форума Ответить с цитированием
Старый 07.07.2013, 19:13   #18
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

...на официальном сайте BASS качать нужно. Только проблему TC при ручном построении графа это не решает, ибо BASS - обертка на DirectSound, а BASS.DSHOW - обертка над DirectShow и использует автоматическое построение графа фильтров, т.е. при наличии соответствующих кодеков и фильтров/сплиттеров в ОС она сама подбирает наиболее подходящие для использования в цепочке.

Поэтому, советовал бы TC не морочить голову и использовать автоматическое построение графов, а механизм этого построения отследить на таких эмуляторах с визуальным отображением как MONOGRAM GraphStudio или GraphEdit:


http://programmersforum.ru/showthread.php?p=1177344
http://programmersforum.ru/showthread.php?p=1077915
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 07.07.2013, 21:53   #19
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
Почитаю примеры и факи. Думаю, разберусь.
а разве ты их найдешь? Я сам делал чисто с нуля. Помогло только справка по xVideo.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 07.08.2013, 18:24   #20
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 867
По умолчанию

Поднимаю тему. Я использовал неправильный термин. Я ошибочно называл интеллектуальное построение графа ручным. На другом форуме мне доходчиво объяснили, что это не так.
Для ручного построения, необходимо соединить нужные фильтры в правильной последовательности, используя Pin'ы.
Цитата:
Сообщение от raxp Посмотреть сообщение
а механизм этого построения отследить на таких эмуляторах с визуальным отображением как MONOGRAM GraphStudio или GraphEdit
На примере *.mpg-файла собрал граф вручную и получилось. Картинка идет и звук есть.
Теперь нужно определить формат исходного файла, чтобы узнать, какие фильтры подключать. но как это сделать?

Последний раз редактировалось BLACK_RAIN; 07.08.2013 в 18:52.
BLACK_RAIN вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
построение графа !! drylozav Помощь студентам 0 06.10.2010 01:23
Построение графа nissa Помощь студентам 0 08.05.2010 00:57
Построение графа транзакций. Alex_sim Общие вопросы .NET 7 29.04.2010 21:58
Построение и иследование графа Сашf Общие вопросы Delphi 1 17.05.2009 17:35