Log File Errors

I frequently get errors in my Log file. Please let me know if you know why.

It appears that sometimes when a file is being written, or overwritten, in a number-named subdirectory of the m3u8 folder, that the error occurs. The files are not set to read-only. Perhaps some parts of the DVR program are trying to write to the same file at the same time??

Here is an example error:

2020/01/29 16:59:42 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\693\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\693\stream.m3u8887856656": replace C:\Channels DVR Storage\Streaming\m3u8\693\stream.m3u8887856656 C:\Channels DVR Storage\Streaming\m3u8\693\stream.m3u8: Access is denied.

Also since 12/17/19, the m3u8 subdirectory has accumulated 10 numbered subdirectories (for example named "693") . The DVR code has never cleared these seemingly unused numbered subdirectories. Each numbered subdirectory contains a file named "stream.m3u8".

What are the permissions on the directory on question. Looking at the error messages it appears that Channels cannot modify the directory in question because it is owned by someone else.

Directories are all ‘read only’ and not changeable, as are all directories on the C: drive. That means I’m not able to change the directory permissives status manually. I’ve attempted to do this, but Windows 10 prohibits my manually changing any/all directory permissives to ‘not read only’. I thought this was odd, so I checked my Win10 (latest update) laptop and it works the same way. My status was Administrator.

The files are unrestricted (read/write).

Well, there's your problem. If Channels cannot wrote into the directory, errors are to be expected. Somehow your permissions got messed up.

I would recommend you run a chkdsk on the drive. It’s possible there could be some NTFS corruption causing an issue. Or possibly even hardware failure.

I disagree with your conclusions.

As I said, the file is not restricted and is open for read or write operations. The permissions on the folder path names are not important. I think that more than one part of the Channels DVR program is trying to access the file at the same time.

Try setting any folder on your C: drive and note that it is always forced by Win10 to be "read only"

Do you see any problems when you try to use the DVR and play recordings?

No problems visible anywhere. Just think it's best to get rid of errors if possible. If it were related to permissions then Channels DVR would not be able to write files to other directories, and it seems to be able to do so as all recordings work fine.

Very odd. Does this happen for every recording or just from time to time?

This morning (2/1/20) Channels DVR was not working on my Fire Stick 4K. No channels were available (local or TVE), just the spinning circular arrow. I went to my Win 10 computer server and OTA channels were available, but not TVE. Checked my iPhone which was using my LAN to connect. OTA were available, but not TVE. I rescanned the TVE channels and it was very slow, but finished OK then started updating the guide. After that no TVE channels could be viewed on the Win 10 computer server. Here's part of the log:
2020/02/01 09:55:26 [DVR] Fetching guide data for 96 stations in X-TVE @ 2020-02-17 3:30AM
2020/02/01 09:55:28 [DVR] indexed 806 airings (96 channels) [0s fetch, 1s index]
2020/02/01 09:55:29 [DVR] indexed 32 movies (18 channels) [0s fetch, 0s index]
2020/02/01 09:55:30 [DVR] pruned 13 replaced airings in 0s.
2020/02/01 09:55:31 [IDX] Pruned 0 expired groups from USA-OTA44406 in 0s.
2020/02/01 09:55:31 [IDX] Pruned 0 expired groups from X-TVE in 1.0001ms.
2020/02/01 09:55:31 [IDX] Pruned 0 expired airings from USA-OTA44406 in 0s.
2020/02/01 09:55:32 [IDX] Pruned 12 expired airings from X-TVE in 462.7344ms.
2020/02/01 09:56:08 [HLS] Stopping transcoder session ch6030-dANY-ip127.0.0.1
2020/02/01 09:56:08 [HLS] Couldn't generate stream playlist for ch6030-dANY-ip127.0.0.1: Stream stopped
2020/02/01 10:00:33 [HLS] Stopping transcoder session ch6014-dANY-ip127.0.0.1
2020/02/01 10:00:33 [HLS] Couldn't generate stream playlist for ch6014-dANY-ip127.0.0.1: Stream stopped

I will now reboot the Win 10 server and report the results later.

Here are the log file messages after rebooting. I overlapped with those above for continuity purposes. The program is working normally on both OTA and TVE channels. I have no idea why.

2020/02/01 09:56:08 [HLS] Stopping transcoder session ch6030-dANY-ip127.0.0.1
2020/02/01 09:56:08 [HLS] Couldn't generate stream playlist for ch6030-dANY-ip127.0.0.1: Stream stopped
2020/02/01 10:00:33 [HLS] Stopping transcoder session ch6014-dANY-ip127.0.0.1
2020/02/01 10:00:33 [HLS] Couldn't generate stream playlist for ch6014-dANY-ip127.0.0.1: Stream stopped
2020/02/01 10:07:02 [NAT] Successfully mapped port 8089 using upnp
2020/02/01 10:15:08 [SYS] Starting Channels DVR v2019.12.26.2109 (windows-x86_64 pid:15880) in C:\ProgramData\ChannelsDVR\data
2020/02/01 10:15:15 [HDR] Found 1 devices
2020/02/01 10:15:32 [SYS] Started HTTP Server
2020/02/01 10:16:11 [DVR] Recording engine started in C:\Channels DVR Storage
2020/02/01 10:16:11 [DVR] Marking expired job 1580545800-55 2020 Australian Open Tennis
2020/02/01 10:16:12 [SYS] Bonjour service running for dvr-lew-xps27.local. [192.168.1.200]
2020/02/01 10:16:13 [DVR] Marking expired job 1580553000-55 2020 Australian Open Tennis
2020/02/01 10:16:15 [DVR] Marking expired job 1580554800-55 2020 Australian Open Tennis
2020/02/01 10:16:15 [SYS] Created database snapshot: backup-20200201.101613
2020/02/01 10:16:15 [SYS] Removing old backup backup-20200106.130853
2020/02/01 10:16:16 [DVR] Marking expired job 1580562000-42 The This Old House Hour
2020/02/01 10:16:17 [DVR] Waiting 8h13m42.8516071s until next job 1580599800-9 ABC World News Tonight With David Muir
2020/02/01 10:16:27 [IDX] Pruned 11 expired airings from USA-OTA44406 in 451.7402ms.
2020/02/01 10:16:29 [IDX] Pruned 72 expired airings from X-TVE in 1.7389993s.
2020/02/01 10:18:27 [NAT] Found 2 UPnP routers
2020/02/01 10:18:27 [NAT] Successfully mapped port 8089 using upnp
2020/02/01 10:18:34 [TNR] Opened connection to TVE-auth_armstrongmywire_com for ch6014 VH1
2020/02/01 10:18:41 [HLS] Probed live stream in 7.6226157s: h264 1280x720 progressive 4939294bps
2020/02/01 10:18:41 [HLS] Starting transcoder for channel 6014 from 127.0.0.1 (encoder=libx264, resolution=720, deinterlacer=blend, bitrate=4000)
[mpegts @ 000000000266c040] DTS 3001 < 198196 out of order
2020/02/01 10:18:54 [HLS] Stopping transcoder session ch6014-dANY-ip127.0.0.1 (out: 34.167067s, finished: false)
2020/02/01 10:18:54 [TNR] Closed connection to TVE-auth_armstrongmywire_com for ch6014 VH1
2020/02/01 10:19:08 [TNR] Opened connection to 1076A443/0 for ch33.1 WYTV-HD
2020/02/01 10:19:08 [HLS] Starting transcoder for channel 33.1 from 127.0.0.1 (encoder=libx264, resolution=720, deinterlacer=blend, bitrate=4000)
2020/02/01 10:19:15 [HLS] Stopping transcoder session ch33.1-dANY-ip127.0.0.1 (out: 6.215167s, finished: false)
2020/02/01 10:19:15 [TNR] Closed connection to 1076A443/0 for ch33.1 WYTV-HD
2020/02/01 10:19:26 [TNR] Opened connection to TVE-auth_armstrongmywire_com for ch6073 FNC
2020/02/01 10:19:27 [HLS] Probed live stream in 1.0084201s: h264 1280x720 progressive 5981244bps
2020/02/01 10:19:27 [HLS] Starting transcoder for channel 6073 from 127.0.0.1 (encoder=libx264, resolution=720, deinterlacer=blend, bitrate=4000)
2020/02/01 10:19:32 [HLS] Stopping transcoder session ch6073-dANY-ip127.0.0.1 (out: 8.192s, finished: false)
2020/02/01 10:19:32 [TNR] Closed connection to TVE-auth_armstrongmywire_com for ch6073 FNC

Firstly, you're using an old prerelease version. Update to the latest prerelease before continuing.

(If you're going to use prerelease versions, you should keep up to date with them and regularly update them. Otherwise you ought to stick with stable releases.)

When I joined a few months ago, and installed Channels DVR, I thought then that I had the most recent version. I regularly do a "check for a update" and keep it up to date as it becomes available. I don't know where to find the latest version other than on the original location I used when I joined. Where should I look to I get the latest update?

Here's the version available for download at: https://getchannels.com/releases/#dvr
Version 2019.12.05.0128.
Note that the available version is older than the current version number located on my Channels DVR control panel ("2019.12.26.2109").

The reason it's newer than the Dec 5 version is because you're on a prerelease version. To update prereleases, either shift-click or click-and-hold the Check for updates button in the web UI.

OK, Thanks. I'll try it ASAP. Wife is watching TV now.

After installing the 2020.02.01.0314 update, the errors are still present when m3u8 tries to write to its file. The program works fine otherwise. I decided to try this version before going back to the last released version.

[GIN] 2020/02/01 - 23:04:06 | 200 | 54.8905673s | 127.0.0.1 | POST /hls/progress?key=ch6155-dANY-ip127.0.0.1-remux
[GIN] 2020/02/01 - 23:04:06 | 200 | 116.9322ms | 127.0.0.1 | DELETE /devices/ANY/channels/6155/hls
[GIN] 2020/02/01 - 23:04:09 | 200 | 56.4726572s | 127.0.0.1 | GET /dvr/events/subscribe
2020/02/01 23:16:57.299595 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8224764475": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8224764475 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/01 23:18:46.760637 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8347227599": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8347227599 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/01 23:19:43.432041 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8674059906": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8674059906 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/01 23:21:55.770923 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8659371685": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8659371685 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/01 23:24:56.487980 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8411231061": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8411231061 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/01 23:35:10.847616 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8605159078": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8605159078 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/01 23:50:43.382248 [NAT] Successfully mapped port 8089 using upnp
2020/02/01 23:55:50.451630 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8844898560": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8844898560 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/01 23:56:55.772060 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8265892147": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8265892147 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/02 00:14:48.180240 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8202584465": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8202584465 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/02 00:16:31.284937 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8229351300": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8229351300 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/02 00:24:18.664113 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8832113787": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8832113787 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/02 00:50:43.442592 [NAT] Successfully mapped port 8089 using upnp
2020/02/02 01:50:43.472953 [NAT] Successfully mapped port 8089 using upnp
2020/02/02 02:15:35.729648 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8272626274": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8272626274 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/02 02:22:03.848412 [M3U8] Generator: err=cannot replace "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8" with tempfile "C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8198350708": replace C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8198350708 C:\Channels DVR Storage\Streaming\m3u8\712\stream.m3u8: Access is denied.
2020/02/02 02:30:01.821495 [TNR] Closed connection to TVE-auth_armstrongmywire_com for ch6155 TENNIS
2020/02/02 02:30:02.213270 [MTS] Statistics for "TV\2020 Australian Open Tennis\2020 Australian Open Tennis Mens Doubles Championship 2020-02-01-2300.mpg": skipped=0 unhandled_packets=0 discontinuity_detected=410 transport_errors=0 invalid_pts=0 invalid_dts=0 saw_pcr=false saw_pmt=true highest_pts=12635.587144
2020/02/02 02:30:02.221266 [DVR] Finished job 1580616000-55 2020 Australian Open Tennis