forked from j62/ctbrec
1
0
Fork 0
Commit Graph

381 Commits

Author SHA1 Message Date
0xboobface 85bacb8c04 Remove recordings, which fail immediately after starting 2019-12-28 19:58:04 +01:00
0xboobface e333175ecb Fix stream URL for wowza HLS streaming 2019-12-28 19:54:55 +01:00
0xboobface a9d87bfd99 Code cleanup 2019-12-28 19:54:04 +01:00
0xboobface 672d7c23ec Stop immediately, if the manifest download fails and the model is
offline
2019-12-28 19:51:59 +01:00
0xboobface 678a6e5513 Remove redundant log message 2019-12-28 19:50:58 +01:00
0xboobface d820d611f1 Try to update the segment playlist URL, if loading the playlist fails 2019-12-28 16:59:20 +01:00
0xboobface 0fe466bc1a Don't catch exceptions in generatePlaylist 2019-12-28 16:58:43 +01:00
0xboobface a3dee454a5 Write the output of FFmpeg to a log file in the segment directory 2019-12-28 16:57:55 +01:00
0xboobface 2da3d64ac8 Make Model and Download serializable 2019-12-28 16:57:11 +01:00
0xboobface a165a83dca If a recording does not exist, show n/a for its size 2019-12-28 16:56:18 +01:00
0xboobface 6fcbdab174 Reset state to WAITING for FAILED, PP and GENERATING_PLAYLIST on start 2019-12-28 15:42:45 +01:00
0xboobface a59313df49 Code cleanup 2019-12-28 15:38:33 +01:00
0xboobface d742756413 Combine recordings and model locks to one lock
Using 2 locks caused deadlocks.
2019-12-27 23:35:49 +01:00
0xboobface 296396f2d3 Set version to 3.0.2 2019-12-27 15:17:53 +01:00
0xboobface 87b0ce0d21 Use constants from HttpConstants 2019-12-27 15:14:55 +01:00
0xboobface b91bfdc353 Introduce new HttpConstants class for header constants etc 2019-12-27 14:27:10 +01:00
0xboobface 4f852bd5f3 Create a temporary directory for HLS downloads
Create a temporary download directory similar to DASH downloads
2019-12-27 14:26:48 +01:00
0xboobface e8fccb327a Determine the movie's length from the MP4 file
Use the time spent recording the stream as a fallback
2019-12-27 14:21:09 +01:00
0xboobface da4c1bda2c Change log levels of some log messages 2019-12-27 14:02:33 +01:00
0xboobface b72777f6fb Code cleanup 2019-12-27 13:51:48 +01:00
0xboobface f3a13a6f06 Fix CamSoda downloads
Some models now have a different stream URL. ctbrec has to distiguish
between the old and the new URLs
2019-12-27 13:51:28 +01:00
0xboobface 33c7c6606d Improve playlist loading for Cam4Model
Also improve isOnline to take into account, if a playlist url is
available or not
2019-12-26 23:44:26 +01:00
0xboobface 55760a1b7d Fix log messages 2019-12-26 23:43:32 +01:00
0xboobface df3e87f1dd Add loop to get manifest for retries
Try to download the manifest 10 times with a little break in between
before giving up causing the download to terminate
2019-12-26 22:19:25 +01:00
0xboobface c2901284ef Improve error handling in downloads 2019-12-26 21:47:03 +01:00
0xboobface c774a29421 Improve error handling for loading the master playlist for Cam4Models 2019-12-26 21:46:57 +01:00
0xboobface 5b2ddfb825 Fix NPE in MergedHlsDownload 2019-12-26 21:46:50 +01:00
0xboobface d48498e715 Change PlaylistGenerator.genertate to not return null
Instead an exception is thrown, if something goes wrong
2019-12-26 21:46:46 +01:00
0xboobface a33d3045c1 Improve segment download retry code 2019-12-26 21:46:37 +01:00
0xboobface 6cc8fd9cc2 Fix post-processing timestamp problems 2019-12-26 21:46:33 +01:00
0xboobface b8cdb2200e Remove mpegts library 2019-12-26 21:46:27 +01:00
0xboobface 67c69e3c1b Fix call of user defined pp script 2019-12-26 21:46:18 +01:00
0xboobface 8dfc4c775f Add post-processing support to the DashDownload 2019-12-26 21:46:15 +01:00
0xboobface a018b15384 Improve DashDownload handling of init segments
After an init segment has been downloaded, check, if exists and is not empty before
setting the booleans to true, which determine, that the files have been loaded
2019-12-26 21:46:12 +01:00
0xboobface 33c298d558 Set version to 3.0.1 2019-12-26 21:46:06 +01:00
0xboobface 2973dd2e6d Code cleanup 2019-12-26 21:45:53 +01:00
0xboobface da28d02da8 Implement getLength in MergedHlsDownload with jcodec 2019-12-26 21:45:43 +01:00
0xboobface 66525de4ea Run FFmpeg in the segments directory of HLS downloads 2019-12-26 21:45:29 +01:00
0xboobface 5b9b91d6e8 Add try-with-resources blocks to free up the HLS playlist file handle 2019-12-26 21:45:22 +01:00
0xboobface 5d2d5145b9 Remove dependency to isoparser library 2019-12-22 11:14:33 +01:00
0xboobface f91a0d27eb Improve exception handling
Change exception handling so that failed post-processing causes the
recording to have the state "failed"
2019-12-21 22:04:59 +01:00
0xboobface 2fb2c932aa Fix "rerun pp" for MFC dash downloads 2019-12-21 18:59:31 +01:00
0xboobface bdf7d99ef3 Fix handling of recording structure 2019-12-21 17:04:27 +01:00
0xboobface a4b805c038 Set version to 3.0.0 2019-12-21 14:33:45 +01:00
0xboobface 4eeb101cbb Fix recording downloads from server to client 2019-12-21 14:30:57 +01:00
0xboobface e37c869695 Merge branch 'dev' into mp4-streaming 2019-12-17 21:27:16 +01:00
0xboobface e734d46e9c Add gitattributes and run initial normalization 2019-12-17 21:13:18 +01:00
0xboobface b9f463d0dd Bump version to 2.3.0 2019-12-08 19:04:22 +01:00
0xboobface 034fe81081 Use FFmpeg to merge HLS segments 2019-12-07 16:58:56 +01:00
0xboobface 32d7a788e0 Add faststart argument to FFmpeg cmdline 2019-12-07 16:58:11 +01:00
0xboobface 1c64b82deb Add providers for MFC streams sources
Since MFC uses different streaming technologies, the stream sources have
to be determined differently. This is now done in dedicated
StreamSourceProvider classes.
2019-12-07 12:00:05 +01:00
0xboobface 26bf26de0a Fix some code smells 2019-12-06 20:20:50 +01:00
0xboobface 00ea43c8b3 Move HLS related classes ot own package 2019-11-30 16:40:01 +01:00
0xboobface 40c910bd5c Add JAXB domain classes for MPEG-DASH manifests 2019-11-30 16:37:39 +01:00
0xboobface f23c33d30a Move HLS related classes to own package 2019-11-30 16:36:45 +01:00
0xboobface 43dfc4e59c Set versions in maven POMs 2019-11-23 17:14:44 +01:00
0xboobface 011e8c2f29 Improve thread interrupt and lock handling 2019-11-23 17:13:27 +01:00
0xboobface 8935dd8185 Be a bit more relaxed with deleting recordings 2019-08-16 19:34:07 +02:00
0xboobface 372fce2899 Update the RunningTheServer page 2019-08-10 20:24:27 +02:00
0xboobface 7c29bba16e Set version to 2.2.0 2019-08-10 18:25:40 +02:00
0xboobface f12a20a15e Add support for TLS and changing the context path 2019-08-10 17:45:13 +02:00
0xboobface bb02b5fd9f Add HMAC support to the webinterface
The webinterface didn't work, if HMAC authentication was enabled.
To make this work, the webinterface downloads the HMAC from the
server and stores it in the local storage of the browser. The
download URL is secured by Basic Auth. The credentials are configured
in the server.json
2019-08-04 12:51:13 +02:00
0xboobface 8450ddd98c Increase version to 2.1.0 2019-07-27 18:27:54 +02:00
0xboobface bc724b2f42 Add setting to switch on/off the server webinterface 2019-07-27 17:55:42 +02:00
0xboobface 1e5eff780c Add input field to add models by URL 2019-07-27 16:53:26 +02:00
0xboobface 2131b596cb Make loading of recording meta data more robust 2019-07-21 11:23:10 +02:00
0xboobface e39ff8d7d4 Make sure, the metadata file is set before other operations 2019-07-21 10:48:12 +02:00
0xboobface d798069a71 Handle models with unknown site
Make sure, the recorder does not crash, if a model with unknown site
exists in the condif
2019-07-21 10:46:19 +02:00
0xboobface 1db79541ff Add web interface for the server 2019-07-21 10:39:00 +02:00
0xboobface d56f2a1bc1 Handle BOM properly in config file 2019-07-19 19:15:38 +02:00
0xboobface ddbd8de900 Fix Flirt4Free thumb overviews and recording 2019-06-08 10:34:44 +02:00
0xboobface ca17d4758c Increase version to 2.0.1 2019-06-07 21:24:12 +02:00
0xboobface 60aaacc294 Make sure that the recordingsDir path doesn't end with a / 2019-06-07 21:23:37 +02:00
0xboobface 645f0b8231 Hopefully fixed some deadlocks 2019-06-03 21:16:35 +02:00
0xboobface b136fce0db Add menu entry to rerun the post-processing script
In client/server mode this will trigger the playlist generation and
post-processing. In standalone mode only the post-processing will be
executed.
2019-06-02 19:53:25 +02:00
0xboobface da486bbf4a Make recorder and RecordingManager thread-safe 2019-06-02 16:51:42 +02:00
0xboobface f2cae6a312 Fix model online check for BongaCams 2019-06-02 16:51:07 +02:00
0xboobface 43cfea36de Wait a few seconds after a problem (404,403) with the HLS playlist occured 2019-06-01 17:27:59 +02:00
0xboobface 25770111da Delete recordings, which have a size of 0 2019-06-01 17:27:16 +02:00
0xboobface c0167155f3 Automatically delete empty recordings 2019-06-01 16:35:57 +02:00
0xboobface 501f685626 Remove debug output 2019-06-01 16:12:36 +02:00
0xboobface ebe9d0cf5e Fix remaining problems with remote recording 2019-06-01 15:33:47 +02:00
0xboobface 9302dffd7f Set version to 2.0.0 2019-06-01 15:32:47 +02:00
0xboobface f11fcf7ca1 Rewrite recording code for remote recording 2019-06-01 12:12:46 +02:00
0xboobface 0f3d0b6337 Rewrite recording code for local recording
Remote recording is TBD
2019-05-31 20:00:07 +02:00
0xboobface f7ac97c683 Implement interface changes 2019-05-11 15:12:48 +02:00
0xboobface ca8e0a269e Remove caches from Chaturbate code
- Remove caches from the Chaturbate class
- Move all model related code from Chaturbate to ChaturbateModel
- Use a User-Agent string in all HTTP requests
2019-05-11 15:10:42 +02:00
0xboobface 35c8378d88 Add mechanism to restrict the number of requests
Flirt4Free is finnicky with the amount of requests you can do. So we use
a mechanism to only allow 2 requests at a time and a cooldown of 500 ms
between requests.
2019-05-11 15:03:15 +02:00
0xboobface 6c9bff56fc Revert "Remove online check for currently running recordings"
This reverts commit e4ab0873bc.
2019-05-11 13:31:09 +02:00
0xboobface 77fa7eba40 Don't start recordings, if the recorder has been shut down 2019-04-21 16:11:03 +02:00
0xboobface ee3ae3ef43 Add logging for unexpected errors 2019-04-21 15:05:13 +02:00
0xboobface 1b129ebd41 Add suffix parameter to getFileForRecording
This allows different download types to support different file types
2019-04-21 12:42:48 +02:00
0xboobface 0b7eeca5f7 Fix: Post-Processing for split recordings 2019-04-20 22:01:53 +02:00
0xboobface c1bbce7bcd Move UnknownModel to its own class 2019-04-20 21:49:23 +02:00
0xboobface 33c4468d1b Merge branch 'master' into dev 2019-04-20 16:06:17 +02:00
0xboobface f4b7141a63 Increase version to 1.21.1 2019-04-20 16:03:04 +02:00
0xboobface c17fe9c173 Fix: Check for empty playlists used the wrong tag
Use #EXTINF to check, if a playlist has entries instead of #EXT-X-STREAM-INF, which was accidentally used.
This tag only occurs in master playlists.
2019-04-20 15:54:54 +02:00
0xboobface 133afc2475 Merge branch pprefactor 2019-04-20 15:24:43 +02:00
0xboobface 85411fea2e Handle empty playlists more gracefully
Check, if a playlist is empty, before parsing it with open-m3u8. If it
is empty, return an empty SegmentPlaylist instead of throwing a
ParseException
2019-04-20 14:39:44 +02:00
0xboobface b854455f8a Increase version to 1.21.0 2019-04-20 14:27:01 +02:00