Local Content source added to Channels DVR Server is not displayed in Android Channels app

You're in the right place.
If it imported anything you would see it under the Recordings section in the Imports secrtion..
Screenshot_2021-01-12 Channels DVR(2)

If you have any imported local content, there will be an Imports item displayed below Shows, Movies, and Recordings on the Recordings tab.

The only thing under Recordings is the 1 test live TV recording I made that is also shown in Shows/Up Next section.

Other than adding Local Content sources in the Settings page, is there some other action to Import? Otherwise, it's clear that import isn't happening, and from all I've shared, I'm not seeing a permissions issue. How might I debug this further?


Only thing I can think of is go back to where the picker is and do a Prune Deleted, then Scan Sources and check the log for errors.
Does sound like a possible permission issue.
Screenshot_2021-01-12 Channels DVR(3)

As far as what user Channels DVR is running as, here's what works on my Synology NAS (not sure if QNAP is the same).
~# ps -ef | grep channels-dvr
root 14605 1 23 Jan07 ? 1-02:07:13 ../latest/channels-dvr

Clearly something funky is going on here...

You can make a /share/DVR/Imports/Movies and copy a movie there and see if it scans. Try both with a movie folder and a direct mpg file

Thanks. I see that channels-dvr is indeed running as admin (the QNAP equivalent of root). This user has rw permissions on all directories and files, making this super weird.

Log output after pruning:
2021/01/12 09:07:13.066052 [IDX] Pruned 0 expired groups from USA-OTA98074 in 224.508µs.
2021/01/12 09:07:13.066835 [IDX] Pruned 0 expired groups from X-TVE in 727.572µs.
2021/01/12 09:07:13.171798 [IDX] Pruned 959 expired airings from USA-OTA98074 in 94.468631ms.
2021/01/12 09:07:13.304702 [IDX] Pruned 1653 expired airings from X-TVE in 132.795585ms.

No additional log events occur after Scan Sources.

[/share/CACHEDEV1_DATA/Movies] # ls -al
total 52
drw-rw-rw- 7 admin administrators 4096 2021-01-11 21:02 ./
drwxrwxrwx 49 admin administrators 4096 2021-01-12 12:15 ../
drw-rw-r-- 3 admin administrators 4096 2021-01-10 18:24 007 - Die Another Day (2002)/
drw-rw-r-- 3 admin administrators 4096 2021-01-10 18:23 007 - Tomorrow Never Dies (1997)/
drw-rw-r-- 3 admin administrators 4096 2021-01-10 18:22 8 Mile (2002)/
drw-rw-r-- 3 admin administrators 4096 2021-01-10 23:33 King Kong (2005)/
drw-rw-r-- 6 admin administrators 4096 2021-01-10 15:17 @Recycle/
[/share/CACHEDEV1_DATA/Movies] # cd King\ Kong\ (2005)/
[/share/CACHEDEV1_DATA/Movies/King Kong (2005)] # ls -al
total 16453732
drw-rw-r-- 3 admin administrators 4096 2021-01-10 23:33 ./
drw-rw-rw- 7 admin administrators 4096 2021-01-11 21:02 ../
-rw-rw-r-- 1 admin administrators 179149 2007-10-02 17:38 Folder.jpg
-rw-rw-r-- 1 admin administrators 16848406995 2011-12-29 23:22 King Kong (2005).mp4
drw-rw-r-- 2 admin administrators 4096 2021-01-10 23:33 .@__thumb/

Here is something interesting.
/share/Movies is actually a link to /share/CACHEDEV1_DATA/Movies

Would the code have some weird issue with links? AFAIKT, applications don't have access to any filesystem locations other than /share.

lrwxrwxrwx 1 admin administrators 21 2021-01-11 20:41 Movies -> CACHEDEV1_DATA/Movies/

I was able to add the path: /share/CACHEDEV1_DATA/Movies, and it started import. The link is not being traversed even though permissions are correct.

Maybe it needs to be exectuable in order to be traversed.
766 instead of 666.
All of my import directories are drwx

Those are from the daily morning EPG guide update.

I previously tried rwx with no luck. I'm wondering if the function you're calling to open a handle to the filesystem requires a flag to support sym or hard links.

Anyhow, I'm in business. Thanks for collaborating on this problem with me, and hopefully the community finds troubleshooting value from the open discussion.


1 Like

Aha. Yes symlinks are not traversed, because it can cause infinite loops if setup incorrectly.

Note that QNAP sets up this symlink structure out of the box and absent an expert user who is able to navigate Linux systems via CLI, they would never find this.

Feature request in the future can be to support symlinks but to add resiliency by gracefully failing after some depth of traversal (e.g. 10).