docker-plex-remote-transcoder icon indicating copy to clipboard operation
docker-plex-remote-transcoder copied to clipboard

Slave shows ups on check config and get cluster load, but no transcode

Open psyciknz opened this issue 4 years ago • 11 comments

Any Ideas? For all a can tell the slave is there. I had to fiddle with the ssh keys to get them usable, but the master logs in no password with the plex user via ssh.

But any time I run a transcode, it’s handled by the master.

Could it be that the containers are not running as plex user?

psyciknz avatar Sep 16 '19 08:09 psyciknz

Is it perhaps related to https://github.com/deevus/docker-plex-remote-transcoder/issues/13?

If you could provide some logging that may be helpful

deevus avatar Sep 16 '19 10:09 deevus

Here's a "normal" transcode.

2019-09-16 21:15:49,888 - prt - INFO - Checking for orphaned PRT processes
2019-09-16 21:15:49,892 - prt - INFO - Found 0 orphaned PRT processes
2019-09-16 21:15:49,911 - prt - INFO - No hosts found...using local
2019-09-16 21:15:49,912 - prt - INFO - Debug mode - enabling verbose ffmpeg output
2019-09-16 21:15:49,913 - prt - INFO - Launching transcode_local: ['/usr/lib/plexmediaserver/plex_transcoder', '-codec:0', 'h264', '-codec:1', 'aac', '-analyzeduration', '20000000', '-probesize', '20000000', '-i', '/data/Videos_To_check/F1/Formula1.2019.Italian.Grand.Prix.Qualifying.1080p.WEB.h264-VERUM-Obfuscated/c2fb185bada244d8a71044919b0c1e38.mkv', '-filter_complex', '[0:0]scale=w=480:h=270[0];[0]format=pix_fmts=yuv420p|nv12[1]', '-filter_complex', "[0:1] aresample=async=1:ocl='stereo':osr=44100[2]", '-map', '[1]', '-metadata:s:0', 'language=eng', '-codec:0', 'libx264', '-crf:0', '23', '-maxrate:0', '521k', '-bufsize:0', '1042k', '-r:0', '25', '-preset:0', 'veryfast', '-x264opts:0', 'subme=2:me_range=4:rc_lookahead=10:me=dia:no_chroma_me:8x8dct=0:partitions=none', '-force_key_frames:0', 'expr:gte(t,0+n_forced*8)', '-map', '[2]', '-metadata:s:1', 'language=eng', '-codec:1', 'aac', '-b:1', '125k', '-f', 'dash', '-min_seg_duration', '8000000', '-skip_to_segment', '1', '-time_delta', '0.0625', '-manifest_name', 'http://127.0.0.1:32400/video/:/transcode/session/acx31spzt2yvg0h6mzau984u/69400979-8916-4e0f-9d83-5693b833052c/manifest', '-avoid_negative_ts', 'disabled', '-map_metadata', '-1', '-map_chapters', '-1', 'dash', '-start_at_zero', '-copyts', '-vsync', 'cfr', '-y', '-nostats', '-loglevel', 'verbose', '-loglevel_plex', 'verbose', '-progressurl', 'http://127.0.0.1:32400/video/:/transcode/session/acx31spzt2yvg0h6mzau984u/69400979-8916-4e0f-9d83-5693b833052c/progress']

Where it reports no slaves.

But when I exec into the container (master) and run /usr/lib/plexmediaserver/Plex\ Transcode I get a connection:

2019-09-16 21:18:35,707 - prt - INFO - Checking for orphaned PRT processes
2019-09-16 21:18:35,709 - prt - INFO - Found 0 orphaned PRT processes
2019-09-16 21:18:36,157 - prt - INFO - Host with minimum load is 'folco.local'
2019-09-16 21:18:36,157 - prt - INFO - Using transcode host 'folco.local'
2019-09-16 21:18:36,157 - prt - INFO - Launching transcode_remote with args ['ssh', '-tt', '-R', '32400:127.0.0.1:32400', u'[email protected]', '-p', u'8022', "export LANG=C.UTF-8;export PLEX_UID=1000;export TERM=xterm;export TZ=Pacific/Auckland;export SLAVE_USER=plex;export SHLVL=1;export CHANGE_CONFIG_DIR_OWNERSHIP=true;export HOSTNAME=d32d06b6cfe9;export ADVERTISE_IP=http://drogo.local:32400;export SLAVE_PORT=8022;export PWD=/;export SLAVE_IP=folco.local;export PLEX_GID=1000;export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin;export;export LC_ALL=C.UTF-8;export MASTER_IP=drogo.local;export HOME=/config;export _='/usr/lib/plexmediaserver/Plex Transcoder';export PRT_ID=f5fffdfed86211e989220242ac1f0002;cd /;prt_local "]

So I think all the bits are there, and the ssh connection is being established, but for some reason the master doesn't seem to think so. I did see a note about the easyaudiotranscoder being used (being a reason for not using a slave)....but while the transcode was running I looked at the process list and the easyaudio transcoder wasn't running (so assume it's not that)

psyciknz avatar Sep 16 '19 10:09 psyciknz

Hmm I'm not sure. I'm not currently using this myself, but if you can work it out I will accept a PR.

deevus avatar Sep 16 '19 10:09 deevus

Yeah not knowing why it’s not using the slave I’ve asked on pro as well. I wonder if something with the plex user

psyciknz avatar Sep 16 '19 10:09 psyciknz

So I fiddled with the prt python script and added some debugging to the ssh command

And saw 2019-09-17 08:35:42,283 - prt - DEBUG - stderr: ssh: /usr/lib/plexmediaserver/lib/libcrypto.so.1.0.0: no version information available (required by ssh) ssh: /usr/lib/plexmediaserver/lib/libcrypto.so.1.0.0: no version information available (required by ssh) ssh: relocation error: ssh: symbol ENGINE_load_builtin_engines, version OPENSSL_1.0.0 not defined in file libcrypto.so.1.0.0 with link time reference

Any ideas why (or how to stop it) from trying that libcrypto file and not another one?

Though I note the permissions on that folder as root:root where a lot of other files in the container are the Plex user.

psyciknz avatar Sep 17 '19 04:09 psyciknz

The docker images had stopped building. Now that I've rebuilt them can you try again and see if the issue persists?

deevus avatar Sep 17 '19 05:09 deevus

Make sure to pull the latest images using docker pull

deevus avatar Sep 17 '19 05:09 deevus

I'll give it a go now...actually a hack I'd made to the master /root/etc/cont-init.d/62-ssh-keygen

is after the:

 printf "StrictHostKeyChecking no\n" >> /etc/ssh/ssh_config

I've added:

#update the ssh config and set the pub/private keys
    sed -i 's+#   IdentityFile ~+IdentityFile /config+' /etc/ssh/ssh_config

Which sets the pub/private key etc to the copy in /config/.ssh folder. Otherwise i found the keys didn't work (do yours?)

psyciknz avatar Sep 17 '19 07:09 psyciknz

So no difference for me.

2019-09-17 19:05:51,465 - prt - INFO - Checking for orphaned PRT processes
2019-09-17 19:05:51,478 - prt - INFO - Found 0 orphaned PRT processes
2019-09-17 19:05:51,493 - prt - INFO - No hosts found...using local
2019-09-17 19:05:51,494 - prt - INFO - Debug mode - enabling verbose ffmpeg output

I assume it's that ibcrypto.so.1.0.0 issue (I have to hack around in the prt source to get that to show up).

psyciknz avatar Sep 17 '19 07:09 psyciknz

Like I said I'm not using this currently. If you can work it out I'll happily merge it in

deevus avatar Sep 17 '19 07:09 deevus

Cheers anyway. The only thing I can think of is to run as the plex user...maybe USER plex inth dockerfile. Will give that a go.

psyciknz avatar Sep 17 '19 08:09 psyciknz