Audio/video stream recording forums

Attention Visitor:
You may have to register or log in before you can post:
  • Click the register link to sign up.
  • Registered members please fill in the form below and click the "Log in" button.
To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Audio/video stream recording forums > Streaming media recording forum > rtmpdump
Register FAQ Members List Calendar Mark Forums Read

View Poll Results: Should I Also Produce An Android Version After Supporting Both Windows+Mac OSX?
Yes! That would be awesome to download the streams from anywhere! 4 57.14%
No... Just focus on the Windows + Mac OSX versions! 3 42.86%
I don't have a microSD/SD card with a high enough capacity for it to be worth it! 0 0%
Voters: 7. You may not vote on this poll

Reply Post New Thread
 
Thread Tools Display Modes
  #1  
Old 12-26-2014, 10:32 PM
DefectedToRussia DefectedToRussia is offline
Junior Member
 
Join Date: Dec 2014
Posts: 11
DefectedToRussia is on a distinguished road
Talking

CB Downloader Pro InitializerThread();


Alright, here's the plan. Sick of manually or batch scripting CB performers live streams? I'm going to totally automate everything, and make the app run on Windows + Mac OSX, and possibly android too! (if there's enough requests for it)

Following this thread: http://stream-recorder.com/forum/cha...t10869p37.html

I've been able to capture the streams with KSV's most recent mod of rtmpdump!

The idea is simple, You'll add all the performer's name's / urls to a list box. TLS/SSL capabilities but no web browser control (so no javascript engine) it logs into an account, then it checks each performer/model's page and searches for the string "Room is currently offline" within the html to determine whether the stream is active or not (You think that's a good method? Or should I use another way?) It will wait a user defined delay in minutes, before checking the page again to see if that performer is online again. The number of active simultaneous page checks will also be user customizable. As will the number of concurrent stream downloads (but this one can be set to unlimited if desired unlike the other{In which case you'll only be limited by hard disk space, and memory})
For example you could set it so it will request 10 performer pages simultaneously, while downloading an unlimited number of streams at once (obviously limited by your selection of performers), with a delay of 10 minutes between re-checks for if they're online. (I think too often might get you banned lol, so 1 minute is probably too often, but maybe not, it'll be up to the user to decide)

If they are online, it extracts the necessary info from the page: SWF Version, RTMP Stream URL, User's sha256 password hash, and the performer's room hash!

So then with each performer that is online with the necessary data grabbed, the command line for rtmpdump will be formed!
Something like:

Command.sprintf("rtmpdump -v -r \"rtmp://%s/live-edge\" -p \"https://chaturbate.com/%s\" -C S:%s -C S:%s -C S:%s -C S:%s -C S:%s -T \"%s\" -y \"playpath\" -o \"%s_%s.flv\"", rtmp_url, performer_name, loggedin_user, performer_name, swfversion, users_passwordhash, room_hash, security_key, performer_name, datetime);

Each rtmpdump instance created via generated command line will run in the background so no console windows will be visible.

You just leave it running on your pc or mac, minimize it to tray or dock, and enjoy fully automated CB streams directly to your hard disk with no user intervention at all! Also many things will be fully customizable, so if it ever breaks down, you could just change some settings and get it working again! (most likely) {For example if the way to extract the necessary data from the performer's page changes, you could fix it via the configuration of the app, or if the security key changes you could update it, it wont be hard coded! Any ideas how I could retrieve the security key automatically, to make that not even necessary?}


Finally I have some question's regarding the alternate RTMP URL which works with VLC if you feed it, or to JWPlayer as one dude linked to from the CB thread link at the top of this post. Also probably in a safari or other "Webkit" browser.
->


If you disable or don't have flash installed in a certain browser, it instead of being able to load the flash video streamer (their .swf) will attempt to load the stream a different way. I am a little confused on how this other rtmp streaming method works. It involves a single data point rather than all of the above data points. Just a single link with still port 1935, but it's to an .m3u8 file. If you paste this link into VLC under network stream, or convert/save, you can either just view the CB stream or capture and save it! Is your user account and password hashed together with all the other data to create that link?

This is what I'm mean->


By using one of my old applications that I dug up that I thought might help, I used it's packet dumper feature to hook vlc media player's winsock via injected dll and pipe the data back to the main application. Good thing I made it have a packet dumper / packet viewer feature otherwise it would've been totally useless (well except for downloading specific mime types sent over http protocol {it was made by me way before everyone came to ssl/tls and before pretty much every website stopped sending media over standard http protocol) The down side to the app is any line that hit's an unprintable character, the rest of it from there is truncated! However anything that's plain text is shown!



It seems it once it get's that first .m3u8, it keeps looping from a chunklist_wXXXXX.m3u8 to a media_wXXXX.ts

Is it really downloading the stream over just HTTP or what's going on here? Perhaps it's still going through RTMP but over HTTP?

Just trying to figure out if I can maybe use this as an alternative download method, instead of relying solely on rtmpdump there could be a selectable alternative method that also works! Thanks, and be sure to vote on whether or not I should also get it going on android after win+mac!
Reply With Quote
  #2  
Old 12-27-2014, 02:49 AM
yetanotherday yetanotherday is offline
tinyurl.com/sleazy-script
 
Join Date: Jul 2012
Posts: 54
yetanotherday is on a distinguished road
Default

Re: CB Downloader Pro InitializerThread();


bump for u
Reply With Quote
  #3  
Old 12-27-2014, 04:18 AM
nullacht nullacht is offline
Senior Member
 
Join Date: Jan 2010
Posts: 230
nullacht will become famous soon enoughnullacht will become famous soon enough
Default

Re: CB Downloader Pro InitializerThread();


Quote:
Originally Posted by DefectedToRussia View Post

It seems it once it get's that first .m3u8, it keeps looping from a chunklist_wXXXXX.m3u8 to a media_wXXXX.ts

Is it really downloading the stream over just HTTP or what's going on here? Perhaps it's still going through RTMP but over HTTP?

Just trying to figure out if I can maybe use this as an alternative download method, instead of relying solely on rtmpdump there could be a selectable alternative method that also works!
Code:
livestreamer "https://chaturbate.com/sexygirl955/" best
Code:
[cli][info] Found matching plugin chaturbate for URL https://chaturbate.com/sexygirl955/
[cli][info] Available streams: 240p (worst, best)
[cli][info] Opening stream: 240p (hls)
Reply With Quote
  #4  
Old 12-29-2014, 01:16 PM
DefectedToRussia DefectedToRussia is offline
Junior Member
 
Join Date: Dec 2014
Posts: 11
DefectedToRussia is on a distinguished road
Default

Re: CB Downloader Pro InitializerThread();


EDIT: I've been able to suppress the problem and fix it for the most part. By exception catching, wrapping the login post in a try catch, now all these errors are caught and ignored instead of being unhandled and causing a popup / would be crash.

Quote:
Originally Posted by nullacht View Post
Livestreamer supports Chaturbate.com [see changelog from April 21, 2014]:

Code:
https://github.com/chrippa/livestreamer/releases
Code:
http://livestreamer.readthedocs.org/en/latest/plugin_matrix.html
Code:
Plugins:

Added plugin for Chaturbate
Thanks for that, after reading more into it I've discovered that the alternative streaming link is called HLS. It through me off a little first, but now it's clear it's audio chunks at a certain small length as .ts files! they are pieced together and played for continuous video. So yes I should definitely include this way as an alternative to the main rtmp dump method! I'll find someway to implement it.

For now to give an update on the app, things are coming along pretty nicely.

TLS is working and I just got it to log in successfully and pass me a valid session id cookie You can tell when you're logged in as your password hash shows up in the rtmp info (is one obvious way anyway among others).


However there's an issue, where I get an 403 forbidden error after posting the data for some reason, but it still worked and it successfully logs in. Is this really an error or what is up with that? If I make handle redirects to false, I get a differnent not quite error, 302 found. and it still successfully logs in... Maybe it's better to stop at 302 found then with another instance of the class that has handle redirects enabled continue from there... As it seems handling redirects is neccessary to not to held up, and for things to work!

Successfully logged in with data relevant to being a logged in user rather than just anonymous


but that's after this:


I'm going to suppress the errors for sure, but 403 forbidden doesnt seem like something I want to be getting even if it successfully logs in! At least its working though But thanks to anyone who can help me get rid of this error!



I know you get csrf token from cookies/hidden field on web page and then you have to post it to the login page as "csrfmiddlewaretoken" along with "username" and "password"... That's simple enough right? Finally you can add at the end of the post data: "&rememberme=on" to get a longer lasting cookie? That's what I think anyway... Seems like that at least!

So what could I be doing wrong If I'm sending the data right... Well because how else would it log in and give me a valid session cookie after sending the post data to do the login process? there's just something miniscule causing an issue.. Thanks!

Last edited by DefectedToRussia : 12-29-2014 at 05:37 PM.
Reply With Quote
  #5  
Old 12-29-2014, 08:37 PM
DefectedToRussia DefectedToRussia is offline
Junior Member
 
Join Date: Dec 2014
Posts: 11
DefectedToRussia is on a distinguished road
Default

Re: CB Downloader Pro InitializerThread();


UPDATE 2: I've moved past that issue (I'm fairly certain, it's not hurting anything anymore) Now cookies are serialized and saved + reloaded seamlessy! Whether or not remember me option is enabled, upon closing the application and re-opening it, it loads the previous sessions cookies and if they're still valid, you'll still be logged in without having to re-log in each application load



This will be really useful, and quite nice!

The hard part is now complete!
Reply With Quote
  #6  
Old 01-23-2015, 11:28 AM
singularity singularity is offline
Junior Member
 
Join Date: Jan 2015
Posts: 2
singularity is on a distinguished road
Default

Re: CB Downloader Pro InitializerThread();


Any updates on this?
Reply With Quote
  #7  
Old 03-26-2015, 10:34 AM
longsack longsack is offline
Junior Member
 
Join Date: Mar 2015
Posts: 1
longsack is on a distinguished road
Default

Re: CB Downloader Pro InitializerThread();


looking for an update, if you have one?
Reply With Quote
  #8  
Old 05-28-2015, 01:21 AM
dealercohagen dealercohagen is offline
Junior Member
 
Join Date: Mar 2014
Posts: 9
dealercohagen is on a distinguished road
Default

Re: CB Downloader Pro InitializerThread();


Any updates on this?
Reply With Quote
Reply Post New Thread
Tags: , ,



Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -6. The time now is 09:03 AM.


Powered by All-streaming-media.com; 2006-2011
vB forum hacked with Zoints add-ons