Can't enable hardware transcoder

Looks normal… try a reboot perhaps.

Restart didn’t resolve it. Something is wrong… this is better hardware than what I was running and this thing can barely stream at 240p.

2017/05/24 00:42:03 [TNR] Opened connection to 1047AEBE for ch11.1
2017/05/24 00:42:03 [HLS] Starting transcoder for channel 11.1 (encoder=libx264, resolution=360, deinterlacer=blend, bitrate=720)
2017/05/24 00:42:26 [WRN] Buffer for 1047AEBE ch11.1 is more than 50% full (clients=1, len=16779000)
2017/05/24 00:42:33 [HLS] Stopping transcoder session 1047AEBE-ch11.1 @ 18.7187s
2017/05/24 00:42:33 [TNR] Closed connection to 1047AEBE for ch11.1
av_interleaved_write_frame(): No such file or directory

log data

Yea that seems off…

Maybe check the bios settings and make sure the processor isn’t in energy saving mode?

You are a genius and I am a complete and total idiot. Wasn’t a setting… it was a power supply. I got the warning as soon as I booted into the bios. I didn’t pay attention when I swapped out the laptops and I had left the 65w adapter in there when it needed a 90w. Bios warned that the system performance had been adjusted to accommodate. I still can’t enable the hardware transcoder but software seems to be performing just fine. Do you think I should try an uninstall and reinstall? Do you know if Channels makes any determinations on install?

1 Like

Reinstall won’t change anything…

Can you run the command from Can't seem to enable hardware transcoding again and see what it says?

$ ./channels-dvr/latest/ffmpeg -hide_banner -vaapi_device /dev/dri/renderD128 -f lavfi -t 0.1 -i color=black:640x480 -f null -y /dev/null
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns -1
libva error: va_getDriverName() failed with unknown libva error,driver_name=(null)
[AVHWDeviceContext @ 0x2e6e000] Failed to initialise VAAPI connection: -1 (unknown libva error).
Segmentation fault (core dumped)

When I switched to D129 (which I have no idea what I’m doing…) I get this…

$ ./channels-dvr/latest/ffmpeg -hide_banner -vaapi_device /dev/dri/renderD129 -f lavfi -t 0.1 -i color=black:640x480 -f null -y /dev/null
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: va_openDriver() returns 0
Input #0, lavfi, from ‘color=black:640x480’:
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: rawvideo (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
Output #0, null, to ‘/dev/null’:
Metadata:
encoder : Lavf57.71.100
Stream #0:0: Video: wrapped_avframe, yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc57.89.100 wrapped_avframe
frame= 3 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.12 bitrate=N/A speed=2.98x
video:1kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

Very interesting… there are two cards somehow and only one works.

I think my install is FUBAR because of my mistake with the power supply.

Seems unlikely… I think ubuntu discovers the devices on every reboot.

Either way I’ve fixed this for the next DVR build so it will try to use renderD129 if it exists.

EPIC! Thanks man!

v2017.05.24.1509 is out with the fix. Click “check for upgrade” and it should work now.

Version
2017.05.24.1509
Up to date!
Uptimea minute
Started Today at 10:46 AM

Still no hardware option. I think something is messed with my install.

Ah, my change was wrong… sorry. Will roll another build shortly.

Run this in Terminal to update to test build:

curl -XPUT http://127.0.0.1:8089/updater/check/2017.05.24.1552

Oh man, it worked! but…

https://www.dropbox.com/s/u6vv05n5kizsr0f/ScreenShot2017-05-24at2.15.03PM.png?dl=0

it gets better if I set it to blend on the deinterlacer but even it has some issues.

2017/05/24 16:34:16 [HLS] Starting transcoder for file-395 at 18m0s (encoder=h264_vaapi, resolution=720, deinterlacer=hardware, bitrate=2000)
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: va_openDriver() returns 0
2017/05/24 16:34:18 [HLS] Stopping transcoder for file-395 after seek to 18m0s (out=0s, finished=false)
2017/05/24 16:34:18 [HLS] Starting transcoder for file-395 at 18m0s (encoder=h264_vaapi, resolution=720, deinterlacer=hardware, bitrate=2000)
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: va_openDriver() returns 0
Unrepairable underflow!
2017/05/24 16:35:31 [HLS] Stopping transcoder session file-395 @ 20m39.459311s
2017/05/24 16:35:42 [HLS] Starting transcoder for file-395 at 18m0s (encoder=h264_vaapi, resolution=720, deinterlacer=blend, bitrate=2000)
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: va_openDriver() returns 0
2017/05/24 16:36:14 [HLS] Stopping transcoder session file-395 @ 19m40.133378s

That might be normal for 2mbps. Try a higher bitrate?

Check your BIOS settings again and see if there are options for selecting the primary GPU. Seems like your machine maybe has two of them.