Help with MCEBuddy, Manual invoking via Plex Postprocessing script

For anyone finding this thread this and wanting to drive from Plex whether a tv show uses one MCEBuddy profile or another (e.g. remove commercials from some shows and not from other commercial free channels) using Plex post processing. This is now possible, but not simple to find the overall Windows solution - so putting it here:

Steps:

  1. In Plex set your library up that you will be recording your tv shows to
  2. Add two folder locations e.g. c:/plex_tv and c:/plex_tv_remove_commercials
  3. When setting a recording up in plex you can now choose the new tv library and which location you would like to record to
  4. In MCEBuddy set up two conversion tasks e.g. Convert-No-Commercials and Convert-Remove-Commercials
  5. In the Convert-No-Commercials task set the ‘Ad remover’ setting to none and set the filename Selection Filter to:

path:C:\plex_tv*

  1. In the Convert-Remove-Commercials task set the ‘Ad remover’ setting to Comskip and set the filename Selection Filter to the following:

path:C:\plex_tv_remove_commercials*

  1. Do not set a output location - plex post processing needs to find it in the .grab folder where the original was
  2. Set your other settings e.g. archive/delete file as needed (if you don’t set the .TS file will remain and show will appear twice in Plex
  3. Create a batch file (eg mcebuddy.bat) with the following changing the path to the MCEBuddy userCLI file if different:
@echo off
C:\Progra~1\MCEBuddy2x\MCEBuddy.UserCLI.exe --command=engine --action=start timeout /t 2 /nobreak > NUL
C:\Progra~1\MCEBuddy2x\MCEBuddy.UserCLI.exe --command=addfile --action=%1 timeout /t 10 /nobreak > NUL
:loop
for /f "delims=" %%o in ('C:\Progra~1\MCEBuddy2x\MCEBuddy.UserCLI.exe --command=jobstatus --action=%1 --quiet') do set status=%%o
if %status% == "not present" (
	Exit
) else (
	timeout /t 2 /nobreak > NUL
	goto loop
)

This will take the full filepath and filename as an input (needs quotes around it if there are spaces in it) and start the MCEBuddy engine (if needed) and wait for it to complete before finishing. Plex post processing waits for it to complete before moving the file out of .grab and into its final location and adding the metadata.

  1. Adding it to post processing in plex - navigate to Live TV and DVR and open DVR settings. Add the full path and filename of your batch file you created to the postprocessing setting and make sure the detect commercials setting is Disabled otherwise plex will also try to detect commercials using its forked comskip
  2. When you set up a new recording in Plex, choose the ‘c:/plex_tv’ location to convert with no commercial removal or the ‘c:/plex_tv_remove_commercials’ to convert with commercials removed
1 Like