Commit Graph

733 Commits

Author SHA1 Message Date
0xb00bface e08cf998d5 Remove query part from segment file name 2020-12-29 14:44:11 +01:00
0xb00bface 1c8758ef52 Fix race condition in HlsDownload 2020-12-29 14:44:11 +01:00
0xb00bface 32429b192c Make MergedFfmpegHlsDownload work again 2020-12-29 14:44:11 +01:00
0xb00bface 7e03b48895 Fixed error handling for new multi-threading 2020-12-29 14:44:11 +01:00
0xb00bface e3270b6221 Refactored multi-threading for downloads
This is a first kind of working version. HlsDownload records, but teh error handling is broken.
2020-12-29 14:44:11 +01:00
0xb00bface 65ffbf525d Refactored HLS downloads 2020-12-29 14:44:11 +01:00
0xb00bface 52cdc82044 Fix chaturbate follow/unfollow response parsing 2020-12-29 14:43:26 +01:00
0xb00bface ac3f91eb03 Add setting to show confirmation dialogs for dangerous actions 2020-12-27 14:35:18 +01:00
0xb00bface 58d8432cf2 Update Java to version 15.0.1 2020-12-24 17:03:53 +01:00
0xb00bface 42904f6fba Set version to 3.11.0 2020-12-24 16:54:25 +01:00
0xb00bface 8b55e9d374 Reduce number of threads to read FFmpeg output 2020-12-24 13:10:25 +01:00
0xb00bface 9a270bb84b Add config option for fast scroll speed 2020-12-24 12:10:16 +01:00
0xb00bface e3925e992d Add migration step for Cam4 model notes 2020-12-24 12:02:37 +01:00
0xb00bface ec71dc3c6d Remove dead download code 2020-12-22 15:15:21 +01:00
0xb00bface 8fa785862b Fix MVLive models being detected as online while being offline 2020-12-21 20:10:12 +01:00
0xb00bface 086e15578f Core cleanup 2020-12-21 20:05:22 +01:00
0xb00bface 97715aecc5 Improve UI features for time limited recordings 2020-12-21 18:53:34 +01:00
0xb00bface 8fe48f91b7 Update playlist all the time
Before the playlist was only retrieved, when it was empty (on the
initial call). Now the playlist is updated every time.
2020-12-21 18:17:19 +01:00
0xb00bface 43d8b9d2de Add cache control headers to Cam4 requests 2020-12-21 15:07:50 +01:00
0xb00bface 6875de9b14 Add more logging to Cam4Model 2020-12-20 20:46:01 +01:00
0xb00bface 3b8022df87 Add switch to choose between fast and accurate playlist generation 2020-12-20 20:16:16 +01:00
0xb00bface cf165b7fc0 Make Showup login work with minimal browser 2020-12-20 16:27:48 +01:00
0xb00bface 5f4e17c2d2 Merge branch 'dev' into showup
# Conflicts:
#	common/src/main/java/ctbrec/sites/showup/ShowupHttpClient.java
2020-12-20 12:23:08 +01:00
0xb00bface 867e500fbd Fix MVLive recordings 2020-12-20 00:08:07 +01:00
0xb00bface 672d2a77d4 Add another playlist source for Cam4 models 2020-12-19 19:29:15 +01:00
0xb00bface c9cd6e825d Add Model.exists to check, if a model account exists 2020-12-19 18:07:30 +01:00
0xb00bface fb58be47bb Normalize Cam4 model URLs in setUrl 2020-12-19 18:06:55 +01:00
0xb00bface b5640d932f Set version to 3.10.10 2020-12-19 17:46:15 +01:00
0xb00bface a3ffa7a71e Improve error handling and set timeouts in the Cam4 websocket 2020-12-19 17:41:44 +01:00
0xb00bface 3d076cdde6 Improve logging 2020-12-19 17:41:03 +01:00
0xb00bface ae3726d906 Improve logging 2020-12-19 15:50:24 +01:00
0xb00bface 49469d8987 Determine online state of Cam4 models through the chat websocket 2020-12-19 15:47:44 +01:00
0xb00bface f730f95026 Also use the model page to detect the online state 2020-12-17 20:41:06 +01:00
0xb00bface 809d86f5a2 Extend regex to support more model URLs 2020-12-17 18:49:08 +01:00
0xb00bface 04ee553c1a Set version to 3.10.9 2020-12-15 19:31:29 +01:00
0xb00bface 2f0ef47acf Add more category tabs for CamSoda 2020-12-14 21:28:43 +01:00
0xb00bface d50ca02374 Add online state "off" to mapOnlineState() 2020-12-13 02:54:01 +01:00
0xb00bface ff273efedc Set version to 3.10.8 2020-12-12 22:27:10 +01:00
0xb00bface 1f07cea343 Add more online states to mapOnlineState() 2020-12-12 21:45:32 +01:00
0xb00bface 2eacbae228 Fix Stripchat recordings
For some models the recording didn't start, even if they were online and
publicly visible in the browser. We now use a different JSON object to
determine, which resolutions are available
2020-12-12 21:06:38 +01:00
0xb00bface cdaeaa746b Remove state from Remux post-processor
Post-processors have to be thread safe and can't have any state
2020-12-12 16:31:36 +01:00
0xb00bface 605269b4a0 Add setting to switch FFmpeg logging on / off 2020-12-12 15:22:10 +01:00
0xb00bface 5020f9f06d Update version to 3.10.7 2020-12-06 20:49:59 +01:00
0xb00bface 7d3e65fc14 Add parameters to the macOS browser command
Add parameters to the open command, so that it waits for the process to
end. Otherwise the process returns immediately and causes ctbrec to go
on even though the login process didn't run in the browser.

Furthermore we now pass on the config dir for the minimal browser as a
command line argument
2020-12-06 18:40:12 +01:00
0xb00bface 281d70d29b Store minimal browser config in ctbrec's config dir 2020-12-06 17:59:56 +01:00
0xb00bface 5be7fcc2ae Add clipboard monitoring for model URLs 2020-12-06 15:34:48 +01:00
0xb00bface dafde88721 Fix moving of segmented downloads 2020-12-06 14:22:28 +01:00
0xb00bface a31debcdea Add possibility to split recordings with different strategies 2020-12-05 21:30:54 +01:00
0xb00bface 8b66dce61a Rename chaturbate username and password setting 2020-12-05 16:24:47 +01:00
0xb00bface f2d3026d0a Code cleanup - Remove compiler warnings 2020-12-05 16:13:33 +01:00
0xb00bface c6dd2bb06c Fix bug in credentialsAvailable for Streamate
It was using the username for Chaturbate. Whoopsy!
2020-12-05 16:10:41 +01:00
0xb00bface ab911baeae Bump version to 3.10.6 2020-12-04 21:05:18 +01:00
0xb00bface 9e2074ba59 Fix Cam4 model details link 2020-12-04 21:04:11 +01:00
0xb00bface 75131cd325 Fix MV Live downloads and search 2020-11-29 16:36:39 +01:00
0xb00bface 5c3755dedc Fixed wrong playlist file extensions
m3u8a -> m3u8
2020-11-28 01:00:13 +01:00
0xb00bface 678d7b0174 Set version to 3.10.5 2020-11-21 20:51:23 +01:00
0xb00bface cd840afe0d Add idea project files to .gitignore 2020-11-21 19:20:01 +01:00
0xb00bface 0e7b5b5452 Fix: date placeholders with patterns with more than one ocurrence are 2020-11-21 16:06:45 +01:00
0xb00bface 20473f9a23 Change MFC websocket URL to the TLS one 2020-11-08 13:40:10 +01:00
0xb00bface 17b0a51d02 Set version to 3.10.4 2020-10-31 22:19:15 +01:00
0xb00bface f6a0a5dcaa Update http user agent string 2020-10-31 22:10:47 +01:00
0xb00bface ece3355e1e Try to make showup external login work 2020-10-31 22:08:59 +01:00
0xb00bface 808f96c04f Rename StreamRedirectThread to StreamRedirector
... since it isn't a thread, but a Runnable
2020-10-31 15:10:44 +01:00
0xb00bface bf0e99bd0f Set version to 3.10.3 2020-10-24 11:37:46 +02:00
0xb00bface 66ba857b82 Fix bug in Recording.equals 2020-10-17 17:28:04 +02:00
0xb00bface f7775b4671 Add button to pause recording entirely without pausing all models 2020-10-17 16:43:23 +02:00
0xb00bface e49ef57f21 Change equals and hashcode in Recording to only use the ID 2020-10-17 13:37:49 +02:00
0xb00bface 7eac934c7f Remove getLength from download
The length has to be determined just in time for certain pp functions to
work properly. The length can no longer be retrieved from the recording,
but has to be determined with the help of VideoLengthDetector
2020-10-11 19:14:22 +02:00
0xb00bface 24fa1a6ed6 Set version to 3.10.2 2020-10-08 21:49:01 +02:00
0xb00bface 2d3bb0c5c8 Add possibility to define the contactsheet file name with variables 2020-10-07 21:14:15 +02:00
0xb00bface 2dd32fed0c Fix URLs for models with special characters in their name 2020-10-05 18:44:16 +02:00
0xb00bface eaf5fd2ed7 Remove online check in resumeRecording
The online check will be done in the preconditions check anyway
2020-10-04 19:46:02 +02:00
0xb00bface 0b384cf85e Improve Bongacams online state detection 2020-10-04 19:31:34 +02:00
0xb00bface e250628c96 Add com.sun.activation for Java versions > 8 2020-10-04 16:03:56 +02:00
0xb00bface a2e2dbda6d Catch JSON parse exception 2020-10-04 15:20:23 +02:00
0xb00bface 5fa939ae65 Write script output to temporary log file 2020-10-03 20:22:20 +02:00
0xb00bface 8cc6f7ae0e Delete FFmpeg log files on JVM termination 2020-10-03 20:16:41 +02:00
0xb00bface 098e2d1b67 Fix update of associated files in GUI 2020-10-03 19:00:20 +02:00
0xb00bface 986744dfe7 Improve file handling in HLS servlet 2020-10-03 18:29:09 +02:00
0xb00bface 1350dce14f Fix BongaCams online check
Fix Bongacams unfollow
2020-10-03 16:14:24 +02:00
0xb00bface 3b3854c488 Fix Streamate followed tab
Also use a preview image instead of the bio pic
2020-10-03 13:59:19 +02:00
0xb00bface 99b21845ab Change post-process return value to boolean 2020-09-30 20:09:52 +02:00
0xb00bface 4823c603a7 Mark FFmpeg log files for deletion on JVM exit 2020-09-30 19:13:11 +02:00
0xb00bface 385a4c53c3 Fix Locale related bug in CreateContactSheet 2020-09-30 16:52:47 +02:00
0xb00bface c88ab395e7 Add contact sheet to recordings associated files 2020-09-30 16:23:09 +02:00
0xb00bface dcd3df5d0c Implement contact sheet creation 2020-09-30 16:16:49 +02:00
0xb00bface ce908bded2 Improve video length detection 2020-09-30 13:29:27 +02:00
0xb00bface 3bf9c5fa26 Fix JSON parsing exception
Sometimes performerData is not available. In this case we assume the
model is offline
2020-09-30 10:52:30 +02:00
0xb00bface 26b73322cc Add migration of old pp settings to new pp steps 2020-09-29 20:50:37 +02:00
0xb00bface bccdf47a2e Add automatic fix for invalid resolution range 2020-09-29 19:16:19 +02:00
0xb00bface 7bb0e8fe5d Fix FFMpeg remux stop for server recordings on windows 2020-09-29 15:39:01 +02:00
0xb00bface 099ccc9399 Remove console output 2020-09-29 13:27:09 +02:00
0xb00bface e4eee063ba Fix Showup downloads
Add cid and pid to the playlist url, which fixes the download
functionality. But downloads now stop after a couple of minutes if you
are not logged in.
2020-09-28 14:34:11 +02:00
0xb00bface 8b6d246732 Merge branch 'pp' into dev 2020-09-27 15:25:49 +02:00
0xb00bface f29ae0eb69 Improve creation of segment URLs 2020-09-27 00:51:53 +02:00
0xb00bface 43cf0a0bc1 Add placeholder for recording notes 2020-09-26 20:19:01 +02:00
0xb00bface 5fa72eaaa0 Add setting to define the download file name 2020-09-26 19:52:09 +02:00
0xb00bface f575958fe9 Fix equals and hashcode
equals and hashcode used the path field, which is empty for old
recordings. Fixed by using getAbsoluteFile() instead
2020-09-26 18:10:16 +02:00
0xb00bface 93deeb3e52 Remove unused postProcessing setting 2020-09-26 17:22:42 +02:00
0xb00bface b8ffdb32ce Change config mock, so that the config dir is in the temp test dir 2020-09-26 17:04:17 +02:00
0xb00bface 4aca861390 Remove unused settings 2020-09-26 16:32:31 +02:00
0xb00bface 6fa6c63c85 Add test for DeleteTooShort pp 2020-09-26 16:07:11 +02:00
0xb00bface 9806badf57 Fix bug in Move pp 2020-09-26 15:14:54 +02:00
0xb00bface 13783140e9 Add test for Copy pp 2020-09-26 14:23:48 +02:00
0xb00bface 02814440d2 Add more tests 2020-09-25 21:09:50 +02:00
0xb00bface 43de2c2620 Add test for DeleteOriginal pp 2020-09-25 19:43:00 +02:00
0xb00bface b2b6a623ef Add more post-processing tests 2020-09-25 00:09:23 +02:00
0xb00bface 87d88b5bcb Add webhook post-processor skeleton 2020-09-24 11:35:55 +02:00
0xb00bface 30021d184d Add DeleteTooShort post-processor 2020-09-24 11:35:37 +02:00
0xb00bface f6afed3717 Add script post-processor 2020-09-23 18:52:30 +02:00
0xb00bface 67ff48e2dc Pass RecordingManager to post-processors 2020-09-22 22:15:28 +02:00
0xb00bface 7b1898072f Make recording single file after remux
Also set the file size to the size of the remuxed one
2020-09-22 20:41:07 +02:00
0xb00bface d23f3fea04 Add test for Rename pp for directories 2020-09-22 17:40:03 +02:00
0xb00bface 4167b222ba Add test for Rename post-processor 2020-09-22 14:58:20 +02:00
0xb00bface e1bce0acf5 Improve handling of the orignal and pp files 2020-09-22 12:38:21 +02:00
0xb00bface fbf1c8ac16 Add check, if source and target are the same 2020-09-20 18:27:26 +02:00
0xb00bface bf39d9a639 Implement proper handling of the orignal and pp files
If a copy is created, the original file is not touched anymore.
Otherwise the original file is used and the post-processing process is not repeatable anymore, or at least the results might get unpredictable
2020-09-20 18:14:24 +02:00
0xb00bface 90192d9b8f Fix server stuff for new recording path handling 2020-09-13 19:54:43 +02:00
0xb00bface 4f526fd13e Store absolute path in metadata file instead of path relative to rec dir 2020-09-13 17:34:58 +02:00
0xb00bface f0713b96f5 Try to terminate FFmpeg before killing it 2020-08-30 13:41:43 +02:00
0xb00bface 4f7d080f56 Add more pp steps 2020-08-30 13:41:03 +02:00
0xb00bface 6b81ef6870 Merge branch 'dev' into pp 2020-08-24 15:18:02 +02:00
0xb00bface d7d3e2944b Extend HlsDownload for MV Live to update the cloudflare cookies regularly 2020-08-24 15:16:45 +02:00
0xb00bface 1034488e94 Make RecorderServlet and RemoteRecorder compatible to new recording
fields
2020-08-24 15:15:34 +02:00
0xb00bface 89fa681a59 Increase log level 2020-08-23 13:38:18 +02:00
0xb00bface bdcf1bee00 Implement Renamer post-processor 2020-08-23 13:37:59 +02:00
0xb00bface c7e39fdd98 Fix MV Live models not showing up as recording
MV Live models with spaces in the name would not show up as recording.
2020-08-23 12:46:24 +02:00
0xb00bface 17a32cd928 Add first configurable PP step 2020-08-22 18:35:54 +02:00
0xb00bface 4f8e7dbca2 Merge branch 'dev' into pp 2020-08-21 19:15:08 +02:00
0xb00bface 337b096568 Fix API calls newer than Java 8 2020-08-21 18:19:59 +02:00
0xb00bface 05837b2fed Reset MFC WS on message parsing exception 2020-08-21 18:09:55 +02:00
0xb00bface 7bb33568cf Add new event for when the disk space is exhausted 2020-08-21 17:09:07 +02:00
0xb00bface 3351a976ae Fix: recording started event was not fired in client/server mode 2020-08-21 15:57:50 +02:00
0xb00bface d20680f228 Fix synchronisation problem between client and server
... for actions pin, unpin and setNote
2020-08-21 15:20:23 +02:00
0xb00bface 063395bc74 Increase log level for update check 2020-08-19 19:17:52 +02:00
0xb00bface 6c0fe83816 Don't stop a recording when setting the "stop at" date 2020-08-19 18:36:50 +02:00
0xb00bface fa3e5fbcaf Fix MFC models changing to other models 2020-08-19 18:25:24 +02:00
0xb00bface 2665d50ee1 Assume unknown show type means ONLINE 2020-08-19 17:53:15 +02:00
0xb00bface da3f0632e2 Set version to 3.9.0 2020-08-19 17:21:48 +02:00
0xb00bface 7e2924d780 Add confirmation dialog for shutdown
Show confirmation dialog when a shutdown is requested and there are
recordings in progress. The user now can decide to shutdown immediately,
shutdown gracefully or leave the app running
2020-08-19 12:45:47 +02:00
0xb00bface 335cdb8cb4 Add createModelFromUrl for MVLive 2020-08-18 20:25:05 +02:00
0xb00bface 096ed7a734 Implement proper online check and add search 2020-08-18 19:58:48 +02:00
0xb00bface 8b4a82d158 Add model name to Download threads 2020-08-18 19:57:53 +02:00
0xb00bface 2455797fb2 Use a different HTTP client for each MVLive download
MVLive only allows recording of mor than one stream, if the recorder looks like different HTTP sessions.
That's why we use a different HTTP client with its own cookie jar for each recording.
2020-08-18 14:39:48 +02:00
0xb00bface 7015c3173f Merge branch 'dev' into manyvids 2020-08-18 10:59:48 +02:00
0xb00bface ab10e9c176 Move recording precondition checks to its own class 2020-08-18 10:44:41 +02:00
0xb00bface e06bfaf88b Change the request to get the room number 2020-08-18 10:19:26 +02:00
0xb00bface 36885900b5 Add regular cloudflare cookie updates
MVLive updates those cookies every 2 minutes. This makes sure, that the streaming continues. IF the cookies are not updated, the stream ends after around 2:30 minutes
2020-08-17 12:19:24 +02:00
0xb00bface db186e65f4 Merge branch 'dev' into manyvids
# Conflicts:
#	common/src/main/java/ctbrec/io/HttpClient.java
2020-08-16 17:00:43 +02:00
0xb00bface 4139e42ce2 Set version to 3.8.6 2020-08-16 14:16:38 +02:00