This is, unfortunately, a good example of Plex slow response and lack of communication. OttoKerner jumped in and filed a bug report which was great. But no word since then on what I consider to be a core feature.
We could roll back to a working version of Plex. I’ve never done that but guess it’s time to learn how since it surely this won’t be the last time it might be helpful.
I chose to get MCEBuddy and don’t regret it. But it’s probably not for everyone. Commercial skipping in Plex is a simple checkbox (when working of course). MCEBuddy’s post possessing features such as commercial skipping are more powerful & flexible but also more complex so expect some learning curve.
While Emby support is reportedly more responsive, I don’t see how switching to Emby has any bearing on this issue. I’m curious as to what advantages Emby might offer but I really don’t want to take on a product switch right now. I’ve got enough problems without that right now hah.
MCEBuddy’s post possessing features such as commercial skipping are more powerful & flexible but also more complex so expect some learning curve.------ I agree totally, but most people I think that run a Plex server can set it up fairly easy. It’s very straightforward. I can’t imagine going back to just a checkbox compared to having full control (and it’s easy!)
While Emby support is reportedly more responsive, I don’t see how switching to Emby has any bearing on this issue. I’m curious as to what advantages Emby might offer but I really don’t want to take on a product switch right now.--------- I respect this, but just throwing it out there as an option. I too was hardcore PLEX PLEX PLEX! After being upset about several different issues over a long period of time, I switch to Emby and it’s been fantastic. The biggest thing overall I think was the lack of buffering (especially with Live TV) if I remember correctly. It just freaking works and works fantastic.
I have seen comments (one in this thread) about the MCEBuddy interface not being user friendly. MCEBuddy was worth it for me. I can address individual show commercial skip issues that the Plex simple checkbox approach can’t. So a simple checkbox might be what you want, or might not be,. Just wanted to point out the difference.
I can understand and respect the frustrations with Plex. Thanks for the feedback about Emby. Stability is important. Either I find a way to maintain stability with Plex, perhaps by avoiding beta releases and knowing how to roll back versions when needed, etc. Or… Maybe I give Emby a try as well. My family won’t tolerate forever having core features break unexpectedly for who knows how long. So I’ve got some testing and thinking to do.
@mspacek. You must not live with a blond that thinks if she hits “Record Series” everything will record everything without commercials regardless if a football game runs over, or the President has an address, or there is a sever weather warning banner running across the program content.
@davissd_gmail_com . Yes, she’s blond. And yes, she has pretty high expectations for stuff to “just work”. Which is why we still have a commercial TV service. But I want to get rid of that and can’t until I have a solid alternative which I would like Plex to be part of.
Do you get that error if you just run plex commercial skipper from the command line with no argument? I think the error above indicates an issue with the DLL that supports C++ apps.
This thread may help - the second post includes links to download a clean version of the DLL. Doing the SFC check is also not a bad idea. Redirecting
Plex commercial skipper is creating an EDL file - it just doesn’t seem to be acted upon. Makes me think that the FFMPeg or whatever they’re using to cut is broken vs Plex Commercial Skipper.
While I was still dinking around with this, I actually copied the Plex Commercial Skipper.exe into another app (along with a couple DLLs that were also needed) and tested it for a while. Not sure if that is kosher to do but was just testing. It worked find for the several days I tested it. Perhaps the failure in one scenario and not the other is due to differing parameters being passed, I don’t know.
There are a couple of environment variables which need to be set if you’re going to run it from the command-line:
EAE_ROOT
FFMPEG_EXTERNAL_LIBS
For example, on my Mac, they look like this:
EAE_ROOT='/var/folders/mg/s81mwtcn7fn6t3dvp5rh2g1m0000gn/T/pms-0cc01b04-cff4-449c-b4a7-b89c2c223f35/EasyAudioEncoder' FFMPEG_EXTERNAL_LIBS='/Users/username/Library/Application\ Support/Plex\ Media\ Server/Codecs/0bc617e-2974-darwin-x86_64/' '/Applications/Plex Media Server.app/Contents/MacOS/Plex Commercial Skipper'
Obviously it will look different on Windows. You can check your PMS logs to see how the environment should be set; just search for “Plex Commercial Skipper” and look for the EAE_ROOT and FFMPEG_EXTERNAL_LIBS portions of the command-line.
No Application Log error.
Here is the output:
C:\Program Files (x86)\Plex\Plex Media Server>“Plex Commercial Skipper.exe”
Comskip 0.82.005, made using ffmpeg
Donator build
The commandline used was:
“Plex Commercial Skipper.exe”
-h, --help Display syntax
-w, --debugwindow Show debug window
-n, --playnice Slows detection down
–zpcut Outputs a ZoomPlayer cutlist
–zpchapter Outputs a ZoomPlayer chapter file
–scf Outputs a simple chapter file for mkvmerge
–videoredo Outputs a VideoRedo cutlist
–videoredo3 Outputs a VideoRedo3 cutlist
–csvout Outputs a csv of the frame array
–quality Outputs a csv of false detection segments
–plist Outputs a mac-style plist for addition to an EyeTV archive as the ‘markers’ property
-m, --demux Demux the input into elementary streams
–hwassist Activate Hardware Assisted video decoding
–threads= The number of threads to use
-p, --pid= The PID of the video in the TS
-t, --ts The input file is a Transport Stream
-d, --detectmethod= An integer sum of the detection methods to use
-v, --verbose= Verbose level
-u, --dump= Dump the cutscene at this frame number
-s, --play Play the video
–timing Dump the timing into a file
-q, --quiet Not output logging to the console window
–ini= Ini file to use
–logo= Logo file to use
–cut= CutScene file to use
–output= Folder to use for all output files
–output-filename= Filename base to use for all output files
–selftest= Execute a selftest
Input file
Output folder for cutlist
Detection methods available:
1 - Black Frame
2 - Logo
4 - Scene Change
8 - Resolution Change
16 - Closed Captions
32 - Aspect Ratio
64 - Silence
128 - CutScenes
255 - USE ALL AVAILABLE
it’s an h264 stream - this error was why I was originally replacing the shipped plex commercial skipper.exe with a renamed copy of comskip.exe. Maybe it’s time to go back to that approach
I haven’t tried that yet. I’ll give it a go and see what happens. As I said before, you never know until you test.
Update… Looks like maybe it didn’t fail, but it didn’t do anything either. MCEBuddy cut over 9 minutes of commercials using the exact same comskip executable. The exit code in the below message doesn’t look right to me though but maybe I’m wrong.
Jobs: ‘C:\Program Files (x86)\Plex\Plex Media Server\Plex Commercial Skipper.exe’ exit code for process 3616 is -1073741819 ()
Here’s a bit more of the detailed log from this attempt…
Mar 13, 2020 17:30:00.934 [13296] DEBUG - Grabber: Recording for 'According to Jim - E1 - Foul Ball' on channel 7.4 stopped with status complete.
Mar 13, 2020 17:30:00.934 [13296] DEBUG - Grabber: Using recording status.
Mar 13, 2020 17:30:00.934 [13296] DEBUG - Activity: updated activity 1442dd9e-f2ac-451c-8972-7fed7487de93 - completed 100.0% - Recording
Mar 13, 2020 17:30:00.934 [13296] DEBUG - [MI] Opening input file: "L:\Plex Media\TV Shows\.grab\da386adf1337c9437f1ebbfe84cb4cdfc9eab89f-e2bc3cddb41a85c861337d78b6c84345074dec56\According to Jim (2001) - S05E01 - Foul Ball.ts"
Mar 13, 2020 17:30:00.938 [13296] DEBUG - [MI] * [mpegts mpeg2video/ac3] Duration: 1787687ms, 720x480 (1.777778) 29.970fps, bitrate=2246kbps, audio channels=2, optimizedForStreaming=0 ("L:\Plex Media\TV Shows\.grab\da386adf1337c9437f1ebbfe84cb4cdfc9eab89f-e2bc3cddb41a85c861337d78b6c84345074dec56\According to Jim (2001) - S05E01 - Foul Ball.ts")
Mar 13, 2020 17:30:00.938 [13296] DEBUG - [MI] Chapters had generic titles, clearing.
Mar 13, 2020 17:30:00.938 [13296] DEBUG - [MI] Closing input file: "L:\Plex Media\TV Shows\.grab\da386adf1337c9437f1ebbfe84cb4cdfc9eab89f-e2bc3cddb41a85c861337d78b6c84345074dec56\According to Jim (2001) - S05E01 - Foul Ball.ts"
Mar 13, 2020 17:30:00.938 [13296] DEBUG - Job running: EAE_ROOT='\\?\C:\Plex Transcode\Transcode\Sessions\EasyAudioEncoder' FFMPEG_EXTERNAL_LIBS='\\\\?\\C\:\\Users\\Owner\\AppData\\Local\\Plex\ Media\ Server\\Codecs\\0bc617e-2974-windows-x86\\' C:\Program Files (x86)\Plex\Plex Media Server\Plex Commercial Skipper.exe "--ini=C:\Program Files (x86)\Plex\Plex Media Server\Resources\comskip.ini" "--output=L:\Plex Media\TV Shows\.grab\da386adf1337c9437f1ebbfe84cb4cdfc9eab89f-e2bc3cddb41a85c861337d78b6c84345074dec56" -t --quiet "L:\Plex Media\TV Shows\.grab\da386adf1337c9437f1ebbfe84cb4cdfc9eab89f-e2bc3cddb41a85c861337d78b6c84345074dec56\According to Jim (2001) - S05E01 - Foul Ball.ts"
Mar 13, 2020 17:30:00.969 [13296] DEBUG - Jobs: Starting child process with pid 3616
Mar 13, 2020 17:30:02.837 [5976] DEBUG - Jobs: 'C:\Program Files (x86)\Plex\Plex Media Server\Plex Commercial Skipper.exe' exit code for process 3616 is -1073741819 ()
Mar 13, 2020 17:30:02.837 [13296] DEBUG - Recorder: EDL built after 1.9 seconds.
Mar 13, 2020 17:30:02.845 [13296] DEBUG - Recorder: Commercial skipping: output file duration was too similar (we aren't doing much). We won't replace the original.
Mar 13, 2020 17:30:02.847 [13296] DEBUG - Grabber: Scheduling 'According to Jim - E1 - Foul Ball' for assimilation.