Live TV fails with "Error — Unable to find title for item of type 5"

@workit247

I truly believe your heart is in the right place and you want to help people (also kudos for figuring out a solution) but you HAVE to be careful here. Not all Plex users are techie enough to understand the implications of dropping in your executable. Just because it is named the same way it does not mean that it does the same thing. If you were a malicious actor, you could do a whole lot of damage to people’s machines/lives etc.

I read the python script since the source is available and I can vouch that you are not trying to do anything sneaky but it is hard to tell with the EXE. I would urge people to try out the python route or wait until an official fix from Plex becomes available.

thanks again for figuring it out though!

K

2 Likes

@tachtevrenidis I appreciate your understanding and that totally makes sense. Only way to verify the executable contains only the script would be to install Python 2.7.12 (what Plex uses) and ‘pyinstaller’ module, generating it locally then comparing file size. That’s a tutorial that would be tough to write :nerd_face: You are 100% right, encouraging people to use posted executables, though might be safe this time, it might not be in the future. I’ll remove it in a few days (if I can) but will leave enough time for you guys to grab it if you’d like to have it in your back pocket.

2 Likes

Just wanted to confirm that the Python exe appears to work. Thanks for your work on this.

2 Likes

ISSUE: Leaves tuner occupied when closing stream/recording. Unusable for Windows (unless you have it permanently tuned to a channel.

Step by step for generating your own ‘Plex Transcoder.exe’ -probesize python fix, as included in the ‘plex_transcoder_probesize_x86.zip’ from above.

This is for x86 Plex only. If you are installing everything as 32-bit, you’ll have to make edits to the source.py file, and most likely install the 32-bit version of python.

INSTALL PYTHON

  • Download Python 2.7 (latest 2.7.x)
    Python Release Python 2.7.16 | Python.org
  • In most cases, you’ll be downloading Windows x86-64 MSI installer.
  • Install for all users (recommended). Click ‘Next’.
  • Leave default install location alone (C:\Python27\). Click ‘Next’.
  • Under Customize Python scroll down to the bottom of the tree and make sure Add python.exe to Path is clicked and set to Will be installed on local hard drive. Click ‘Next’.
  • Windows may open an ‘allow’ dialog in the background, so if nothing pops up, check your taskbar for a blinking option waiting to be clicked.

INSTALL PIP (small package manager that will install ‘pyinstaller’)

  • Download get-pip.py [https://bootstrap.pypa.io/get-pip.py] to a folder on your computer, I recommend creating a folder on your desktop called ‘TranscoderFix’. Open a command prompt window and navigate to that folder (cd Desktop\TranscoderFix) or whatever folder you downloaded get-pip.py to . Then run python get-pip.py . This will install pip .

INSTALL pyinstaller (this is what takes the python script and turns it into a standalone .exe file)

  • In the same command prompt, now that PIP has been installed you should now be able to run pip install pyinstaller.

GET THE SCRIPT READY

  • Either use the source.py file from the plex_transcoder_probesize_x86.zip above or copy and paste the code below into a new file. An easy way to do this is to type notepad source.py in that same command prompt window, then clicking Yes to create a new file.
#!"C:\Python27\python.exe"
import sys
from sys import argv
import subprocess

# Tell this shim where the 'real' Plex Transcoder is
#cmd = '/Applications/Plex Media Server.app/Contents/MacOS/plex_transcoder' # for mac
#cmd = '/usr/lib/plexmediaserver/plex_transcoder' # for linux/ubuntu
cmd = "C:\Program Files (x86)\Plex\Plex Media Server\plex_transcoder.exe" # windows 64-bit
#cmd = "C:\Program Files\Plex\Plex Media Server\plex_transcoder.exe" # windows 32-bit

# Get all arguments passed to what it thinks is the original 'Plex Transcoder'

cmdargs = sys.argv

# Remove the first argument (the script/program name itself)

cmdargs.pop(0)

# Initialize the argument counter

cmdindex=0

# Loop through all arguments and modify them as needed
# - remove arguments that when passed to the original 'Plex Transcoder' error it out.

for cmdarg in cmdargs:
  
  # lower the '-probesize' so that it keeps us under the timeout limit of PMS
  if cmdarg == "-probesize":
    cmdargs[cmdindex+1]="9000000" # was 20000000

  # remove offending arguments
  if cmdarg == "-x264opts:0" or cmdarg == "-crf:0" or cmdarg == "-preset:0":
    cmdargs[cmdindex]=""

  # escape single quotes in arguments
  cmdargs[cmdindex]=str(cmdarg).replace("'", "\\'")
  
  # bump up the counter for the next loop
  cmdindex += 1

target = [cmd] + cmdargs
subprocess.call(target)

GENERATE THE EXE

  • In that same folder that now contains source.py, you can now runpyinstaller --onefile source.py.
  • If all went well, you can now look under the newly created dist folder and you’ll have your new source.exe. If renaming in Windows Explorer, you won’t see the ‘.exe’ extension, just the name.
  • You can now rename 'source' to 'Plex Transcoder'.
  • You can now use this instead of the included ‘Plex Transcoder’ included in the zip.
  • DO NOT just blindly copy this new ‘Plex Transcoder’ executable anywhere. Follow instructions included in the README.txt file from the zip in the post above.

Thank you for providing this fix. I did want to mention that I had to remove it because it had the side effect of holding my HDHomeRun tuners open indefinitely. I don’t expect you to look into this, but I thought you might want to know.

Guess I’ll need to wait on Plex development.

Yes looks like we’ll be waiting for Plex on the fix for Windows :confused: Thank you for letting us know!

@elan, is there a way we can get an ETA on this? Nothing is more frustrating than sitting down to watch something, and Plex saying ‘check your antenna’ (I don’t have an antenna but it still says that). Sometimes channels work other times they don’t… :frowning:

Ditto. My wife keeps asking me every day why “Plex is still broken”.

Shim still required for latest 1.15.4.919 on Ubuntu.

Same here. I get the same ‘Unable to find title for item of type 5’ error when I try to tune to The Weather Channel. All other channels work fine. If I use another app to tune to The Weather Channel on my HDHR Prime 3, it works fine so I know the tuner is working… My PLEX server is running on a Synology NAS (x64) with the latest beta version of PLEX. Could it be the beta version be causing this issue?

Along with the ‘Unable to find title for item of type 5’, I am seeing a transcode permission error too:

This is seriously starting to bite me in the rear as I travel, and my wife asks why live TV is broken on random channels. Is there any status update at all?

I’m in the same boat. Version 1.15.5.994 on Ubuntu

Hey Chuck – It’s 6 weeks later. This is a nasty bug. Is there anyone who can provide an update? Thanks.

1 Like

@cscoppa You’re in luck, my workaround only works on Linux. Reach out if you’d like better instructions than what’s already posted. HTH

1 Like

Workaround already in place, from some quick testing it seems to work! :slight_smile:

I have heard nothing from engineering on this.

Problem just seems to get worse and worse. At first, it would happen just now and then with certain channels. Now, it seems about 50/50. Would really like to see the Plex team get this one working. Live TV has become basically hit or miss.

Latest logs from my attempts tonight:

May 15, 2019 19:34:20.475 [3156] DEBUG - HTTP requesting GET http://192.168.1.207:80/discover.json
May 15, 2019 19:34:20.475 [3156] DEBUG - HTTP 200 response from GET http://192.168.1.207:80/discover.json
May 15, 2019 19:34:20.475 [3156] DEBUG - HTTP requesting GET http://192.168.1.207:80/lineup_status.json
May 15, 2019 19:34:20.475 [3156] DEBUG - HTTP 200 response from GET http://192.168.1.207:80/lineup_status.json
May 15, 2019 19:34:20.490 [3156] DEBUG - Activity: updated activity 91198db6-7c25-4885-b95f-f1ed098c1fcc - completed 8% - Recording
May 15, 2019 19:34:22.362 [4072] DEBUG - TranscodeSession: timed out waiting to find duration for live session
May 15, 2019 19:34:22.362 [4072] ERROR - Failed to start session.
May 15, 2019 19:34:22.362 [4072] DEBUG - Streaming Resource: Terminated session 0xa91a2e8:d4e46108-355f-46e1-9e73-9e23c4d0b672 with reason Recording failed. Please check your tuner or antenna.
May 15, 2019 19:34:22.362 [4072] ERROR - DVR:Recorder: Unable to create transcode session or session failed to start.
May 15, 2019 19:34:22.362 [4072] DEBUG - Killing job.
May 15, 2019 19:34:22.362 [4072] ERROR - DVR:Recorder: Error 16 (Recording failed. Please check your tuner or antenna.) starting the record, shutting things down.
May 15, 2019 19:34:22.362 [4072] DEBUG - DVR:Grabber: Cleaning up rolling grab for channel 667.
May 15, 2019 19:34:22.362 [4072] DEBUG - DVR:Recorder: No more consumers, stopping.
May 15, 2019 19:34:22.378 [4072] DEBUG - DVR:Recorder: Asked to stop recording 'Live TV - Session 8c432e25e7b1949f5cb1751849da258e' on channel 667.
May 15, 2019 19:34:22.378 [4072] DEBUG - DVR:Grabber: Freed a tuner on device://tv.plex.grabbers.hdhomerun/131226E6 (now 3 available)
May 15, 2019 19:34:22.378 [4072] DEBUG - DVR:Grabber: Operation for 'Live TV - Session 8c432e25e7b1949f5cb1751849da258e' on channel 667 completed with status error (Recording failed. Please check your tuner or antenna.)
May 15, 2019 19:34:22.378 [4072] DEBUG - Activity: Ended activity 91198db6-7c25-4885-b95f-f1ed098c1fcc.
May 15, 2019 19:34:22.378 [4072] DEBUG - DVR:Grabber: Cleaning up rolling grab for channel 667.
May 15, 2019 19:34:22.378 [4072] DEBUG - DVR:Recorder: No more consumers, stopping.
May 15, 2019 19:34:22.378 [4072] ERROR - DVR:Grabber: Starting media grab failed.
May 15, 2019 19:34:22.378 [4072] ERROR - Unknown metadata type: 
May 15, 2019 19:34:22.378 [4072] DEBUG - Asked for unknown type: -1
May 15, 2019 19:34:22.378 [1204] ERROR - DVR:Subscription: Rolling media grab failed to start.
May 15, 2019 19:34:22.378 [1204] DEBUG - DVR:Subscription: Cancelling grab for subscription 5: 'Live TV - Session 8c432e25e7b1949f5cb1751849da258e' on channel 667
May 15, 2019 19:34:22.378 [1204] DEBUG - DVR:Grabber: Cancelling operation for 'Live TV - Session 8c432e25e7b1949f5cb1751849da258e' on channel 667 with status cancelled.
May 15, 2019 19:34:22.378 [1204] DEBUG - DVR:Grabber: Operation was active, stopping recorder.
May 15, 2019 19:34:22.378 [1204] DEBUG - DVR:Grabber: We've cancelled the grab with 274 seconds remaining.
May 15, 2019 19:34:22.378 [3628] DEBUG - HTTP requesting GET http://192.168.1.207:80/discover.json
May 15, 2019 19:34:22.393 [3156] DEBUG - Job was already killed, not killing again.
May 15, 2019 19:34:22.393 [2476] DEBUG - Jobs: 'C:\Program Files (x86)\Plex\Plex Media Server\Plex Transcoder.exe' exit code for process 3192 is -1059143458 (intentional termination)
May 15, 2019 19:34:22.393 [3156] DEBUG - Job was already killed, not killing again.
May 15, 2019 19:34:22.393 [3156] DEBUG - Stopping transcode session d4e46108-355f-46e1-9e73-9e23c4d0b672
1 Like

Thank you for your feedback. I have referred this to the development team.

3 Likes

Same issue for me on the latest version 1.15.6.1079. Caused a DVR recording to fail to start.