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