forked from j62/ctbrec
1
0
Fork 0
Commit Graph

331 Commits

Author SHA1 Message Date
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
0xboobface f170ce2b07 Improve logging 2019-04-20 14:26:31 +02:00
0xboobface 3cd341d88e Set affiliate link 2019-04-20 12:50:27 +02:00
0xboobface 6e6597d372 Move post-processing from LocalRecorder to Download 2019-04-20 11:49:41 +02:00
0xboobface 4bc92a9dda Remove debug output 2019-04-18 20:21:09 +02:00
0xboobface 2d048369a1 Fix JSON exception in isOnline 2019-04-17 14:37:47 +02:00
0xboobface 204eb99b29 Implement follow/unfollow for Flirt4Free 2019-04-16 19:51:57 +02:00
0xboobface 8f5c7ac9c4 Implement login and token balance 2019-04-15 19:17:41 +02:00
0xboobface 50c38d16a7 Implement login for Flirt4Free 2019-04-15 19:16:04 +02:00
0xboobface 8910dd8c4a Sort fields in Settings by name 2019-04-15 18:19:34 +02:00
0xboobface 1700eeecf5 Implement search for Flirt4Free 2019-04-15 17:42:20 +02:00
0xboobface 94460d1e94 Implement "add by name" and "add by url" 2019-04-15 16:39:09 +02:00
0xboobface f1d11c07b5 Merge branch 'dev' into flirt4free 2019-04-15 16:02:35 +02:00
0xboobface 8eb5f3f33d Set version to 1.20.0 2019-04-14 20:38:32 +02:00
0xboobface 15bfe0f44f Add basic functionality for Flirt4Free 2019-04-12 21:57:53 +02:00
0xboobface e4ab0873bc Remove online check for currently running recordings
For models, which are currently recorded, a online check is not
necessary. INstead we can assume, that the model is online and continue
with the next one
2019-04-12 21:57:32 +02:00
0xboobface ca2ceb7f43 Add support for HLS AES encryption 2019-04-12 19:33:18 +02:00
0xboobface 6c6fadd742 Set isOnline to false, of the model is not online 2019-04-10 14:36:24 +02:00
0xboobface 601669fdd6 Added menu entry to ignore models
Ignored models are not displayed in the thumb overview tab. This is
useful, if you don't like a model and want to get rid of it for good
2019-04-07 18:43:06 +02:00
0xboobface 458e05d2b4 Add notes column to recorded models tab 2019-04-07 18:11:27 +02:00
0xboobface 2a74761c54 Make sure the playlist is not empty when checking the online state 2019-04-07 12:03:00 +02:00
0xboobface 38d65c4b7d Remove test class 2019-04-04 19:11:03 +02:00
0xboobface 73221ce881 Set version to 1.19.1 2019-04-04 19:00:49 +02:00
0xboobface 3e4ad5272b Replace deprecated calls 2019-04-04 18:58:45 +02:00
0xboobface 7ffa41944c Fix online check for BongaCams
The online check now consists of three steps: 1. check, if the model's
state is online on its profile page. 2. check, if the room status is
public with getRoomData 3. check, if the stream playlist is available
2019-04-04 18:07:19 +02:00
0xboobface 335233f473 Replace EvictingQueue with own implementation
For some unknown reason the EvictingQueue didn't evict or evicted only
partially. Nevertheless it caused an OutOfMemoryError.
2019-03-21 14:51:52 +01:00
0xboobface 1dd432dbd9 Add base URL setting for Bongacams 2019-03-05 17:01:42 +01:00
0xboobface a249be01c7 Fix: Adjust Streamate search code to new JSON format
Streamate has changed the JSON response for the search. This change
adjusts our code to handle that new format.
2019-02-22 13:42:44 +01:00
0xboobface 37fc341767 Remove debug log 2019-02-20 13:47:34 +01:00
0xboobface 6dbdac6df5 Fix json exception in online check for BongaCams 2019-02-20 13:44:56 +01:00
0xboobface 14b2911651 Increase version to 1.19.0 2019-02-19 18:57:40 +01:00
0xboobface 11f0dfde00 Added comment for PP improvements 2019-02-19 18:53:33 +01:00
0xboobface e1eeb830da Add getSanitizedName to Model
This method provides returns a name, which is safe to use with
filesystem I/O. Fc2Model returns the model ID for this.
2019-02-19 15:28:52 +01:00
0xboobface 75a625bbe0 Improve deleteIfTooShort method
If a directory does not exist, it returns true. If the directory is
empty, it deletes the directory and empty parent directories and returns
true.
2019-02-13 22:07:34 +01:00
0xboobface 27dac97384 Improve handling of postprocessing 2019-02-13 12:24:04 +01:00
0xboobface 351560079b Add concurrent recordings setting to settings tab 2019-02-05 15:25:56 +01:00
0xboobface 097fb251cb Add getCurrentlyRecording to recorder
This method returns the models, which are currently recorded. It is
implemented as default method, so that LocalRecorder and RemoteRecorder
don't have to implement the same logic.
2019-02-05 15:07:56 +01:00
0xboobface 76f4583ebc Rename Recorder.isRecording to Recorder.isTracked 2019-02-05 14:45:44 +01:00
0xboobface 198a9c6893 Rename Recorder.getModelsRecording to Recorder.getModels 2019-02-05 14:44:21 +01:00
0xboobface 2dd8100a97 Add setting to limit the number of concurrent active recordings 2019-02-05 14:41:31 +01:00
0xboobface 39679f3162 Improve exception handling and logging for the playlist generation 2019-02-05 13:38:09 +01:00
0xboobface 80e577db7c Add menu entry to regenerate the playlist 2019-01-31 15:07:42 +01:00
0xboobface 6e58dd6be5 Implement follow/unfollow for BongaCams 2019-01-29 16:28:07 +01:00
0xboobface 4f541c0570 Increased version to 1.18.0 2019-01-29 14:25:54 +01:00
0xboobface e7feaad11c Merge branch 'dev' into fc2 2019-01-29 13:05:43 +01:00
0xboobface 2fe6ec0e8f Fix #156
Make sure, that the tray icon is created only once. Also move the
notification methods from OS to DesktopIntegration.
2019-01-28 17:26:53 +01:00
0xboobface 9f13a54eb6 Remove misleading log message 2019-01-28 16:20:07 +01:00
0xboobface 8e2abd2f11 Implement createModelFromUrl for FC2Live 2019-01-28 14:44:45 +01:00
0xboobface 626d13f87a Implement createModelFromUrl 2019-01-28 13:32:42 +01:00
0xboobface df38ed3027 Sanitize name before creeating a model object
Names can contain '/' on FC2Live, which messes with the directory
structure of recordings
2019-01-27 15:18:19 +01:00
0xboobface ba0c456f19 Reduce log level for FC2Live websocket messages to TRACE 2019-01-27 15:17:30 +01:00