Фильтр «Источник файла (асинхронный)» поддерживает только один файл за всю его жизнь. Можно ли воспроизвести два файла подряд без перестройки графика?
DirectShow воспроизводит два видеофайла подряд?
comment
Есть ли у него событие, которое вы могли бы использовать, когда файл закончил воспроизведение? Можете ли вы поставить медиа в очередь для воспроизведения с помощью API? Прошло почти десять лет с тех пор, как я в последний раз использовал directshow.
- person Geeky Guy   schedule 23.07.2013
Ответы (1)
File Source (Async) только подает поток байтов произвольного доступа на граф фильтра, есть и другие компоненты, необходимые для воспроизведения: демультиплексоры, декодеры. Нет, поставить другой файл в очередь через фильтр источника файлов (асинхронный) невозможно.
Беспрепятственное воспроизведение нескольких файлов в противном случае возможно, но требует разделения графа на части и соединения их вместе с точки зрения отправки данных из одного графа (чтение из файла, тот, который вы восстанавливаете с изменением файла) в другой (с рендерерами, тот, который никогда не перестроен и обеспечивает беспрепятственный пользовательский опыт воспроизведения).
Прочтите другие вопросы о связующих графиках:
- Использование GMFBridge в DirectShow
- При изменении файла имя, начало записи просрочено на 3 секунды.
person
Roman R.
schedule
23.07.2013