Jump to content


Photo

3.6.0.84: Exception on codec detection


  • Please log in to reply
16 replies to this topic

#1 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 06 January 2019 - 01:48 PM

Hi @softworkz,

just wanted to report, that emby server running in hyper-v virtual machine throws an exception in the detection routines:

2019-01-06 16:32:56.268 Debug SoftwareCodecInfoProvider: Start GetCodecList()
2019-01-06 16:32:56.326 Info SoftwareCodecInfoProvider: h264, libx264, libx264 Software Encoder, V-E-libx264
2019-01-06 16:32:56.326 Info SoftwareCodecInfoProvider: mpeg4, mpeg4, MPEG-4 part 2 Software Encoder, V-E-mpeg4
2019-01-06 16:32:56.327 Info SoftwareCodecInfoProvider: mpeg4, msmpeg4, MPEG-4 part 2 (MS Variant 3) Software Encoder, V-E-msmpeg4
2019-01-06 16:32:56.327 Info SoftwareCodecInfoProvider: vp8, libvpx, libvpx VP8, V-E-libvpx
2019-01-06 16:32:56.328 Debug SoftwareCodecInfoProvider: End GetCodecList()
2019-01-06 16:32:56.328 Debug DxvaCodecInfoProvider: Start GetCodecList()
2019-01-06 16:32:56.348 Debug DxvaCodecInfoProvider: Create D3D
2019-01-06 16:32:56.368 Debug DxvaCodecInfoProvider: D3D created
2019-01-06 16:32:56.370 Info DxvaCodecInfoProvider: Adapter #0: 'Microsoft Basic Render Driver' Id:140 (Driver: 6.2.17763.1, Vendor: 5140)
2019-01-06 16:32:56.371 Info DxvaCodecInfoProvider: Current DisplayMode: Width: 2560, Height: 1600, RefreshRate: 32, Format: X8R8G8B8
2019-01-06 16:32:56.385 Debug DxvaCodecInfoProvider: Device successfully created
2019-01-06 16:32:56.405 Debug DxvaCodecInfoProvider: VideoDecoderService successfully created
2019-01-06 16:32:56.413 Debug DxvaCodecInfoProvider: Dispose DecoderService
2019-01-06 16:32:56.416 Debug DxvaCodecInfoProvider: DecoderService disposed
2019-01-06 16:32:56.416 Debug DxvaCodecInfoProvider: Dispose D3DDevice
2019-01-06 16:32:56.428 Debug DxvaCodecInfoProvider: D3DDevice disposed
2019-01-06 16:32:56.469 Error DxvaCodecInfoProvider: Error creating adapter #0: Microsoft Basic Render Driver
	*** Error Report ***
	Version: 3.6.0.84
	Command line: C:\Users\Administrator\AppData\Roaming\Emby-Server\system\EmbyServer.dll
	Operating system: Microsoft Windows NT 6.2.9200.0
	64-Bit OS: True
	64-Bit Process: True
	User Interactive: True
	Processor count: 4
	Program data path: C:\Users\Administrator\AppData\Roaming\Emby-Server
	Application directory: C:\Users\Administrator\AppData\Roaming\Emby-Server\system
	SharpDX.SharpDXException: SharpDX.SharpDXException: HRESULT: [0x80004005], Module: [General], ApiCode: [E_FAIL/Unspecified error], Message: Unbekannter Fehler
	
	   at SharpDX.Result.CheckError()
	   at SharpDX.MediaFoundation.DirectX.VideoDecoderService.GetDecoderDeviceGuids(Int32& countRef, Guid[] guidsRef)
	   at Emby.Codecs.Dxva.Detection.DecoderEnumerator.DoCodecs()
	   at Emby.Codecs.Dxva.Detection.MainDetector.DoCodecs()
	Source: SharpDX
	TargetSite: Void CheckError()
	   at SharpDX.Result.CheckError()
	   at SharpDX.MediaFoundation.DirectX.VideoDecoderService.GetDecoderDeviceGuids(Int32& countRef, Guid[] guidsRef)
	   at Emby.Codecs.Dxva.Detection.DecoderEnumerator.DoCodecs()
	   at Emby.Codecs.Dxva.Detection.MainDetector.DoCodecs()
	
2019-01-06 16:32:56.469 Debug DxvaCodecInfoProvider: Dispose D3D
2019-01-06 16:32:56.470 Debug DxvaCodecInfoProvider: D3D disposed
2019-01-06 16:32:56.470 Debug DxvaCodecInfoProvider: End GetCodecList()
2019-01-06 16:32:56.473 Debug QuickSyncCodecInfoProvider: Start GetCodecList()
2019-01-06 16:32:56.476 Info QuickSyncCodecInfoProvider: ffdetect -hide_banner -show_program_version -loglevel 0 -show_error -show_log 48 -print_format json qsvencdec
2019-01-06 16:32:56.476 Info QuickSyncCodecInfoProvider: ProcessRun 'ffdetect_qsvencdec' Execute: C:\Users\Administrator\AppData\Roaming\Emby-Server\system\ffdetect.exe -hide_banner -show_program_version -loglevel 0 -show_error -show_log 48 -print_format json qsvencdec
2019-01-06 16:32:56.491 Info QuickSyncCodecInfoProvider: ProcessRun 'ffdetect_qsvencdec' Started.
2019-01-06 16:32:56.496 Info App: Entry point completed: Emby.Server.MediaEncoding.Encoder.MediaEncoderEntryPoint. Duration: 0.4010921 seconds


You might want to catch it!?

Is there any acceleration even possible? 

Would it help to add the "Remote FX 3D grafikcard" to the VM - this one should access the hw acceleration on the underlying host.

MP



#2 Luke OFFLINE  

Luke

    System Architect

  • Administrators
  • 157008 posts
  • Local time: 11:27 AM

Posted 06 January 2019 - 01:59 PM

We are catching it, logging it, and continuing forward.



#3 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 06 January 2019 - 02:10 PM

Yeah, I know it is not a functional problem, I thought a short log entry would be better than long exception details ;-)

I added the virtual graphiccard and it seems, that helps:

2019-01-06 19:01:37.981 Debug SoftwareCodecInfoProvider: Start GetCodecList()
2019-01-06 19:01:38.077 Info SoftwareCodecInfoProvider: h264, libx264, libx264 Software Encoder, V-E-libx264
2019-01-06 19:01:38.077 Info SoftwareCodecInfoProvider: mpeg4, mpeg4, MPEG-4 part 2 Software Encoder, V-E-mpeg4
2019-01-06 19:01:38.077 Info SoftwareCodecInfoProvider: mpeg4, msmpeg4, MPEG-4 part 2 (MS Variant 3) Software Encoder, V-E-msmpeg4
2019-01-06 19:01:38.077 Info SoftwareCodecInfoProvider: vp8, libvpx, libvpx VP8, V-E-libvpx
2019-01-06 19:01:38.079 Debug SoftwareCodecInfoProvider: End GetCodecList()
2019-01-06 19:01:38.081 Debug DxvaCodecInfoProvider: Start GetCodecList()
2019-01-06 19:01:38.109 Debug DxvaCodecInfoProvider: Create D3D
2019-01-06 19:01:38.150 Debug DxvaCodecInfoProvider: D3D created
2019-01-06 19:01:38.152 Info DxvaCodecInfoProvider: Adapter #0: 'Microsoft RemoteFX-Grafikgerät - WDDM' Id:705 (Driver: 6.2.17763.1, Vendor: 5140)
2019-01-06 19:01:38.153 Info DxvaCodecInfoProvider: Current DisplayMode: Width: 2560, Height: 1600, RefreshRate: 60, Format: X8R8G8B8
2019-01-06 19:01:39.005 Debug DxvaCodecInfoProvider: Device successfully created
2019-01-06 19:01:39.057 Debug DxvaCodecInfoProvider: VideoDecoderService successfully created
2019-01-06 19:01:39.073 Info DxvaCodecInfoProvider: ee27417f-5e28-4e65-beea-1d26b508adc9: DXVA2_ModeMPEG2_VLD MPEG-2 variable-length decoder - mpeg2video
2019-01-06 19:01:39.073 Info DxvaCodecInfoProvider: bf22ad00-03ea-4690-8077-473346209b7e: DXVA2_ModeMPEG2_IDCT MPEG-2 inverse discrete cosine transform - mpeg2video
2019-01-06 19:01:39.073 Info DxvaCodecInfoProvider: e07ec519-e651-4cd6-ac84-1370cceec851: DXVA2_Intel_VC1_ClearVideo_2 VC-1 variable-length decoder 2 (Intel) - vc1
2019-01-06 19:01:39.074 Info DxvaCodecInfoProvider: bcc5db6d-a2b6-4af0-ace4-adb1f787bc89: DXVA2_Intel_VC1_ClearVideo VC-1 variable-length decoder (Intel) - vc1
2019-01-06 19:01:39.074 Info DxvaCodecInfoProvider: 1b81bea4-a0c7-11d3-b984-00c04f2e73c5: DXVA2_ModeVC1_D2010 VC-1 variable-length decoder (2010) - vc1
2019-01-06 19:01:39.074 Info DxvaCodecInfoProvider: 1b81be68-a0c7-11d3-b984-00c04f2e73c5: DXVA2_ModeH264_E H.264 variable-length decoder, no film grain technology - h264
2019-01-06 19:01:39.074 Info DxvaCodecInfoProvider: d79be8da-0cf1-4c81-b82a-69a4e236f43d: DXVA2_ModeH264_VLD_Stereo_Progressive_NoFGT H.264 MVC variable-length decoder, stereo, progressive - h264
2019-01-06 19:01:39.074 Info DxvaCodecInfoProvider: f9aaccbb-c2b6-4cfc-8779-5707b1760552: DXVA2_ModeH264_VLD_Stereo_NoFGT H.264 MVC variable-length decoder, stereo - h264
2019-01-06 19:01:39.075 Info DxvaCodecInfoProvider: 705b9d82-76cf-49d6-b7e6-ac8872db013c: DXVA2_ModeH264_VLD_Multiview_NoFGT H.264 MVC variable-length decoder, multiview - h264
2019-01-06 19:01:39.075 Info DxvaCodecInfoProvider: c528916c-c0af-4645-8cb2-372b6d4adc2a:   - 
2019-01-06 19:01:39.075 Info DxvaCodecInfoProvider: 8de911c4-c898-4364-9715-1de6b3fe773d:   - 
2019-01-06 19:01:39.075 Info DxvaCodecInfoProvider: 07cfaffb-5a2e-4b99-b62a-e4ca53b6d5aa:   - 
2019-01-06 19:01:39.076 Info DxvaCodecInfoProvider: 91cd2d6e-897b-4fa1-b0d7-51dc88010e0a:   - 
2019-01-06 19:01:39.076 Info DxvaCodecInfoProvider: 442b942a-b4d9-4940-bc45-a882e5f919f3:   - 
2019-01-06 19:01:39.076 Info DxvaCodecInfoProvider: 8c56eb1e-2b47-466f-8d33-7dbcd63f3df2:   - 
2019-01-06 19:01:39.077 Info DxvaCodecInfoProvider: 5b11d51b-2f4c-4452-bcc3-09f2a1160cc0: DXVA2_ModeHEVC_VLD_Main H.265 variable-length decoder, Main profile - hevc
2019-01-06 19:01:39.077 Info DxvaCodecInfoProvider: 75fc75f7-c589-4a07-a25b-72e03b0383b3:   - 
2019-01-06 19:01:39.077 Info DxvaCodecInfoProvider: 107af0e0-ef1a-4d19-aba8-67a163073d13: DXVA2_ModeHEVC_VLD_Main10 H.265 variable-length decoder, Main 10 profile - hevc
2019-01-06 19:01:39.077 Info DxvaCodecInfoProvider: 76988a52-df13-419a-8e64-ffcf4a336cf5:   - 
2019-01-06 19:01:39.078 Info DxvaCodecInfoProvider: a74ccae2-f466-45ae-86f5-ab8be8af8483:   - 
2019-01-06 19:01:39.078 Info DxvaCodecInfoProvider: 1b81be94-a0c7-11d3-b984-00c04f2e73c5: DXVA2_ModeWMV9_C Windows Media Video 9 inverse discrete cosine transform - wmv3
2019-01-06 19:01:39.078 Info DxvaCodecInfoProvider: 1b81bea2-a0c7-11d3-b984-00c04f2e73c5: DXVA2_ModeVC1_C VC-1 inverse discrete cosine transform - vc1
2019-01-06 19:01:39.078 Info DxvaCodecInfoProvider: 49761bec-4b63-4349-a5ff-87ffdf088466:   - 
2019-01-06 19:01:39.094 Info DxvaCodecInfoProvider: CheckDecoderDetails: MediaType: mpeg2video
2019-01-06 19:01:39.109 Debug DxvaCodecInfoProvider:    DXVA2_ModeMPEG2_VLD - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.117 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.117 Debug DxvaCodecInfoProvider:   DXVA2_ModeMPEG2_VLD - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.119 Debug DxvaCodecInfoProvider:    DXVA2_ModeMPEG2_IDCT - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.121 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.121 Debug DxvaCodecInfoProvider:   DXVA2_ModeMPEG2_IDCT - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.121 Info DxvaCodecInfoProvider: CheckDecoderDetails: MediaType: vc1
2019-01-06 19:01:39.122 Debug DxvaCodecInfoProvider:    DXVA2_Intel_VC1_ClearVideo_2 - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.123 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.123 Debug DxvaCodecInfoProvider:   DXVA2_Intel_VC1_ClearVideo_2 - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.123 Debug DxvaCodecInfoProvider:    DXVA2_Intel_VC1_ClearVideo - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.125 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.125 Debug DxvaCodecInfoProvider:   DXVA2_Intel_VC1_ClearVideo - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.126 Debug DxvaCodecInfoProvider:    DXVA2_ModeVC1_D2010 - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.127 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.127 Debug DxvaCodecInfoProvider:   DXVA2_ModeVC1_D2010 - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.128 Debug DxvaCodecInfoProvider:    DXVA2_ModeVC1_C - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.129 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.129 Debug DxvaCodecInfoProvider:   DXVA2_ModeVC1_C - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.129 Info DxvaCodecInfoProvider: CheckDecoderDetails: MediaType: h264
2019-01-06 19:01:39.130 Debug DxvaCodecInfoProvider:    DXVA2_ModeH264_E - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.145 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.145 Debug DxvaCodecInfoProvider:   DXVA2_ModeH264_E - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.146 Debug DxvaCodecInfoProvider:    DXVA2_ModeH264_VLD_Stereo_Progressive_NoFGT - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.147 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.147 Debug DxvaCodecInfoProvider:   DXVA2_ModeH264_VLD_Stereo_Progressive_NoFGT - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.148 Debug DxvaCodecInfoProvider:    DXVA2_ModeH264_VLD_Stereo_NoFGT - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.150 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.150 Debug DxvaCodecInfoProvider:   DXVA2_ModeH264_VLD_Stereo_NoFGT - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.151 Debug DxvaCodecInfoProvider:    DXVA2_ModeH264_VLD_Multiview_NoFGT - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.153 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.153 Debug DxvaCodecInfoProvider:   DXVA2_ModeH264_VLD_Multiview_NoFGT - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.153 Info DxvaCodecInfoProvider: CheckDecoderDetails: MediaType: hevc
2019-01-06 19:01:39.153 Debug DxvaCodecInfoProvider:    DXVA2_ModeHEVC_VLD_Main - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.157 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.157 Debug DxvaCodecInfoProvider:   DXVA2_ModeHEVC_VLD_Main - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.157 Debug DxvaCodecInfoProvider:    DXVA2_ModeHEVC_VLD_Main10 - ColorFormat #0: P010 => p010le
2019-01-06 19:01:39.159 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.159 Debug DxvaCodecInfoProvider:   DXVA2_ModeHEVC_VLD_Main10 - ColorFormat #0: P010 => p010le >>>>> Could not create any decoder instance
2019-01-06 19:01:39.159 Debug DxvaCodecInfoProvider:    DXVA2_ModeHEVC_VLD_Main10 - ColorFormat #1: NV12 => nv12
2019-01-06 19:01:39.160 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.160 Debug DxvaCodecInfoProvider:   DXVA2_ModeHEVC_VLD_Main10 - ColorFormat #1: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.160 Info DxvaCodecInfoProvider: CheckDecoderDetails: MediaType: wmv3
2019-01-06 19:01:39.160 Debug DxvaCodecInfoProvider:    DXVA2_ModeWMV9_C - ColorFormat #0: NV12 => nv12
2019-01-06 19:01:39.161 Debug DxvaCodecInfoProvider: Supported Resolutions:   
2019-01-06 19:01:39.161 Debug DxvaCodecInfoProvider:   DXVA2_ModeWMV9_C - ColorFormat #0: NV12 => nv12 >>>>> Could not create any decoder instance
2019-01-06 19:01:39.161 Debug DxvaCodecInfoProvider: Dispose DecoderService
2019-01-06 19:01:39.163 Debug DxvaCodecInfoProvider: DecoderService disposed
2019-01-06 19:01:39.163 Debug DxvaCodecInfoProvider: Dispose D3DDevice
2019-01-06 19:01:39.166 Debug DxvaCodecInfoProvider: D3DDevice disposed
2019-01-06 19:01:39.166 Debug DxvaCodecInfoProvider: Dispose D3D
2019-01-06 19:01:39.167 Debug DxvaCodecInfoProvider: D3D disposed
2019-01-06 19:01:39.167 Debug DxvaCodecInfoProvider: End GetCodecList()
2019-01-06 19:01:39.173 Debug QuickSyncCodecInfoProvider: Start GetCodecList()
2019-01-06 19:01:39.177 Info QuickSyncCodecInfoProvider: ffdetect -hide_banner -show_program_version -loglevel 0 -show_error -show_log 48 -print_format json qsvencdec
2019-01-06 19:01:39.177 Info QuickSyncCodecInfoProvider: ProcessRun 'ffdetect_qsvencdec' Execute: C:\Users\Administrator\AppData\Roaming\Emby-Server\system\ffdetect.exe -hide_banner -show_program_version -loglevel 0 -show_error -show_log 48 -print_format json qsvencdec
2019-01-06 19:01:39.191 Info QuickSyncCodecInfoProvider: ProcessRun 'ffdetect_qsvencdec' Started.
2019-01-06 19:01:39.196 Info App: Entry point completed: Emby.Server.MediaEncoding.Encoder.MediaEncoderEntryPoint. Duration: 1.40845 seconds

But seems, it doesn't supported resolution info - @softworkz, anything that can be done there?



#4 softworkz OFFLINE  

softworkz

    Advanced Member

  • Developers
  • 2714 posts
  • Local time: 05:27 PM

Posted 06 January 2019 - 02:36 PM

Regarding the Basic Render Driver: This does not support any acceleration, we should simply skip it.

 

For the RemoteFX graphics: This does not make much sense because that does only exist inside a remote desktop session. It does not seem to support DXVA2.

 

At the moment, the only way to get hw acceleration is to connect a monitor and let Emby Server run in the console session.

After the release we will have D3D11VA in the beta channel, this will support hw acceleration independently of the session and connected displays.


  • cayars likes this

#5 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 06 January 2019 - 03:05 PM

For the RemoteFX graphics: This does not make much sense because that does only exist inside a remote desktop session. It does not seem to support DXVA2.

 

At the moment, the only way to get hw acceleration is to connect a monitor and let Emby Server run in the console session.

After the release we will have D3D11VA in the beta channel, this will support hw acceleration independently of the session and connected displays.

Ok, so that would then allow to use the RemoteFX DX11.x hw acceleration features? That would be great!



#6 softworkz OFFLINE  

softworkz

    Advanced Member

  • Developers
  • 2714 posts
  • Local time: 05:27 PM

Posted 06 January 2019 - 03:30 PM

Ok, so that would then allow to use the RemoteFX DX11.x hw acceleration features? That would be great!

 

No. RemoteFX is not a hardware device offering acceleration capabilities.

 

RemoteFX is an extension to the RDP protocol where 3D scenes and videos are generated by the host GPU, encoded as (a very specific) video stream that is sent to the client. 

(opposed to normal RDP which is based on GDI drawing).

 

 

But if you have a server that is supporting RemoteFX, it will have some physical GPU and with D3D11VA you will be able to use that physical GPU for Emby hardware acceleration, even if no monitor is connected and Emby is running as a service.

 

Edit: Unfortunately RemoteFX also stands for a Hyper-V virtual GPU feature (GPU sharing). I can't say If video hardware acceleration would work with such a setup....


Edited by softworkz, 06 January 2019 - 03:57 PM.


#7 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 06 January 2019 - 06:16 PM

The RemoteFX Graphiccard should offer the hardwareacceleration of the hosts GPUs (as "vGPU" - which is not really virtual, it is an interface to the hosts GPU(s)).

If I launch dxdiag in the virtual machine with a vGPU added, I get this:

Attached File  RemoteFX.JPG   69.31KB   5 downloads

So if you intend to use the DirectX APIs, it should theoretically work.

Just to make it clear - this is not a software emulation (which is also possible afaik for remote desktops), it is a special form of the DDI interface, which forwards hardware into the virtual machine.

You could also add nvidia or AMD cards to the server and pass them to the virtual machine via that vGPU.

If it could be used, that would be really nice, as the GPU of the server is completely useless otherwise :-)

If you're using the DX APIs, it should be able to use it, no?



#8 softworkz OFFLINE  

softworkz

    Advanced Member

  • Developers
  • 2714 posts
  • Local time: 05:27 PM

Posted 06 January 2019 - 06:55 PM

DXVA video decoding requires a lot of things implemented in the driver.

With vGPU you don't have the vendor drivers installed and I'm not sure whether the virtual drivers support video acceleration. 

I would rather guess - no.

 

Technically, video acceleration is an API separate from DirectX it is just using some DirectX methods.

 

If you want to be sure, you can use the following tool to see whether D3D11VA would work in your case: https://bluesky23.yu...XVAChecker.html

 

 

BTW, RemoteFX vGPU is deprecated by Microsoft now. Alternatives for virtualization environments  are DDA - directly assign the hardware GPU to a specific VM - which will allow you to use the hardware with the original vendor drivers. Also, both nvidia and AMD are offering their own GPU virtualization software implementations.


  • cayars likes this

#9 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 06 January 2019 - 09:09 PM

DXVA video decoding requires a lot of things implemented in the driver.

With vGPU you don't have the vendor drivers installed and I'm not sure whether the virtual drivers support video acceleration. 

I would rather guess - no.

 

Technically, video acceleration is an API separate from DirectX it is just using some DirectX methods.

 

If you want to be sure, you can use the following tool to see whether D3D11VA would work in your case: https://bluesky23.yu...XVAChecker.html

 

 

BTW, RemoteFX vGPU is deprecated by Microsoft now. Alternatives for virtualization environments  are DDA - directly assign the hardware GPU to a specific VM - which will allow you to use the hardware with the original vendor drivers. Also, both nvidia and AMD are offering their own GPU virtualization software implementations.

Thanks - I had a look at the DXVA Checker tool, but I am not sure, what I see there ;-) - it tells me, that there is HW acceleration available, but that probably doesn't mean anything.

Re DDA - yes, I read that, DDA already works today, but as far as I understand especially nvidia is blocking the driver loading inside the VM for several of their products. Further, this does not work for e.g. iGPU, as you have to remove the device from the host system completely. RemoteFX is probably a bit more like using the /dev/dri/RenderD128 on Linux, where you allow e.g. Docker to use the underlying HW/Driver (which unfortunately also doesn't work on my supermicro X11-SSM-F, as the iGPU is not exposed due to the AsMedia ...).

I may have another look in the next Betacycle...

MP



#10 softworkz OFFLINE  

softworkz

    Advanced Member

  • Developers
  • 2714 posts
  • Local time: 05:27 PM

Posted 06 January 2019 - 09:23 PM

Can you post a screenshot of the first page (leftmost tab)?

 

To be sure that one of the hwa's is actually working, you need to try to instantiate a decoder.

 

On the bottom left, there's a dropdown for GPU selection - but there's also an entry "Decoder Device Creator".

 

There you can try to create decoder instances. Try both APIs (DXVA2/D3D11) with moderate resolutions.



#11 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 07 January 2019 - 12:47 AM

Attached File  dxva.JPG   73.5KB   2 downloads

Creating devices does not work. But I just remembered, that the iGPU of the intel proc on this board is not fully initialized, when there is no monitor attached during start - might be worth to try rebooting and check again - however, can't do that right now.



#12 softworkz OFFLINE  

softworkz

    Advanced Member

  • Developers
  • 2714 posts
  • Local time: 05:27 PM

Posted 07 January 2019 - 12:58 AM

That's interesting, it displays DXVA1 and DXVA2 but no D3D11VA.

What's the server version? 

 

On some systems it's sufficient to connect a display to the Intel graphics while the system is running, but sometimes it only works after a reboot.



#13 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 07 January 2019 - 05:41 AM

That's interesting, it displays DXVA1 and DXVA2 but no D3D11VA.

What's the server version? 

2016 with latest updates.

 

 

 

On some systems it's sufficient to connect a display to the Intel graphics while the system is running, but sometimes it only works after a reboot.

Tried connecting a display at runtime, this didn't change something, I will connect a display when it is next booted and test again.


Edited by MikePlanet, 07 January 2019 - 05:41 AM.


#14 softworkz OFFLINE  

softworkz

    Advanced Member

  • Developers
  • 2714 posts
  • Local time: 05:27 PM

Posted 07 January 2019 - 06:00 AM

2016 with latest updates.

 

Tried connecting a display at runtime, this didn't change something, I will connect a display when it is next booted and test again.

 

I'm really curious about the results. I have a very similar setup but Xeons for dual socket boards don't have integrated graphics, so I could never try there.



#15 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 07 January 2019 - 05:37 PM

I'm really curious about the results. I have a very similar setup but Xeons for dual socket boards don't have integrated graphics, so I could never try there.

You could also try easily by adding a graphiccard into a slot and pass it through - though my idea when I ordered the single socket xeon with graphic unit was to be able to use it with low energy and not wasting a slot for an extra card ;-)



#16 softworkz OFFLINE  

softworkz

    Advanced Member

  • Developers
  • 2714 posts
  • Local time: 05:27 PM

Posted 08 January 2019 - 01:31 PM

You could also try easily by adding a graphiccard into a slot and pass it through - though my idea when I ordered the single socket xeon with graphic unit was to be able to use it with low energy and not wasting a slot for an extra card ;-)

 

It's a 2HE rack server. Now find a gpu board that would fit there...



#17 MikePlanet OFFLINE  

MikePlanet

    Advanced Member

  • Alpha Testers
  • 356 posts
  • Local time: 04:27 PM

Posted 11 January 2019 - 05:36 PM

I'm really curious about the results. I have a very similar setup but Xeons for dual socket boards don't have integrated graphics, so I could never try there.

Hi @softworkz, so I did reboot server with monitor attached, but it did not improve the situation - can't create the instance. So I assume, the Microsoft Implementation is not complete. It would probably work, when using DDA (passing through the device) and install manufacturerer driver in the VM - but IIRC, it is not possible to pass through the iGPU - only devices, taht can be controlled via the ACS tables, e.g. a PCIe device (separate graphiccard should work).

So I think we must conclude, that using iGPU in the VM is not possible at this time ...






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users