forked from j62/ctbrec
1
0
Fork 0
Commit Graph

600 Commits

Author SHA1 Message Date
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
0xb00bface 792a6c10c8 Revert MFC websocket message parsing change 2020-08-15 17:17:31 +02:00
0xb00bface 5c0d841474 Shut down all recordings simultaneously 2020-08-15 16:09:20 +02:00
0xb00bface 6cfdb59c96 Remove log output 2020-08-15 16:06:47 +02:00
0xb00bface 192e7093d3 Fix Flirt4Free models losing their name 2020-08-15 15:29:21 +02:00
0xb00bface 0e61421537 Fix MFC websocket message parser 2020-08-14 19:16:39 +02:00
0xb00bface a0779c118d Reduce log level again 2020-08-09 14:26:12 +02:00
0xb00bface 0fe16f8ff8 Add setting to disable online check for paused models 2020-08-09 12:27:04 +02:00
0xb00bface c02d9562bf Set version to 3.8.5 2020-08-09 11:05:56 +02:00
0xb00bface ee302e49a4 Distinguish between performer_id and display_name for LiveJasmin models 2020-08-09 11:04:24 +02:00
0xb00bface b6e4bad837 Fixed bug in JSON parsing
Some models wouldn't get recorded, because of a missing element in the
JSON doc
2020-08-08 21:23:38 +02:00
0xb00bface caf329eb23 Change look of the model table in the web interface 2020-08-08 20:11:48 +02:00
0xb00bface e55daa0772 Add GUI and remote support for temporary recordings 2020-08-08 17:51:03 +02:00
0xb00bface 729319dfd2 Add mechanism to record a model only up to a certain timestamp 2020-08-08 15:28:29 +02:00
0xb00bface cbd529d001 Replace wrong username used to retrieve the token balance 2020-08-08 13:37:21 +02:00
0xb00bface 81643545d2 Set version to 3.8.4 2020-07-26 15:42:36 +02:00
0xb00bface 2154aacdbe Fix problem, that downloads wouldn't finish properly
Some downloads couldn't be stopped properly, because they would wait for
segment data to arrive to write to disk indefinitely. We now only wait
for a max of 30 seconds and also cancel all futures, which are waiting
for segment data.
2020-07-26 15:40:03 +02:00
0xb00bface 963f0f0f5f Change order how things are shutdown 2020-07-26 15:14:44 +02:00
0xb00bface d63c98cf36 Fix NPEs in MFCs ServerConfig 2020-07-26 15:14:22 +02:00
0xb00bface 64c6b9aa4f Enable rerun PP for multiple recordings 2020-07-26 11:07:55 +02:00
0xb00bface c80230cee7 Add support for xHamsterLive 2020-07-20 18:44:25 +02:00
0xb00bface bc872b1ed5 Set version to 3.8.3 2020-07-19 18:23:32 +02:00
0xb00bface e50b9bcc71 Close response in onClosed in F4F websocket 2020-07-19 18:23:16 +02:00
0xb00bface 7462d68d7b Add external login dialog for stripchat
This also enables us to support xhamsterlive
2020-07-19 15:17:31 +02:00
0xb00bface 882742ce3b Make MFC client and getOnlineModels more robust 2020-07-18 19:30:24 +02:00
0xb00bface 010c4a04cd Adjust log levels 2020-07-18 19:15:09 +02:00
0xb00bface 7ff731ec88 Fix CamSoda downloads 2020-07-18 19:05:41 +02:00
0xb00bface 6ca0e61f1f Improve exception handling 2020-07-18 19:05:09 +02:00
0xb00bface b1d5d959d4 Add URL to HttpException 2020-07-18 12:48:12 +02:00
0xb00bface c50519be82 Fix CamSoda recordings 2020-07-18 12:48:00 +02:00
0xb00bface 4b2e17d0b1 Fix Cam4 favorites tab 2020-07-16 19:51:14 +02:00
0xb00bface 03b6de626c Fix Streamate
The way to obtains the xsrf token has changed
2020-07-16 18:53:22 +02:00
0xb00bface 3f4973137c Reduce core pool size to 0 for the download thread pool
Most of the time only one thread is used, so we can save resources by
reducing the core pool size
2020-07-16 18:52:34 +02:00
0xboobface 296585463a Don't apply min/max resolution settings, if resolution is unknown 2020-07-12 13:32:06 +02:00
0xboobface ed26228d7b Increase version number to 3.8.2 2020-07-12 13:11:19 +02:00
0xboobface f79b5eddc5 Reduce HTTP connection keep-alive to 1 minute 2020-07-12 12:39:49 +02:00
0xboobface 764119e20a Reduce event bus thread pool size from 10 to 2 2020-07-12 12:37:47 +02:00
0xboobface 59697c600f Reduce global connection pool size from 50 to 20
Also remove the second connectionPool call, which accidentally was left
in and rendered the global connection pool useless
2020-07-12 12:37:03 +02:00
0xboobface 9bb18426a6 Interrupt keep alive thread on reconnect
On reconnect interrupt the current keep alive thread, so that we don't
pile up a bunch keep alive threads, if the there is a problem with the
websocket connection.
2020-07-11 14:15:34 +02:00
0xboobface 6600b0da94 Get the authentication and the stream working 2020-07-10 22:12:28 +02:00
0xboobface ed0f5476b5 Merge branch 'dev' into manyvids 2020-07-10 18:09:26 +02:00
0xboobface 64569f83ab Optimize http client shutdown 2020-07-05 14:07:15 +02:00
0xboobface e7349b2118 Set version to 3.8.1 2020-07-03 19:12:18 +02:00
0xboobface d2c2cb476b Fix MyFreeCams websocket message parsing 2020-07-03 18:56:59 +02:00
0xboobface 09337aa59a Update Java class with newer Java versions 2020-06-30 20:45:24 +02:00
0xboobface 3382c7ff54 Fix initialization of the range slider 2020-06-30 19:40:08 +02:00
0xboobface d3d9662ec5 Add websocket client 2020-06-20 11:17:19 +02:00
0xboobface e6fa97dc15 Add affiliate link 2020-06-14 15:07:58 +02:00
0xboobface 00692f991e Add UI part for MVLive
At the moment only the thumbnail overview is working. More stuff to come...
2020-06-14 15:07:54 +02:00
0xboobface e59de2f70b Add base classes for Manyvids Live 2020-06-14 15:06:17 +02:00
0xboobface ff08fda618 Set default for max resolution to max value 2020-06-14 11:22:26 +02:00
0xboobface 3b5cbfaddf Fix NPE in getHttpHeaderFactory in MyFreeCamsModel 2020-06-14 11:22:01 +02:00
0xboobface 6e25f98b2b Add range slider for the recording resolution 2020-06-13 20:08:25 +02:00
0xboobface 229fc1f432 Add possibility to add notes to recordings 2020-06-13 19:32:00 +02:00
0xboobface 583c4ec722 Implement bandwidth meter for remote recording 2020-06-12 19:18:53 +02:00
0xboobface 43d2676e11 Add HttpHeaderFactory mechanism
Each model can provide its own factory to provide HTTP headers for the
different download requests (playlist, segment playlist, segments)
2020-06-12 18:24:34 +02:00
0xboobface 06029a1331 Code cleanup 2020-06-12 18:22:12 +02:00
0xboobface cd6175a7eb Add BandwidthMeter, which tracks the current bandwidth usage 2020-06-12 18:21:32 +02:00
0xboobface bd48d6bf9c Set version to 3.8.0 2020-06-12 18:10:56 +02:00
0xboobface 0ed6d93d30 Set version to 3.7.3 2020-06-09 19:36:17 +02:00
0xboobface d55f1c04ee Fix MFC websocket communication
The protocol had been changed for the initial login sequence
2020-06-09 19:33:43 +02:00
0xboobface 7e4a6393b0 Set version to 3.7.2 2020-06-07 13:57:15 +02:00
0xboobface acd6126619 Add "New" tab to each site where it was missing 2020-06-07 13:53:54 +02:00
0xboobface fdce3bcec0 Fix chaturbate login check
The check if ctbrec is logged in always returned true because of a
change on the user profile page. ctbrec now uses the user icon to check,
if the user is the anonymous user or a logged in user.
2020-06-07 12:28:08 +02:00
0xboobface c8614d7208 Set version to 3.7.1 2020-05-31 18:44:04 +02:00
0xboobface 1bea13dc05 Improve server download progress calculation 2020-05-31 17:20:25 +02:00
0xboobface b87f090ac3 Add max resolution setting for the player 2020-05-31 14:50:12 +02:00
0xboobface 258334b637 Add setting to remove recordings after post-processing 2020-05-29 19:50:03 +02:00
0xboobface 0858941b50 Fix NPE in MFC client 2020-05-23 16:20:49 +02:00
0xboobface f1a0e5900c Fix createModelFromUrl for Showup and Fc2Live 2020-05-23 16:20:32 +02:00
0xboobface 3958a7b5f1 Reduce log level in getModelList 2020-05-23 13:47:07 +02:00
0xboobface 9eea66d94f Remove the uid field from ShowupModel 2020-05-20 19:37:01 +02:00
0xboobface 9462a31111 Improve detection of stream termination 2020-05-20 19:00:09 +02:00
0xboobface c05785cd20 Improve Showup online detection 2020-05-20 18:18:29 +02:00
0xboobface e096e8555f Fix possible NPE 2020-05-20 18:17:58 +02:00
0xboobface 33a0094b19 Adjust to Stripchat API changes 2020-05-20 18:17:46 +02:00
0xboobface a91923baff Use the small preview image for the thumbnails 2020-05-16 22:45:15 +02:00
0xboobface 66b37b65c0 Set version to 3.7.0 2020-05-16 22:20:06 +02:00
0xboobface 9cd9bdf973 Remove handling for online states private and group
They don't seem to affect the recording of the stream
2020-05-16 22:19:55 +02:00
0xboobface 39c1fd94ba Fix isOnline for SHowupModel 2020-05-16 21:34:39 +02:00
0xboobface 1a5c32167e Preparation for Showup login 2020-05-16 21:30:25 +02:00
0xboobface 6c85a2a493 First working version of Showup.tv 2020-05-16 16:28:44 +02:00
0xboobface bd92c315fb Set version to 3.6.4 2020-05-13 18:46:24 +02:00
0xboobface ef3c036f49 Fix race condition causing orphaned FFmpeg processes
The problem was, that an error occured before FFmpeg was completely
launched. ctbrec called internalStop, but the FFmpeg fields still
pointed to null. ctbrec then finished the recording. In the meantime
FFmpeg fired up and was abandoned by the recording.
2020-05-10 14:58:42 +02:00
0xboobface b820021aee Spawn FFmpeg process only if playlist request was successful 2020-05-10 13:16:47 +02:00
0xboobface e6dae3b2af Set version to 3.6.3 2020-05-10 12:03:32 +02:00
0xboobface 2e4ec80bd8 Reduce visibility of public method 2020-05-10 10:43:53 +02:00
0xboobface 3c4ef05a48 Fix NPE in internalStop 2020-05-10 10:43:37 +02:00
0xboobface cd5172613e Fixed player start for recordings starting with a dash 2020-05-03 15:32:54 +02:00
0xboobface 8cdc2a4a56 Set version to 3.6.2 2020-05-02 14:43:20 +02:00
0xboobface df50646627 Change FFmpeg termination handling again
FFmpeg was killed to early, so that the file encoding was not finished
properly. For example the moov atom was not written for MP4 files. We
now wait at most 5 minutes for FFmpeg to finish and only kill it then
with force.
2020-05-02 12:45:15 +02:00
0xboobface b402bb0df7 Set version to 3.6.1 2020-04-28 22:07:38 +02:00
0xboobface a0d9835192 Fix streamate stream source parsing 2020-04-28 22:05:06 +02:00
0xboobface d78f96fef6 Improve handling of recording termination
This change hopefully helps to terminate FFmpeg reliably once a
recording terminates.
2020-04-25 15:42:41 +02:00
0xboobface 3c86310edf Add stream source "Origin" 2020-04-23 19:28:12 +02:00
0xboobface a30d4ed463 Change data type of all Integer fields to String 2020-04-18 19:51:40 +02:00
0xboobface 0c7650f94f Remove retry loop in getNextSegments
This might cause blocks by MFC because we are asking for a resource,
which is not available.
2020-04-18 19:50:42 +02:00
0xboobface a37a018159 Remove outdated settings for MFC 2020-04-13 19:43:33 +02:00
0xboobface aa42e82153 Set version to 3.6.0 2020-04-13 18:53:29 +02:00
0xboobface e5a9c468eb Remove "(broken)" from MFC's title 2020-04-13 18:52:29 +02:00
0xboobface ae6fa229e7 Add user-agent agent header to every http request in MFC classes 2020-04-13 18:42:57 +02:00
0xboobface 970b9ab574 Fix follow/unfollow for BongaCams 2020-03-28 13:07:54 +01:00
0xboobface 915be1d4fc Save column order in tables 2020-03-22 13:54:31 +01:00
0xboobface 243d2757b0 Set version to 3.5.0 2020-03-19 15:01:34 +01:00
0xboobface 13da583483 Revert refresh of segment playlist url 2020-03-19 15:00:23 +01:00
0xboobface d716354dc1 Add config setting for the number post-processing threads 2020-03-17 20:20:11 +01:00
0xboobface ff9ff8f40f Add dialog to specify media player params in the settings 2020-03-16 20:51:09 +01:00
0xboobface 6f57579041 Add pinning for recordings
Recordings can now be set to pinned. Pinned recordings cannot be
deleted.
2020-03-16 16:10:09 +01:00
ctbrec-contrib-01 e333722522 Improve directory size update performance
Use NIO Files.walkFileTree() instead of IO File.ListFiles() API.
Speed improvement was ~6.1s -> ~4.4s on my recordings list.

TODO: implement more intelligent refresh.
2020-03-03 19:53:29 +01:00
0xboobface 2eb1b17513 Change cookie name of the sorting settings 2020-03-02 20:45:24 +01:00
0xboobface 2f013bc870 Change BongaCams online check 2020-02-29 18:30:57 +01:00
0xboobface 3636d34d22 Set version to 3.4.0 2020-02-27 20:59:53 +01:00
0xboobface 46bd8667c8 Separate site name and displayed title 2020-02-26 21:40:58 +01:00
0xboobface 8cafc7124f Add search for Stripchat 2020-02-23 19:36:14 +01:00
0xboobface e4b9da7685 First working implementation for Stripchat 2020-02-23 18:47:37 +01:00
0xboobface 4dcf9944f8 Set version to 3.3.0 2020-02-22 17:57:03 +01:00
0xboobface 71be9b3665 Improve support for server-side single files 2020-02-22 17:40:22 +01:00
0xboobface 351066e869 Add comment 2020-02-22 14:35:04 +01:00
0xboobface bc929cc6e1 Switch to MergedFfmpegHlsDownload 2020-02-22 14:33:51 +01:00
0xboobface 4f9c1606fc Fix download of recordings 2020-02-22 14:26:50 +01:00
0xboobface 4ebc847720 Use MergedFfmpegHlsDownload for merged HLS downloads 2020-02-22 13:27:17 +01:00
0xboobface 1e95872cb7 Disguise FFmpeg as normal browser 2020-02-22 12:38:28 +01:00
0xboobface f98d442096 Implement custom command line parameters and clean shutdown 2020-02-22 12:19:32 +01:00
0xboobface d2f490f8f6 Add FFmpeg downloaders 2020-02-22 11:20:10 +01:00
0xboobface e98a3bc7c2 Set version to 3.2.1 2020-02-16 17:04:46 +01:00
0xboobface 110fc2a6bf Fix LiveJasmin HD recordings 2020-02-16 15:18:38 +01:00
0xboobface b18a32ede3 Fix LiveJasmin followed tab 2020-02-16 13:28:33 +01:00
0xboobface 9a4461a0d1 Set version to 3.2.0 2020-02-01 10:03:56 +01:00
0xboobface 316d2a7e22 Fix loading of the Streamate model ID 2020-01-31 19:50:17 +01:00
0xboobface 741072b1f0 Rename site to MyFreeCams (broken) 2020-01-26 19:18:30 +01:00
0xboobface 18669a9c43 Fix Streamate
Streamate introduced a CSRF token, which has to be sent in the HTTP
header.
2020-01-26 18:33:13 +01:00
0xboobface 3cf6038da0 Don't kill the ws in the keep-alive thread, if it is establishing a
connection
2020-01-11 13:20:49 +01:00
0xboobface b66989fe85 Set version to 3.1.0 2020-01-11 11:30:02 +01:00
0xboobface 3bb161c055 Add columns "last recorded" and "last seen" to models table 2020-01-05 16:02:22 +01:00