WPF / C#: асинхронно зареждане/буфериране на следващия филмов клип

Имам нужда от основно „домашно“ видео (HD на цял екран), което се изпълнява в цикъл и след това в някакъв момент (да речем, че потребителят натисне клавиш) се възпроизвежда друг кратък филм (един от дванадесет избрани произволно) и след това обратно към началната страница цикъл на филма.

Използвам mediaElement в WPF от моя C# код - Има ли начин да заредя следващия филм в паметта, така че да е готов за възпроизвеждане незабавно? В момента отнема около секунда...

(Всъщност използвам два медийни елемента със задействания филм отгоре - правех кръстосано избледняване, но го премахнах сега, докато мога да буферирам следващия клип. Не съм сигурен дали това е най-добрият начин да направя това, някакви идеи ? Много благодаря.


person Matthew    schedule 15.10.2013    source източник


Отговори (1)


Измислих начин, в случай че някой се интересува.

Можете просто да посочите куп mediaElements един върху друг (може да има различен z индекс, но не е задължително). Тогава направи

video.Opacity = 0.0;
video.Play();
video.Pause();

за всички тях, тогава, когато искате да пуснете един, просто настройте непрозрачността на 1 и го пуснете и той ще се възпроизведе незабавно.

Не знам дали това е най-добрият начин, но работи добре. Сега ще внедря кръстосано избледняване, за да завършим. Щастливи дни.

person Matthew    schedule 15.10.2013