Ускоренное воспроизведение файлов

 
Начать новую тему   Ответить на тему    Список форумов DirectShow форум -> Общий
Предыдущая тема :: Следующая тема  
Автор Сообщение
djan
Новенький


Зарегистрирован: 27.07.2007
Сообщения: 6
Откуда: от туда

СообщениеДобавлено: Пт Июл 27, 2007 3:56 pm    Заголовок сообщения: Ускоренное воспроизведение файлов Ответить с цитатой

Нужно воспроизводить ускоренно несколько файлов подряд. Зарегестрировал IMediaSeeking. Соразу после вызова функции Play вызываю pMediaSeeking->SetRate. Работает четко через раз. Т.е. Первый файл начинает воспроизводитя ускоренно, второй - нормально, третий - ускоренно и т.д. Подскажите в чем может быть проблема?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
WondeRu
Главвред :)


Зарегистрирован: 30.10.2006
Сообщения: 188
Откуда: Самара

СообщениеДобавлено: Пн Июл 30, 2007 8:12 am    Заголовок сообщения: Ответить с цитатой

Форматы файлов одинаковые? Одним кодеком зажаты? Граф каждый раз перестраивается?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
djan
Новенький


Зарегистрирован: 27.07.2007
Сообщения: 6
Откуда: от туда

СообщениеДобавлено: Пн Июл 30, 2007 1:08 pm    Заголовок сообщения: Ответить с цитатой

WondeRu писал(а):
Форматы файлов одинаковые? Одним кодеком зажаты? Граф каждый раз перестраивается?

Абсолютно одинаковые, сжатые Xvid. При стопе -
Код:
hr=pMediaControl->Stop();   
pGraphBuilder->RemoveFilter(pSourseFile);
pGraphBuilder->RemoveFilter(pSplitter);
pGraphBuilder->RemoveFilter(pCodec);
pGraphBuilder->RemoveFilter(pVideoRender);

При открытии -
Код:
hr=pGraphBuilder->AddSourceFilter(wszSourseFile,NULL,&pSourseFile);
hr=pGraphBuilder->AddFilter(pSplitter, NULL);
hr=pGraphBuilder->AddFilter(pCodec, NULL);
hr=pGraphBuilder->AddFilter(pVideoRender, NULL);
// сборка графа
При воспроизведении -
Код:

hr=pMediaControl->Run();
if (FAILED(hr))
{
return false;
}
hr=pMediaSeeking->SetRate(multiplier);
if (FAILED(hr))
{
return false;
}
multiplier всегда равен 2,0 и SetRate() возвращает не FAILED
Но файл воспроизводится со скоростью 1,0. Если во время воспоизведения устаночить multiplier, то все работает правильно.
В чем может быть проблема?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов DirectShow форум -> Общий Часовой пояс: GMT + 4
Страница 1 из 1
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB


Рейтинг@Mail.ru