MrBrax / LiveStreamDVR

An automatic livestream recorder
MIT License
330 stars 25 forks source link

Docker crashed when converting a Long Captured Stream #514

Open Supergamerx3000 opened 3 months ago

Supergamerx3000 commented 3 months ago

When a long Livestream is finished the Docker beginns to Remux this work very well then comes the Step:

"Create MOOV atom for ....." at this point short Streams are Converted but long Recordes Stream 10 Hours+ stuck and the Docker crashes.

grafik

Here the Output from the Logfile direktly from the Logs Folder:

2024-06-15T22:30:00.003Z | scheduler.defaultJobs <info> Scheduler: match_vods - disabled
2024-06-15T23:00:00.003Z | scheduler.defaultJobs <info> Scheduler: export_vods - disabled
2024-06-15T23:07:31.087Z | automator.captureTicker <info> Stream ended for lastgeektonight_2024-06-15T10_57_33Z_42466106568!
2024-06-15T23:07:31.088Z | automator.captureTicker <info> Closing currently open stream for lastgeektonight_2024-06-15T10_57_33Z_42466106568!
2024-06-15T23:07:31.123Z | automator.captureVideo <success> Job capture_lastgeektonight_42466106568 exited with code 0, signal null
2024-06-15T23:07:31.124Z | job.clear <info> Clear job capture_lastgeektonight_42466106568 with PID 160
2024-06-15T23:07:31.125Z | job.clear <success> Job capture_lastgeektonight_42466106568 removed from jobs list
2024-06-15T23:07:31.127Z | exec.startJob <success> Process 160 for capture_lastgeektonight_42466106568 closed with code 0
2024-06-15T23:07:31.127Z | job.clear <warn> Job capture_lastgeektonight_42466106568 not found in jobs list
2024-06-15T23:07:31.134Z | automator.download <info> Add end timestamp for lastgeektonight_2024-06-15T10_57_33Z_42466106568
2024-06-15T23:07:31.135Z | vod.saveJSON <success> Saving JSON of lastgeektonight_2024-06-15T10_57_33Z_42466106568  (stream capture end)
2024-06-15T23:08:01.149Z | vod.saveJSON <success> Saving JSON of lastgeektonight_2024-06-15T10_57_33Z_42466106568  (is_converting set)
2024-06-15T23:08:01.173Z | vod.saveFFMPEGChapters <info> Saving FFMPEG chapters file for lastgeektonight_2024-06-15T10_57_33Z_42466106568 to /usr/local/share/twitchautomator/data/storage/vods/lastgeektonight/lastgeektonight_2024-06-15T10_57_33Z_42466106568/lastgeektonight_2024-06-15T10_57_33Z_42466106568-ffmpeg-chapters.txt
2024-06-15T23:08:01.178Z | video.remux <info> Remuxing /usr/local/share/twitchautomator/data/storage/vods/lastgeektonight/lastgeektonight_2024-06-15T10_57_33Z_42466106568/lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts to /usr/local/share/twitchautomator/data/storage/vods/lastgeektonight/lastgeektonight_2024-06-15T10_57_33Z_42466106568/lastgeektonight_2024-06-15T10_57_33Z_42466106568.mp4
2024-06-15T23:08:01.181Z | helper.exec <success> Spawned process 313 for remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts
2024-06-15T23:08:01.184Z | job.save <info> Save job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts with PID 313 to /usr/local/share/twitchautomator/data/cache/pids/remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts.json
2024-06-15T23:08:01.185Z | helper.exec <info> Attached to all streams for process 313 for remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts
2024-06-15T23:08:01.187Z | vod.watch <info> VOD file /usr/local/share/twitchautomator/data/storage/vods/lastgeektonight/lastgeektonight_2024-06-15T10_57_33Z_42466106568/lastgeektonight_2024-06-15T10_57_33Z_42466106568-ffmpeg-chapters.txt changed (change)!
2024-06-15T23:08:01.187Z | clientBroker.notify <info> (system) VOD file changed externally: lastgeektonight_2024-06-15T10_57_33Z_42466106568-ffmpeg-chapters.txt
2024-06-15T23:08:05.939Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 11%
2024-06-15T23:08:20.050Z | hook.HookTwitch <info> Hook called with message ID QuX3AyMiiIObW_02zfoovrQwsbHrZrwRw_rSGOaor4I=, s-version 1, s-type stream.offline, b false (m-retry 0, m-type notification, m-date 2024-06-15T23:08:19.211297302Z)
2024-06-15T23:08:20.054Z | automator.end <info> Stream end
2024-06-15T23:08:20.055Z | automator.end <info> Stream offline for lastgeektonight
2024-06-15T23:08:20.056Z | clientBroker.notify <info> (streamOffline) lastgeektonight has gone offline!: Was streaming for about 12 hours.
2024-06-15T23:08:20.056Z | automator.end <warn> Stream offline notification for lastgeektonight but channel is not capturing.
2024-06-15T23:08:20.545Z | route.channels.download <error> Failed to fetch video data: GQL requests are disabled. Check your config.
2024-06-15T23:08:20.550Z | tw.vod.downloadVideo <info> Prepare to download VOD 2172621010
2024-06-15T23:08:20.761Z | tw.vod.downloadVideo <info> Downloading VOD 2172621010...
2024-06-15T23:08:20.767Z | helper.execAdvanced <success> Spawned process 316 for download_vod_2172621010
2024-06-15T23:08:20.770Z | job.save <info> Save job download_vod_2172621010 with PID 316 to /usr/local/share/twitchautomator/data/cache/pids/download_vod_2172621010.json
2024-06-15T23:08:20.771Z | helper.execAdvanced <info> Attached to all streams for process 316 for download_vod_2172621010
2024-06-15T23:08:44.461Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 21%
2024-06-15T23:08:51.964Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 32%
2024-06-15T23:09:46.721Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 42%
2024-06-15T23:10:08.909Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 52%
2024-06-15T23:10:32.650Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 62%
2024-06-15T23:10:55.474Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 73%
2024-06-15T23:11:05.030Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 83%
2024-06-15T23:11:58.189Z | job.setProgress <info> Job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts progress: 93%
2024-06-15T23:12:16.695Z | tw.vod.downloadVideo <error> Twitch returned 403, is the VOD deleted or subscriber only?
Supergamerx3000 commented 3 months ago

When i restart the Docker the Livestream is not at the left List and the Error Message says: Found ts file in channel folder: /usr/local/share/twitchautomator/data/storage/vods/lastgeektonight/lastgeektonight_2024-06-15T10_57_33Z_42466106568/lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts

how can i run the Remux again? with Scan vor local Videos it come this error:

Channel 'lastgeektonight' scanned, found 0 local videos.

and the Logs says:

2024-06-16T07:13:53.030Z | clientBroker.attach <info> Client broker now attached to websocket.
2024-06-16T07:13:54.321Z | helper.execSimple <error> Process undefined for 'linux process status (download_vod_2172621010)' error: spawn ps ENOENT
2024-06-16T07:13:54.322Z | job.getStatus <error> Error checking status for linux job download_vod_2172621010 (false)
2024-06-16T07:13:54.323Z | helper.execSimple <error> Process undefined for 'linux process status (download_vod_2172621010)' exited with code -2
2024-06-16T07:13:54.327Z | helper.execSimple <error> Process undefined for 'linux process status (remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts)' error: spawn ps ENOENT
2024-06-16T07:13:54.327Z | job.getStatus <error> Error checking status for linux job remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts (false)
2024-06-16T07:13:54.328Z | helper.execSimple <error> Process undefined for 'linux process status (remux_lastgeektonight_2024-06-15T10_57_33Z_42466106568.ts)' exited with code -2

When Crashed he created to Folders: grafik

One is empty and the other has these Files: grafik

The Status of the Channel is still live but the Channel is offline.

I hope anyone can help me. :)

MrBrax commented 3 months ago

refresh channel status by refreshing the data in the context menu of the streamer

at this point the state is probably too broken, i would recommend remuxing with command line ffmpeg

crashes like this are really hard to debug, i think someone else had it happen to them in the past, i really don't know what the cause would be but full memory could be an issue

Supergamerx3000 commented 3 months ago

ok what is the command to remux again?

Will the stream then appear again in the left bar?

My Storage has 12.7 TB Free Storage :D or you mean RAM?

MrBrax commented 3 months ago

ffmpeg -i input.ts -codec copy output.mp4

no

ram, or i guess it could just be an ffmpeg bug