У меня есть виртуальный ПК VHD, который я скачал с Microsoft здесь: http://www.microsoft.com/en-us/download/details.aspx?id=11575 Этот экземпляр виртуальной машины предназначен для тестирования IE9 и содержит Windows 7 Ultimate (32-бит).
В этом экземпляре виртуальной машины я не могу воспроизводить файлы avi (я не пробовал другие типы видео) через встроенный проигрыватель Windows Media в поставляемом браузере IE9. Ну, они играют, но часть видео полностью черная. Некоторый тип наложения не работает правильно. Я имею в виду, что мы говорим о HTML так просто:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Testing</title>
<body>
<object id="mpVideo2" width="100%" height="100%"
classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6">
<param name="URL" value="http://SERVER_NAME/THE_PATH/split.avi">
<param name="AutoStart" value="True">
<param name="UIMode" value="full" />
<param name="WindowlessVideo" value="True" />
</object>
</body>
</html>
Хотя, если вы удалите параметр WindowlessVideo, он будет работать нормально. Но нам нужно, чтобы WindowlessVideo было установлено в true, чтобы оно хорошо работало в нашем реальном приложении. Примечательно: split.avi - это просто случайный avi, который я нашел на своем компьютере, который поставляет Microsoft (он "разбивает" логотип Microsoft). Я хотел исключить любые проблемы с нашими AVI и кодеками, которые они используют.
Я отследил проблему до ускорения DirectDraw. Если вы запускаете dxdiag, DirectDraw Acceleration, Direct3d Acceleration и AGP Texture Acceleration все «Недоступно», и кнопки «Включить / Отключить» отсутствуют.
Я нашел эту ссылку: http://support.microsoft.com/kb/191660, и я прошел через Методы, и Метод 3 заключался в установке последней версии DirectX End-User Runtime Web Installer (dxwebsetup.exe). Я сделал это, и DirectDraw Acceleration теперь включен (по-прежнему нет кнопок включения / выключения), но две другие по-прежнему «недоступны». Этот метод и другие не помогли, видео все еще черное.
Мне интересно, как заставить Direct X в экземпляре виртуальной машины работать правильно.
У меня есть другой экземпляр виртуальной машины, который я часто использую, который я создал некоторое время назад, у которого нет никаких проблем. Включен только DirectDraw (остальные «Недоступно»). Для моего хоста все три включены. Экземпляр виртуальной машины работает под управлением Windows Server 2003 Standard Edition, а моим хост-компьютером является Windows 7 Professional (64-разрядная версия).
Виртуальный ПК 6.0.156.0
Вот экраны dxdiag для дисплея:
Хост-машина:
Экземпляр 2003, который работает нормально (похоже, нужен только DirectDraw):
Экземпляр Win7, который меня огорчает: