Воспроизвести два или более видео синхронно - PullRequest
2 голосов
/ 04 ноября 2008

Как можно воспроизвести два или более видеофайлов / потоков в разных окнах с синхронизацией на уровне кадров?

Какие инструменты, библиотеки или API я могу использовать для этого?

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

Например:

            in sync         out of sync
Time     -+-+-+-+-+-+ ... +-+-+-+-+-+-+         
video 1   fr1 fr2 fr3     fr1  fr2  fr3
video 2   fr1 fr2 fr3 ...   fr2 fr3 fr4
video N   fr1 fr2 fr3      fr1   fr2  fr3

Ответы [ 3 ]

1 голос
/ 08 июня 2009

В Windows должна быть возможность создания пользовательских фильтров / компонентов DirectShow для этого. Мы используем c # и directshow.net для достижения чего-то похожего, однако у нас пока нет «истинной» синхронизации кадров, и я на самом деле тоже ищу решение. Предостережение заключается в том, что вы не можете просто использовать стандартные / предоставляемые фильтры DirectShow, я боюсь, что придется написать несколько новых фильтров или, возможно, немного изменить базовые классы.

0 голосов
/ 04 ноября 2008

Не могли бы вы немного рассказать о том, что вы подразумеваете под "синхронизацией на уровне кадров"?

compiz делает это, когда воспроизводится несколько видео, и вы вращаете рабочий стол

OpenGL может отображать несколько видео одновременно на сторонах куба и т. Д.

0 голосов
/ 04 ноября 2008

В OS X, платформа Core Video сделает эту работу. Основная цель Core Video - обеспечить связь между носителями QuickTime (такими как аудио и видео) и системой композитинга Quartz с синхронизацией на уровне кадров.

...