2013-07-31 3 views
0

Я использовал захват образца Directshow для захвата видеофрагмента, а также для воспроизведения. На этот раз я хотел бы преобразовать код из одного видеоформата в другой. Я снова планирую использовать directshow для этого. Мой граф фильтра будет примерно таким.Медиа-кодирование с использованием directshow

Исходный фильтр ---> Образец граббера -> Файловый писатель. Я хотел бы знать, что приведенный выше график ок, или мне нужно добавить что-то еще.

Также, проходя через MSDN, я обнаружил, что Windows Media Foundation заменит DirectShow. Я бы хотел, если бы я переключился на Media Foundation, это хорошая идея или нет.

Благодаря Прадипом

ответ

1

граббер пусть образца копирования и Inplace изменения данных, проходящий через. Обычно это недостаточно для перекодирования, потому что вы не можете вводить новые данные в конвейер. Однако, если исходный файл хорошо воспроизводится, на этот раз вам будет хорошо с легко доступным фильтром, не нужно писать самостоятельно: вы просто создадите конвейер, и начальный график выполнит транскодирование.

Фонд Windows Media собирается заменить DirectShow. Я бы хотел, если бы я переключился на Media Foundation, это хорошая идея или нет.

MF был заменен DShow лет назад: Migrating from DirectShow to Media Foundation -- July 2006. Прошло семь лет, и MF все еще не на одном уровне с DirectShow на рабочем столе ...

Это два API, которые идут бок о бок: используйте все, что подходит. Примите во внимание медиа-API, которые вы уже используете, целевые платформы, наличие сторонних компонентов для расширения, которые могут вам понадобиться.

FYI, Windows SDK предлагает Transcode Sample:

\Samples\multimedia\mediafoundation\Transcode