Select Hardware Transcoder?

Is there a way to select which hardware transcoder is active for Channels DVR on a QNAP TVS-672XT? installed I have a MSI GTX 1050 TI 4GT LP Graphic Cards.
Server name|R**********d
Model name|TVS-672XT|
CPU|Intel(R) Core(TM) i3-8100T CPU, up to 3100 MHz (4 cores, 4 threads)|
Serial number|
BIOS version|Q012AT19|
Total memory|32 GB (31 GB usable)|
Multi-channel support|2 channels - 1 DIMM(s) per channel|
Memory slots|2 (16 GB / 16 GB)|
Firmware version|QTS 5.0.1.2194 Build 20221022|

Hardware Transcoder Probe
×Close
amf
[Parsed_color_0 @ 0x3814f80] size:640x480 rate:25/1 duration:-1.000000 sar:1/1
Input #0, lavfi, from 'color=black:640x480':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: rawvideo, 1 reference frame (I420 / 0x30323449), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
Unknown encoder 'h264_amf'
exit status 1
nvenc
[Parsed_color_0 @ 0x27f0f80] size:640x480 rate:25/1 duration:-1.000000 sar:1/1
Input #0, lavfi, from 'color=black:640x480':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: rawvideo, 1 reference frame (I420 / 0x30323449), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (h264_nvenc))
Press [q] to stop, [?] for help
[graph 0 input from stream 0:0 @ 0x2837600] w:640 h:480 pixfmt:yuv420p tb:1/25 fr:25/1 sar:1/1 sws_param:flags=2
[h264_nvenc @ 0x281ab00] Cannot load libcuda.so.1
[h264_nvenc @ 0x281ab00] Nvenc unloaded
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!
exit status 1
vaapi+deint
[AVHWDeviceContext @ 0x98be4c0] libva: VA-API version 1.16.0
[AVHWDeviceContext @ 0x98be4c0] libva: va_openDriver() returns 0
[AVHWDeviceContext @ 0x98be4c0] Initialised VAAPI connection: version 1.16
[AVHWDeviceContext @ 0x98be4c0] VAAPI driver: Intel i965 driver for Intel(R) Coffee Lake - 2.4.0.pre1 (2.4.0.pre1).
[AVHWDeviceContext @ 0x98be4c0] Driver not found in known nonstandard list, using standard behaviour.
[Parsed_color_0 @ 0x98cdcc0] size:640x480 rate:25/1 duration:-1.000000 sar:1/1
Input #0, lavfi, from 'color=black:640x480':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: rawvideo, 1 reference frame (I420 / 0x30323449), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> wrapped_avframe (native))
Press [q] to stop, [?] for help
[graph 0 input from stream 0:0 @ 0x98fc3c0] w:640 h:480 pixfmt:yuv420p tb:1/25 fr:25/1 sar:1/1 sws_param:flags=2
[auto_scaler_0 @ 0x9900080] w:iw h:ih flags:'bicubic' interl:0
[trim_in_0_0 @ 0x98fd180] auto-inserting filter 'auto_scaler_0' between the filter 'graph 0 input from stream 0:0' and the filter 'trim_in_0_0'
[auto_scaler_0 @ 0x9900080] w:640 h:480 fmt:yuv420p sar:1/1 -> w:640 h:480 fmt:nv12 sar:1/1 flags:0x4
[Parsed_deinterlace_vaapi_2 @ 0x98fb800] Picking 4 (MotionCompensated) as default deinterlacing mode.
Output #0, null, to '/dev/null':
Metadata:
encoder : Lavf58.29.100
Stream #0:0: Video: wrapped_avframe, 1 reference frame, vaapi_vld, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc58.54.100 wrapped_avframe
No more output streams to write to, finishing.
frame= 2 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.12 bitrate=N/A speed=35.8x
video:1kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (color=black:640x480):
Input stream #0:0 (video): 4 packets read (1843200 bytes); 4 frames decoded;
Total: 4 packets (1843200 bytes) demuxed
Output file #0 (/dev/null):
Output stream #0:0 (video): 2 frames encoded; 2 packets muxed (1072 bytes);
Total: 2 packets (1072 bytes) muxed
success!
vaapi@/dev/dri/renderD128
[AVHWDeviceContext @ 0x8e4c400] libva: VA-API version 1.16.0
[AVHWDeviceContext @ 0x8e4c400] libva: va_openDriver() returns 0
[AVHWDeviceContext @ 0x8e4c400] Initialised VAAPI connection: version 1.16
[AVHWDeviceContext @ 0x8e4c400] VAAPI driver: Intel i965 driver for Intel(R) Coffee Lake - 2.4.0.pre1 (2.4.0.pre1).
[AVHWDeviceContext @ 0x8e4c400] Driver not found in known nonstandard list, using standard behaviour.
[Parsed_color_0 @ 0x8e5bcc0] size:640x480 rate:25/1 duration:-1.000000 sar:1/1
Input #0, lavfi, from 'color=black:640x480':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: rawvideo, 1 reference frame (I420 / 0x30323449), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> wrapped_avframe (native))
Press [q] to stop, [?] for help
[graph 0 input from stream 0:0 @ 0x8e88e40] w:640 h:480 pixfmt:yuv420p tb:1/25 fr:25/1 sar:1/1 sws_param:flags=2
Output #0, null, to '/dev/null':
Metadata:
encoder : Lavf58.29.100
Stream #0:0: Video: wrapped_avframe, 1 reference frame, yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc58.54.100 wrapped_avframe
No more output streams to write to, finishing.
frame= 3 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.12 bitrate=N/A speed=94.3x
video:2kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (color=black:640x480):
Input stream #0:0 (video): 4 packets read (1843200 bytes); 4 frames decoded;
Total: 4 packets (1843200 bytes) demuxed
Output file #0 (/dev/null):
Output stream #0:0 (video): 3 frames encoded; 3 packets muxed (1608 bytes);
Total: 3 packets (1608 bytes) muxed
success!
vaapi@/dev/dri/renderD129
[AVHWDeviceContext @ 0x9a87400] libva: VA-API version 1.16.0
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
[AVHWDeviceContext @ 0x9a87400] libva: driver init failed
[AVHWDeviceContext @ 0x9a87400] libva: va_openDriver() returns 18
[AVHWDeviceContext @ 0x9a87400] Failed to initialise VAAPI connection: 18 (invalid parameter).
signal: segmentation fault

For plex to use the second transcoder I had to edit a config file in the plex directory...

let me know if more information is needed.

Can you screenshot how this appears in QNAP under Resource Monitor > System Resources > Graphics Card

I think the fix is something like this:

https://forum.qnap.com/viewtopic.php?t=167052&p=822648#p822456

If I understand you're trying to use nvidia gpu encoding? That requires libcuda which cannot be found above:

I'll try this and report back. Thanks!

nvenc
[Parsed_color_0 @ 0x32bef80] size:640x480 rate:25/1 duration:-1.000000 sar:1/1
Input #0, lavfi, from 'color=black:640x480':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: rawvideo, 1 reference frame (I420 / 0x30323449), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (h264_nvenc))
Press [q] to stop, [?] for help
[graph 0 input from stream 0:0 @ 0x3305600] w:640 h:480 pixfmt:yuv420p tb:1/25 fr:25/1 sar:1/1 sws_param:flags=2
[h264_nvenc @ 0x32e8b00] Loaded Nvenc version 11.1
[h264_nvenc @ 0x32e8b00] Nvenc initialized successfully
[h264_nvenc @ 0x32e8b00] 1 CUDA capable devices found
[h264_nvenc @ 0x32e8b00] [ GPU #0 - < NVIDIA GeForce GTX 1050 Ti > has Compute SM 6.1 ]
[h264_nvenc @ 0x32e8b00] supports NVENC
Output #0, null, to '/dev/null':
Metadata:
encoder : Lavf58.29.100
Stream #0:0: Video: h264 (h264_nvenc) (High), 1 reference frame, yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=-1--1, 400 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc58.54.100 h264_nvenc
Side data:
cpb: bitrate max/min/avg: 600000/0/400000 buffer size: 800000 vbv_delay: -1
No more output streams to write to, finishing.
frame= 3 fps=0.0 q=24.0 Lsize=N/A time=00:00:00.12 bitrate=N/A speed=1.33x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (color=black:640x480):
Input stream #0:0 (video): 4 packets read (1843200 bytes); 4 frames decoded;
Total: 4 packets (1843200 bytes) demuxed
Output file #0 (/dev/null):
Output stream #0:0 (video): 3 frames encoded; 3 packets muxed (230 bytes);
Total: 3 packets (230 bytes) muxed
[h264_nvenc @ 0x32e8b00] Nvenc unloaded
success!

we'll..... not sure what the heck this error is now after I restarted the NAS

vaapi@/dev/dri/renderD129

[AVHWDeviceContext @ 0x9a4e400] libva: VA-API version 1.16.0 DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument Assuming 131072kB available aperture size. May lead to reduced performance or incorrect rendering. get chip id failed: -1 [22] param: 4, val: 0 DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument Assuming 131072kB available aperture size. May lead to reduced performance or incorrect rendering. get chip id failed: -1 [22] param: 4, val: 0 [AVHWDeviceContext @ 0x9a4e400] libva: driver init failed [AVHWDeviceContext @ 0x9a4e400] libva: va_openDriver() returns 18 [AVHWDeviceContext @ 0x9a4e400] Failed to initialise VAAPI connection: 18 (invalid parameter).

signal: segmentation fault

D129 won't work. But it looks like nvenc is working now?

my over my head with this sw trouble shooting I'm EE. Little to no linux exp. .... When I monitor the resource panel external graphics card usage for plex (lifetime pass holder) and Channels it just shows 0.0%.. plex was working on my QNAP TVS672N but it crapped out and QNAP sent me a 672XT. haven't gotten plex hd transcoding to work again with the new NAS (followed the same process above, but don't think I needed too) but was also was looking at getting the external gpu hardware transcoding working for Channels DVR. maybe ill try again tomorrow.... thanks for the help!!!!

This message means the gpu is being used.

Channels DVR activity shows transcoding is happening when using away from home but it's not using the external GPU from what I can tell. Im inferring this because in Resource Monitor > System Resource > Graphics Card there is no activity when this transcoding is occurring. I'm not even sure this is a Channels DRV issue cause Plex will not work as well. but like I said above I had Plex hardware transcoding (on external GPU) working before my QNAP TVS-672N died and was replaced with TVS-672XT. (had to remove the thunderbolt card to use my external Video Card but have never seen Channels DVR utilizing the external graphics card... oh well.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.