Войти
ПрограммированиеФорумГрафика

MediaFoundation использую для вывода в текстуру видео. Как сделать правильную скорость видео?

#0
18:06, 5 июня 2012

Вобщем использую MediaFoundation и Directx 10. Ею дергаю кадры видео и заливаю в текстуру, а потом вывожу текстуру. Как правильно сделать синхронизацию, что бы скорость видео была правильной(не быстро и не медленно) и правильной на любом процессоре? Использовать через SetTimer (задав миллисекунды вызова). Или как то иначе? Может кто то уже более плотнее работал с MediaFoundation, подскажите.

#1
22:44, 5 июня 2012

Пробовал верт. синхронизацию включать?

#2
23:22, 5 июня 2012

AngelOfDeath да пробовал. Делал 60 кадров. А когда делаю рендер видео-кадра в текстуру пропускаю 1 раз (что дает как бы 30 кадров). Но этого мало еще надо 20 миллисекунд делать паузу. Тогда нормально ,но это было для проца AMD 6000+, а для процессора Intel i5 3Ghz уже надо больше делать задержку. Видео стало на 20% быстрее идти. А делать 30 кадров синхронизацию не хочеться. Медленно будет. Но для видео ,я так понял больше подходит 30 кадров.

#3
23:05, 9 июня 2012

Чтобы было одинаково на любом процессоре - надо считать время воспроизведения видео(например суммировать deltaTime) и от него вычислять нужный кадр из видео потока, не важно с вертикальной синхронизацией или без

ПрограммированиеФорумГрафика

Тема в архиве.