pwhodges 1532 Posted September 4, 2019 Share Posted September 4, 2019 I have a similar card (1050 rather than 1060), and to run it headless (as I do) it was necessary to provide a dummy monitor to get hardware encoding recognised. Link to comment Share on other sites More sharing options...
BrettDioson 4 Posted September 4, 2019 Share Posted September 4, 2019 you may need to "run as administrator" on the embyserver exe for it to work. I also RDP to my server and am headless. Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 4, 2019 Share Posted September 4, 2019 I just got back home, I reattached the dummy to be able to start nvidia control panel. I thought I might be able to override some settings in 3d, but nothing to do there. I chose the Nvidia card as main on Emby server exe. I rad Plex as administrator, no luck still. Link to comment Share on other sites More sharing options...
softworkz 3338 Posted September 4, 2019 Share Posted September 4, 2019 @@nonyhaha - Why do you install GeForce drivers when you have a Quadro board? Try this one instead: https://www.nvidia.com/Download/driverResults.aspx/150305/en-us PS: For Nvidia hardware acceleration you do not need to have any (dummy) monitor connected. Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 4, 2019 Share Posted September 4, 2019 (edited) @@nonyhaha - Why do you install GeForce drivers when you have a Quadro board? Try this one instead: https://www.nvidia.com/Download/driverResults.aspx/150305/en-us PS: For Nvidia hardware acceleration you do not need to have any (dummy) monitor connected. Hi. Installed these drivers. Reatarted the server. Encoding still has nothing to choose from. Just like in the picture above. Only decoding can be selected. L.E. I opted in Bios for the quadro card to be main also. Nothing changed. Also, Handbrake IS using the encoder. I just did a test with h265 nvenc/x265 and the difference in speed is 10fold. If any logs are needed please ask, or anything else. Edited September 4, 2019 by nonyhaha Link to comment Share on other sites More sharing options...
BrettDioson 4 Posted September 4, 2019 Share Posted September 4, 2019 Hello @@softworkz! At the moment I disconnected the dummy, so no monitor on my server. I installed Nvidia drivers 436.15. (geforce drivers, win 10). I am still using windows server 2016. I restarted server. In emby settings, i still do not have the preferred hardware encoders as they show up on your picture. I attached the hardware detection, as at the moment I do not think the problem requires more data. Please let me know. I am going to try a beta version now. L.E. Beta looks the same in settings. IMPORTANT EDIT: I am not sure I mentioned this until now, but, I am using my server headless. I access it over RDP. Emby is not running as a service. Must I do something special for nvenc to work? because on google I find a lot of troubles about rdp, and also, Handbrake does not seem to use nvenc when selecting it as an encoder. (I used also console connect over IPMI and still no go.) I see this in the hardware detect log. @@softworkz looks like maybe that card doesn't work with the version of FFMPEG/FFDETECT being used by EMBY? "Encoders": [ { "Number": 2, "Message": "OpenEncodeSessionEx failed: unsupported device" } ] Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 5, 2019 Share Posted September 5, 2019 (edited) @@softworkz Is there anything I can change so it might be recognized? Handbrake is able to use the card. In handbrake software x265 speed is 15 fps and nvenc h265 speed is 220 fps. I reactivated my plex pass also, and plex is not able to hardware transcode eirther. The thing which I find interesting is that in their requirements list, there is mentioned that Intel Quick Sync is required even to use nvenc. I am waiting for a reply there too. Is there any chance there is a correlation with Emby case? L.E. I see this should not be an issue. So I am still stuck with hardware decoding buut the encoding is still absent. I enabled the P400 as main gpu in BIOS, I enabled auto login in windows 2016 with a dummy display attached. The encoder settings just do not pop up in emby server settings... There should be an issue with recognising the encoder, but how come as long as the decoder is being recognized and used? @@BrettDioson what cpu do you have? Do you have an IGPU also? Edited September 5, 2019 by nonyhaha Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 5, 2019 Share Posted September 5, 2019 (edited) @softworkz Trying ffdetect.exe on post #90 will end up with the following result in settings: So Might be an issue from ffdetect? After running ffdetect.exe -hide_banner -show_program_version -loglevel 99 -show_error -show_log 99 -print_format json nvenc I get: ffdetect version 4.3.0-emby_2019_09_03-g5abbb1430d+3654 Copyright © 2018-2019 softworkz for Emby LLC built with gcc 9.2.0 (Rev2, Built by MSYS2 project) configuration: --enable-amf --enable-bzlib --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv --enable-lzma --enable-nvenc --enable-zlib --disable-sdl2 --disable-debug --enable-ffnvcodec --enable-nvdec --enable-gmp --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libdav1d --enable-fontconfig --enable-libass --enable-libbluray --enable-libfreetype --enable-libmfx --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libzimg --enable-libshine --enable-gpl --enable-avisynth --enable-libxvid --enable-libaom --enable-version3 --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-libs=-lstdc++ --enable-amf --enable-bzlib --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv --enable-lzma --enable-nvenc --enable-zlib --disable-sdl2 --disable-debug --enable-ffnvcodec --enable-nvdec --enable-gmp --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libdav1d --enable-fontconfig --enable-libass --enable-libbluray --enable-libfreetype --enable-libmfx --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libzimg --enable-libshine --enable-gpl --enable-avisynth --enable-libxvid --enable-libaom --enable-version3 --enable-libzvbi --enable-gnutls --extra-libs=-lstdc++ libavutil 56. 34.100 / 56. 34.100 { "ProgramVersion": { "Version": "4.3.0-emby_2019_09_03-g5abbb1430d+3654", "Copyright": "Copyright © 2018-2019 softworkz for Emby Llc", "Compiler": "gcc 9.2.0 (Rev2, Built by MSYS2 project)", "Configuration": " --enable-amf --enable-bzlib --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv --enable-lzma --enable-nvenc --enable-zlib --disable-sdl2 --disable-debug --enable-ffnvcodec --enable-nvdec --enable-gmp --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libdav1d --enable-fontconfig --enable-libass --enable-libbluray --enable-libfreetype --enable-libmfx --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libzimg --enable-libshine --enable-gpl --enable-avisynth --enable-libxvid --enable-libaom --enable-version3 --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-libs=-lstdc++ --enable-amf --enable-bzlib --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv --enable-lzma --enable-nvenc --enable-zlib --disable-sdl2 --disable-debug --enable-ffnvcodec --enable-nvdec --enable-gmp --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libdav1d --enable-fontconfig --enable-libass --enable-libbluray --enable-libfreetype --enable-libmfx --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libzimg --enable-libshine --enable-gpl --enable-avisynth --enable-libxvid --enable-libaom --enable-version3 --enable-libzvbi --enable-gnutls --extra-libs=-lstdc++" }Loaded lib: nvcuda.dll Loaded sym: cuInit Loaded sym: cuDeviceGetCount Loaded sym: cuDeviceGet Loaded sym: cuDeviceGetAttribute Loaded sym: cuDeviceGetName Loaded sym: cuDeviceComputeCapability Loaded sym: cuCtxCreate_v2 Loaded sym: cuCtxSetLimit Loaded sym: cuCtxPushCurrent_v2 Loaded sym: cuCtxPopCurrent_v2 Loaded sym: cuCtxDestroy_v2 Loaded sym: cuMemAlloc_v2 Loaded sym: cuMemAllocPitch_v2 Loaded sym: cuMemsetD8Async Loaded sym: cuMemFree_v2 Loaded sym: cuMemcpy2D_v2 Loaded sym: cuMemcpy2DAsync_v2 Loaded sym: cuGetErrorName Loaded sym: cuGetErrorString Loaded sym: cuStreamCreate Loaded sym: cuStreamQuery Loaded sym: cuStreamSynchronize Loaded sym: cuStreamDestroy_v2 Loaded sym: cuStreamAddCallback Loaded sym: cuEventCreate Loaded sym: cuEventDestroy_v2 Loaded sym: cuEventSynchronize Loaded sym: cuEventQuery Loaded sym: cuEventRecord Loaded sym: cuLaunchKernel Loaded sym: cuModuleLoadData Loaded sym: cuModuleUnload Loaded sym: cuModuleGetFunction Loaded sym: cuTexObjectCreate Loaded sym: cuTexObjectDestroy Loaded sym: cuGLGetDevices_v2 Loaded sym: cuGraphicsGLRegisterImage Loaded sym: cuGraphicsUnregisterResource Loaded sym: cuGraphicsMapResources Loaded sym: cuGraphicsUnmapResources Loaded sym: cuGraphicsSubResourceGetMappedArray Loaded sym: cuDeviceGetUuid Loaded sym: cuImportExternalMemory Loaded sym: cuDestroyExternalMemory Loaded sym: cuExternalMemoryGetMappedBuffer Loaded sym: cuExternalMemoryGetMappedMipmappedArray Loaded sym: cuMipmappedArrayGetLevel Loaded sym: cuMipmappedArrayDestroy Loaded sym: cuImportExternalSemaphore Loaded sym: cuDestroyExternalSemaphore Loaded sym: cuSignalExternalSemaphoresAsync Loaded sym: cuWaitExternalSemaphoresAsync Loaded lib: nvEncodeAPI64.dll Loaded sym: NvEncodeAPICreateInstance Loaded sym: NvEncodeAPIGetMaxSupportedVersion Loaded Nvenc version 9.1 1 CUDA capable devices found , "Devices": [ { "DeviceIndex": 0, "DeviceInfo": { "Name": "Quadro P400", "Description": "Quadro P400", "ComputeCapMajor": 6, "ComputeCapMinor": 1, "Properties": [ "ClockRate": 1252500, "MultiprocessorCount": 2, "Integrated": 0, "CanMapHostMemory": 1, "ComputeMode": 0, "ConcurrentKernels": 1, "PciBusId": 4, "PciDeviceId": 0, "TccDriver": 0, "MemoryClockRate": 2005000, "GlobalMemoryBusWidth": 64, "AsyncEngineCount": 2, "UnifiedAddressing": 1, "PciDomainId": 0, "ComputeCapabilityMajor": 6, "ComputeCapabilityMinor": 1, "ManagedMemory": 1, "MultiGpuBoard": 0, "MultiGpuBoardGroupId": 0 ] }, "Encoders": [ { "Number": 2, "Message": "OpenEncodeSessionEx failed: unsupported device" WHY? } ] } ], "Log": [ { "Level": 48, "Category": 0, "Message": "Loaded lib: nvcuda.dll" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuInit" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuDeviceGetCount" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuDeviceGet" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuDeviceGetAttribute" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuDeviceGetName" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuDeviceComputeCapability" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuCtxCreate_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuCtxSetLimit" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuCtxPushCurrent_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuCtxPopCurrent_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuCtxDestroy_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuMemAlloc_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuMemAllocPitch_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuMemsetD8Async" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuMemFree_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuMemcpy2D_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuMemcpy2DAsync_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuGetErrorName" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuGetErrorString" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuStreamCreate" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuStreamQuery" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuStreamSynchronize" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuStreamDestroy_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuStreamAddCallback" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuEventCreate" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuEventDestroy_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuEventSynchronize" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuEventQuery" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuEventRecord" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuLaunchKernel" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuModuleLoadData" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuModuleUnload" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuModuleGetFunction" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuTexObjectCreate" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuTexObjectDestroy" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuGLGetDevices_v2" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuGraphicsGLRegisterImage" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuGraphicsUnregisterResource" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuGraphicsMapResources" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuGraphicsUnmapResources" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuGraphicsSubResourceGetMappedArray" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuDeviceGetUuid" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuImportExternalMemory" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuDestroyExternalMemory" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuExternalMemoryGetMappedBuffer" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuExternalMemoryGetMappedMipmappedArray" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuMipmappedArrayGetLevel" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuMipmappedArrayDestroy" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuImportExternalSemaphore" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuDestroyExternalSemaphore" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuSignalExternalSemaphoresAsync" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: cuWaitExternalSemaphoresAsync" }, { "Level": 48, "Category": 0, "Message": "Loaded lib: nvEncodeAPI64.dll" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: NvEncodeAPICreateInstance" }, { "Level": 48, "Category": 0, "Message": "Loaded sym: NvEncodeAPIGetMaxSupportedVersion" }, { "Level": 40, "Category": 0, "Message": "Loaded Nvenc version 9.1" }, { "Level": 40, "Category": 0, "Message": "1 CUDA capable devices found" } ] } ffmpeg-transcode-642416f1-3661-4247-bd21-2562c7fe3512_1.txt Edited September 5, 2019 by nonyhaha Link to comment Share on other sites More sharing options...
BrettDioson 4 Posted September 5, 2019 Share Posted September 5, 2019 (edited) @softworkz Trying ffdetect.exe on post #90 will end up with the following result in settings: So Might be an issue from ffdetect? After running ffdetect.exe -hide_banner -show_program_version -loglevel 99 -show_error -show_log 99 -print_format json amfenc I get: } @@nonyhaha, I believe amfenc is for AMD graphics cards (which is what I started this thread with before i switched to nvidia because the quality of AMD encoding at the time sucked horribly). I believe you are looking for nvenc instead. Edited September 5, 2019 by BrettDioson 1 Link to comment Share on other sites More sharing options...
BrettDioson 4 Posted September 5, 2019 Share Posted September 5, 2019 @@softworkz Is there anything I can change so it might be recognized? Handbrake is able to use the card. In handbrake software x265 speed is 15 fps and nvenc h265 speed is 220 fps. I reactivated my plex pass also, and plex is not able to hardware transcode eirther. The thing which I find interesting is that in their requirements list, there is mentioned that Intel Quick Sync is required even to use nvenc. I am waiting for a reply there too. Is there any chance there is a correlation with Emby case? L.E. I see this should not be an issue. So I am still stuck with hardware decoding buut the encoding is still absent. I enabled the P400 as main gpu in BIOS, I enabled auto login in windows 2016 with a dummy display attached. The encoder settings just do not pop up in emby server settings... There should be an issue with recognising the encoder, but how come as long as the decoder is being recognized and used? @@BrettDioson what cpu do you have? Do you have an IGPU also? I have an HP ProLiant ML350p. dual Xeon E5-2620v2's. no iGPU but I have an iLO which is a Matrox G200. More than likely your issue stems from FFDETECT needing to be modified to see your card's capability since for some reason it is coming back with different information than then GeForce Pascal cards do (such as my GTX1060). AFAIK, @@softworkz is the only one that can help with that. Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 5, 2019 Share Posted September 5, 2019 (edited) Looks like on Linux it is working https://www.reddit.com/r/emby/comments/a4x8rk/55_quadro_p400_hardware_transcoding_x3_2600_kbps/ I hope I have smome spare time when I get home, I will try installing Emby server on my pc. I have there a GTX 1050TI and see what happens. Edited September 5, 2019 by nonyhaha Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 5, 2019 Share Posted September 5, 2019 Got home, opened the magic box, connected monitor, kb/mouse to the server. restarted. selected the monitor to be the main and only display. restarted emby server. SAME RESULT. no encoders in the settings tab. Installed emby server on my desktop. added the premiere key. Hardware transcoding automatically set as yes. If I select advanced, everything shows up including encoders. got the p400 out of the server and put it in the desktop, taking out the gtx1050ti. no drivers modification, everything just works. i really do not know what to do or say. Link to comment Share on other sites More sharing options...
BrettDioson 4 Posted September 5, 2019 Share Posted September 5, 2019 so it works if you have the gtx1050 in, then you pull out the gtx and put in the Quadro and it now shows the quadro for encoding? What if you do the same thing on the server? if you put the GTX in the server, setup encoding then pull it out and replace it with the quadro will the quadro show up? Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 5, 2019 Share Posted September 5, 2019 At the moment i can't do this. I do this as the server is in a box on a wall. In the next days i will take it down and see what i can manage to test. At this moment the server is running without a dedicated gpu. Link to comment Share on other sites More sharing options...
softworkz 3338 Posted September 5, 2019 Share Posted September 5, 2019 @@nonyhaha - I don't have much ideas about what could cause that error on your server. I'm pretty sure at least, that it's not a problem from our side that we could fix in any way. It's a singular occurrence, I've never seen this error before (error initializing nvenc). At least you've confirmed that it's not a problem of the hardware. My best bet would be to look into the driver installation. Try uninstalling and removing all Nvidia stuff you can see, reboot, reinstall the latest Quadro driver. Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 5, 2019 Share Posted September 5, 2019 Thank you for the reply. The only thing i do not want to do is reinstall windows. Everything elae is ok. I have some vm's and it would take too long to set back up wvwrything. I will try to remove all nvidia stuff and also reinstall emby. Link to comment Share on other sites More sharing options...
softworkz 3338 Posted September 5, 2019 Share Posted September 5, 2019 You can skip reinstalling emby. That won't make any difference in hardware detection. ffdetect.exe is 100% self-contained and independent. It doesn't require any dlls, registry entries or other files and it doesn't even care whether Emby is installed or not. Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 8, 2019 Share Posted September 8, 2019 (edited) Hello. Yesterday i got my server down. Used ddu to remove everything from nvidia. Installed latest quadro win 2016 drivers. Same result. Switched to my gtx 1050ti. Same result. Decoders all available but no encoders. After reading a lot of posts on plex forum also looks like there is a problem with transcoding using gpu on win server 2016 and i could not find a solution. At the moment i am still investigating but my hopes are not so high. If someone here is able to tell me what to try or what to check, i would highly appreciate it. Fyi... Media foundation feature is added. I also tried reinstalling it. When this is uninstalled, the encoders are gone too. Thanks. Edited September 8, 2019 by nonyhaha Link to comment Share on other sites More sharing options...
nonyhaha 3 Posted September 9, 2019 Share Posted September 9, 2019 Another "yesterday" update: Removed my os ssd, replaced it with test hdd. Installed win server 2019. Of course, encoding shows up... I still have the 2016 win on the main ssd. For a few days. In case somebody wants to test something. I managed to easyly migrate my vms so i will add all the remaining features I had and will say goodbye to win server 2016. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now