Closed jfabernathy closed 1 year ago
How long is the recording? If you play it on leanfront does it show it is only 2 minutes long? How big is the file? Perhaps there are two copies of the recording, one of them short?
On Leanfront it shows as only 1:59 i.e. 2 minutes. On Mythfrontend it shows as 180 minutes but 8.24GB. If I ssh into the backend and look for files this is the only one recording in August that is still around:
-rw-r--r-- 1 mythtv mythtv 8.3G Aug 11 06:30 16263_20230811073000.ts -rw-rw-rw- 1 mythtv mythtv 823K Aug 11 13:52 16263_20230811073000.ts.png
I did go back and watch it with mythfrontend on the firetv and I did notice about 1 hour, 8 mins in, at the start of the 2nd half, there were some small signal pixelations. mythfrontend recovered quickly and continued.
Originally I started watching with Leanfront and it was a full game recording, 180 minutes. I tried clearing the cache to see if that would fix it but no. Leanfront is convinced it's only 2 minutes.
Could Leanfront be reading the current position wrong in the database vs. mythfrontend?
More information. I restarted the FireTV Max and turned on some adb logging. I then started the match playing. When it got to the end 1:59, it continued playing like there was no end. the first number kept counting up, but the second number stayed at 1:59
jim@jim-XPS-15-9500:~/platform-tools$ ./adb logcat lfe:D *:S
--------- beginning of system
--------- beginning of crash
--------- beginning of main
08-11 14:40:33.531 5485 5485 I lfe : MainActivity memoryClass:192 lMemoryClass:384
08-11 14:40:33.653 5485 5517 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/DelayShutdown
08-11 14:40:33.715 5485 5517 I lfe : XmlNode Response: 200 OK
08-11 14:40:33.751 5485 5529 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?key=MasterBackendOverride&Default=0&HostName=_GLOBAL_
08-11 14:40:33.777 5485 5529 I lfe : XmlNode Response: 200 OK
08-11 14:40:33.781 5485 5529 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?key=MasterServerName&Default=0&HostName=_GLOBAL_
08-11 14:40:33.824 5485 5529 I lfe : XmlNode Response: 200 OK
08-11 14:40:33.837 5485 5529 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecordedList?IncCast=false
08-11 14:40:33.988 5485 5529 I lfe : XmlNode Response: 200 OK
08-11 14:40:34.421 5485 5529 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?Key=BackendServerAddr&HostName=kubuntu-closet
08-11 14:40:34.436 5485 5529 I lfe : XmlNode Response: 200 OK
08-11 14:40:34.833 5485 5529 I lfe : XmlNode URL: http://192.168.0.125:6544/Video/GetVideoList
08-11 14:40:34.931 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Status/GetStatus
08-11 14:40:34.946 5485 5529 I lfe : XmlNode Response: 200 OK
08-11 14:40:34.969 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:34.979 5485 5596 I lfe : AsyncBackendCall Time difference -979 milliseconds
08-11 14:40:34.980 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetLastPlayPos?RecordedId=-1
08-11 14:40:34.993 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:34.995 5485 5596 I lfe : AsyncBackendCall Last Play Position Support:true
08-11 14:40:36.143 5485 5529 I lfe : XmlNode URL: http://192.168.0.125:6544/Channel/GetChannelInfoList?OnlyVisible=true
08-11 14:40:36.170 5485 5529 I lfe : XmlNode Response: 200 OK
08-11 14:40:37.476 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Status/GetStatus
08-11 14:40:37.565 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:37.580 5485 5596 I lfe : AsyncBackendCall Time difference -580 milliseconds
08-11 14:40:37.582 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetLastPlayPos?RecordedId=-1
08-11 14:40:37.603 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:37.607 5485 5596 I lfe : AsyncBackendCall Last Play Position Support:true
08-11 14:40:46.187 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetLastPlayPos?OffsetType=duration&RecordedId=9233
08-11 14:40:46.212 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:46.229 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetSavedBookmark?OffsetType=duration&RecordedId=9233
08-11 14:40:46.253 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:46.256 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecorded?RecordedId=9233
08-11 14:40:46.284 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:46.510 5485 6381 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?key=MasterBackendOverride&Default=0&HostName=_GLOBAL_
08-11 14:40:46.525 5485 6381 I lfe : XmlNode Response: 200 OK
08-11 14:40:46.529 5485 6381 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?key=MasterServerName&Default=0&HostName=_GLOBAL_
08-11 14:40:46.541 5485 6381 I lfe : XmlNode Response: 200 OK
08-11 14:40:46.545 5485 6381 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecorded?RecordedId=9233
08-11 14:40:46.570 5485 6381 I lfe : XmlNode Response: 200 OK
08-11 14:40:50.737 5485 5485 I lfe : PlaybackFragment Initializing Player for FIFA Women's World Cup 2023 http://192.168.0.125:6544/Content/GetFile?StorageGroup=Default&FileName=/16263_20230811073000.ts
08-11 14:40:50.885 5485 5485 I lfe : PlaybackFragment Playing offset mSec:0
08-11 14:40:51.909 5485 5596 I lfe : AsyncBackendCall URL: http://192.168.0.125:6544/Content/GetFile?StorageGroup=Default&FileName=/16263_20230811073000.ts
08-11 14:40:51.970 5485 5485 I lfe : PlaybackFragment File Length changed from -1 to 8847652804
08-11 14:40:52.974 5485 5596 I lfe : AsyncBackendCall URL: http://192.168.0.125:6544/Content/GetFile?StorageGroup=Default&FileName=/16263_20230811073000.ts
08-11 14:40:52.998 5485 5485 I lfe : PlaybackFragment File Length changed from 8847652804 to 8847652804
08-11 14:40:52.999 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecordedCutList?RecordedId=9233&OffsetType=Duration
08-11 14:40:53.026 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:53.028 5485 5596 I lfe : CommBreakTable CommBreakTable size:0
08-11 14:40:53.028 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecordedCutList?RecordedId=9233
08-11 14:40:53.043 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:53.046 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecordedCommBreak?RecordedId=9233&OffsetType=Duration
08-11 14:40:53.059 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:53.062 5485 5596 I lfe : CommBreakTable CommBreakTable size:0
08-11 14:40:53.062 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecordedCommBreak?RecordedId=9233
08-11 14:40:53.077 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:40:53.079 5485 5596 I lfe : CommBreakTable CommBreakTable size:0
08-11 14:40:53.402 5485 5485 I lfe : PlaybackFragment Frame rate Calculated:59.31198, Normalized:59.94
08-11 14:43:28.059 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/SetLastPlayPos?OffsetType=duration&RecordedId=9233&Offset=0
08-11 14:43:28.088 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.137 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/UpdateRecordedWatchedStatus?RecordedId=9233&Watched=true
08-11 14:43:28.153 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.161 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/SetLastPlayPos?OffsetType=duration&RecordedId=9233&Offset=0
08-11 14:43:28.207 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.253 5485 5485 I lfe : PlaybackActionListener onPlayCompleted checking File Length.
08-11 14:43:28.266 5485 5596 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/UpdateRecordedWatchedStatus?RecordedId=9233&Watched=true
08-11 14:43:28.273 5485 9329 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?key=MasterBackendOverride&Default=0&HostName=_GLOBAL_
08-11 14:43:28.286 5485 5596 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.293 5485 9329 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.295 5485 9329 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?key=MasterServerName&Default=0&HostName=_GLOBAL_
08-11 14:43:28.308 5485 9329 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.311 5485 9329 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecorded?RecordedId=9233
08-11 14:43:28.332 5485 9329 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.357 5485 9329 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?key=MasterBackendOverride&Default=0&HostName=_GLOBAL_
08-11 14:43:28.372 5485 9329 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.375 5485 9329 I lfe : XmlNode URL: http://192.168.0.125:6544/Myth/GetSetting?key=MasterServerName&Default=0&HostName=_GLOBAL_
08-11 14:43:28.391 5485 9329 I lfe : XmlNode Response: 200 OK
08-11 14:43:28.393 5485 9329 I lfe : XmlNode URL: http://192.168.0.125:6544/Dvr/GetRecorded?RecordedId=9233
08-11 14:43:28.416 5485 9329 I lfe : XmlNode Response: 200 OK
08-11 14:43:29.290 5485 5596 I lfe : AsyncBackendCall URL: http://192.168.0.125:6544/Content/GetFile?StorageGroup=Default&FileName=/16263_20230811073000.ts
08-11 14:43:30.305 5485 5596 I lfe : AsyncBackendCall URL: http://192.168.0.125:6544/Content/GetFile?StorageGroup=Default&FileName=/16263_20230811073000.ts
08-11 14:43:31.318 5485 5596 I lfe : AsyncBackendCall URL: http://192.168.0.125:6544/Content/GetFile?StorageGroup=Default&FileName=/16263_20230811073000.ts
08-11 14:43:32.334 5485 5596 I lfe : AsyncBackendCall URL: http://192.168.0.125:6544/Content/GetFile?StorageGroup=Default&FileName=/16263_20230811073000.ts
08-11 14:43:33.349 5485 5596 I lfe : AsyncBackendCall URL: http://192.168.0.125:6544/Content/GetFile?StorageGroup=Default&FileName=/16263_20230811073000.ts
08-11 14:43:33.367 5485 5485 I lfe : PlaybackFragment File Length changed from 8847652804 to 8847652804
08-11 14:43:33.367 5485 5485 I lfe : PlaybackFragment Playback ending at EOF.
`
To continure: If I press the right arrow to have it skip 30 seconds, it freezes the video and the time says 1:59 / 1:59 even though it may have been at 2:16 / 1:59 before I pressed right arrow.
If I then press left arrow, it skips back to 30 seconds from the real end of the file where the match ended and the local news had started to record.
exoplayer calculates the duration from timestamps in the file at the start and end. It seems that the end timestamp may be wrong. Try changing "ts search packets" in settings, advanced to a higher value.
I tried setting TS search to 3000, 5000, and 10000. No change that I can detect. I tried changing to having the last position played from Mythtv database to Android local.
If during the 1st minute I can click the left arrow and it will back up 30 seconds. If it's greater than 1 minute and I click the left arrow it backs up relative to the end of the real file, ~ 3 hours later.
I think the only way I can debug this and fix it is if I can get a copy of that 8 GB video file. You can upload it to google drive and share it with me. Google drive allows you up to 15 GB, so as long as your google drive is not over 7 GB you could share it that way and then delete it once I have downloaded it.
I've started the upload; it may take all night since my Internet is only 10Mb/s up. I'll email directly the link once I've created it. You can let me know when to delete it.
The file has the same problem when played with vlc. How did you record this? Was it over the air or cable?
This file was recording on my Production backend which is a PC with a Hauppauge WinTV QuadHD PCIe OTA tuner card. V34- Master
I copied the downloaded file to the videos storage group, scanned videos, and tried playing it with mythfrontend. Pressing i shows the length as 1 minute 58 seconds. Once it hits that time you cannot skip forward or back. It shows 1:58 of 1:58 all the time after that.
The only reason it worked on your system is that the seektable was created while recording. If there is a seek table, mythfrontend uses that instead of the timings in the video.
Nice to know the whys and what-fores. I think we can caulk this up to a bad recording that didn't get tagged as a bad recording. You can close when you are done with it.
If I copy the first half (4 GB) of the file to a new file and play that, vlc shows negative 1 hour 37 minutes length and mythfrontend shows 24 hours length. leanfront shows -- as the length, meaning unknown.
This file is badly messed up.
It is possible that you changed channels after an hour and a half? I don't know if that is possible.
The way to repair the file is by using my standard method
mkvmerge -o output-file input-file
You can replace the original file with the output-file that this creates (you don't even have to name it as mkv) and it will play perfectly with all methods, vlc, leanfront, mythfrontend.
This recorded happened while I was asleep. So whatever happened it was automatic. I'll file the mkvmerge tip away for next time.
I've been recording all the FIFA WWC matches since they are not in my timezone. This morning I was watch Japan and Sweden which had completed. I watched the first half and then I use the remote to start skipping the commercials and halftime commentary when all of a sudden it started playing local news which could have been live on that same channel, I'm not sure. So I backed out of Leanfront and started over. Now the match showed to be only 2 minutes of recording which was only the start of the match. I cleared the cache and no changes. I know I had watched the entire first half without issues.
I switched over to a Linux PC running mythfrontend against the same backend and saw the rest of the match. I have no indications of any bad signal issues on this recording. This is one of the towers that is 10 miles away and always around 90% + .
I'll save the recording so maybe it can be analyzed, but mythfrontend on x86_64 Debian has no issues with it.
Leanfront is running on a FireTV 4K Max and is version 435