Moving a recorded movie file & updating the Channels DVR database

Could I have some help please....

If I move a recording (say a movie file) from the Channels DVR "movies" folder into another directory, is there a way to update the Channels DVR database such that the recorded movie is no longer visible in the recordings database?

At the moment if I move a recording from the default Channels DVR directory, the recording still shows up within the Channels DVR Apple TV app, however obviously the recording will not play as the physical file has moved location. Same happens if I re-name a recorded file.

I am looking to move my recorded movies out of the Channels DVR directory into another directory on my home server, but want Channels DVR database to update to reflect the changes (i.e. for the moved recording to disappear from recorded movies section within Channels DVR). Is this possible?

You should then Trash the recording in the user interface. Channels DVR Server tracks it's data in a database, it doesn't read from disk to track things. If you move/delete the recording file from the disk, Channels DVR Server has no idea that you've done that. In practice, you should never do that. But if you do, you'll need to manage it yourself by going in and deleting the recording yourself in Channels.

1 Like

Channels does not really like it when you modify things that it keeps track of. But, if you are going to muck with Channels' database and file structure, then:

PUT /dvr/pruner/deleted

So, something like: curl -XPUT http://X.X.X.X:8089/dvr/pruner/deleted (or whichever tool you like to use).

To follow up, you can not do what you were wanting to do. It won't know where you moved it. The best you can do is: move the recording to a directory you have set as an import, delete the original "recording" in Channels, and then run a scan to import it back in.

Though, I would take a hard look at what you're doing and consider why you're doing it this way. You're going to just be maintaining everything manually and it's going to be a nightmare for you.

If you rename/edit a file, you cannot use it in Channels as a recorded item; in that case you need to remove it from Channels' database, and then add it back in as imported Local Content.

Ok, thanks for the reply...

So what I essentially want to do is

  1. Browse upcoming movies, and select a few to record
  2. Use MCE buddy to strip out the commercials
  3. Rename the Movie file
  4. Transfer the movie file into my "movies" directory (currently setup as local mocies import within the DVR server)
  5. Run a metadata agent to download the movie trailer & pull in all the artwork etc

Why can't Channels run a scan, know the file is not longer present (because the user moved it), and auto-trash the recording itself?

Similar to the OP, I watch all my movies and series in Emby, Channels is just for watching TV and setting stuff to record. Once a recording is done, MCEBuddy grabs the recording file, removes the commercials, converts the file to an mp4, and moves it to my Emby Movie folder or TV Show folder (depending on type).

The above is all done automatically on my server.

It's annoying to then have to manually go into Channels and trash the recording. Channels should do it automatically by scanning the DVR directory and knowing the original file is no longer present.

How often should it scan? I believe this is already being done but not sure how many times a day it does so.

There is an endpoint that you can use as well: dvr/pruner/deleted

Because what if your hard drive was just temporarily unavailable? It would wipe out your entire library.

What you are doing in your workflow is 100% outside the bounds of what Channels DVR Server does. We're all for you doing whatever you want, but the software is designed for its own domain.

In your script, just call CURL -X POST /dvr/pruner/deleted, and it will do exactly what you want. This is how we make things available.

3 Likes

maddox gave you the command why not just add a post script to MCEBUDDY to run after successful completion of the conversion. MCEBUDDY has the capability do do what you want.

  1. (v.2.3.14+) At the very end of the conversion process after all the files are moved to the destination directory. To do so the first 4 parameters need to be defined for the profile for which a post conversion custom command needs to be run.

PostCustomCommandPath=<Full Path/Relative of the executable>
PostCustomCommandParameters=<Optional parameters to be passed - see below for list>
PostCustomCommandHangPeriod=<0 or +ve number of seconds>
PostCustomCommandCritical=
PostCustomCommandUISession=
PostCustomCommandShowWindow=
PostCustomCommandExitCodeCheck=

Perfect, thanks!

I didn't realize the CURL command existed, will definitely add to MCEBuddy, thanks!

1 Like

Okay looking for some help on implementing the CURL -X POST or PUT command.

Background: Channels runs on docker on my OpenMediaVault (OMV) NAS (installed on a x86-64 system). MCEBuddy runs on a separate NUC that pulls from the SMB share where Channels records to and then moves it to a different directory on the same SMB share for Emby's movie and/or TV directory.

I've recorded a few shows, MCEBuddy saw them, converted them to mp4, deleted the original file, and saved the new mp4 to a the new location. As discussed earlier in this thread, however, Channels still shows the recorded TV shows in its DVR library.

So on the OMV machine I've saved a script file in the /usr/sbin directory named "trashdvr.sh" with the following code:

#!/bin/sh
CURL -X PUT /dvr/pruner/deleted

Here is the setup in OMV's GUI:
Screen Shot 2021-09-16 at 12.32.46 PM

However, when I run the script I get "CURL: No such file or directory"

I've also tried:

CURL -X PUT http://[IPADDRESS]:8089/dvr/pruner/deleted

And both the Host/Volume directory and the Path in Container for both the appdata for Channels and the DVR location

CURL -X PUT [FULL DIRECTORY TO CHANNELS DVR]/pruner/deleted

Also tried "POST" vice "PUT".

However, if you look in the directory on NAS where Channels appdata is stored:


And the directory for the DVR:

There is no "/pruner/deleted" folder in either place? Is there supposed to be?

You need lowercase curl not CURL

1 Like