Felmachersoft / StreamBuffRe

Public issue tracker for StreamBuffRe, see https://streambuffre.com/
5 stars 0 forks source link

Support sites that use RTMP/RTMPS/RTMPE streams #29

Closed Zero3K closed 3 years ago

Zero3K commented 6 years ago

It would be nice if it supported sites that use those protocols for their streams.

Felmachersoft commented 6 years ago

Adding another protocol is possible, please post a link to an example stream (a link youtube-dl can handle works as well).

Zero3K commented 6 years ago

NSFW:

https://www.filipinamagic.com/chat/yummyboobie?nats=MC4wLjQ0LjQ5LjAuMC4wLjAuMA http://chathostess.com/chat.php?context=free&model_id=180490&model=Hotpeachyx https://www.streamate.com/cam/SashaBigSquirt/ https://www.myfreecams.com/#vanilla_dream https://m.filipinamagic.com/yummyboobie?nats=MC4wLjQ0LjU5LjAuMC4wLjAuMA https://wowcams.com/performers/messenger-v2?_userId=126616&_siteId=2&fullScreen=1

SFW:

http://streamfare.com/cnn.html

Felmachersoft commented 6 years ago

The only sfw link (http://streamfare.com/cnn.html) doesn't work with youtube-dl for me. Only gives me:

[generic] cnn: Requesting header
WARNING: Falling back on generic information extractor.
[generic] cnn: Downloading webpage
[generic] cnn: Extracting information
ERROR: Unsupported URL: http://streamfare.com/cnn.html

Please provide another one.

Zero3K commented 6 years ago

I don't know of any that work with Youtube-DL. It'll be really tedious to ask them to support sites that have streams that use RTMP/RTMPS/RTMPE since I or anyone else would have to make an issue for EACH ONE.

EDIT: Maybe checking the url for a RTMP(S/E) stream and downloading it using RTMPDump or similar will work.

Felmachersoft commented 6 years ago

I do need a URL for testing. As stated a direct link or one youtube-dl can handle will do. For not yet supported sites you can create a PhantomJS-Resolver script in JavaScript to extract the rtmp URL and post it here. I will not create generic extractor for a protocol not even supported yet.

Zero3K commented 6 years ago
  1. Direct Link to what? The site or the stream?
  2. I don't know how to make one.
Felmachersoft commented 6 years ago

Just provide a working stream url (starting with rtmp://). You can test if a stream work by opening it with vlc.

Zero3K commented 6 years ago

Here's the log of RTMPSuck being used by RTMPDumpHelper when I recorded some streams:

RTMP Proxy Server v2.4 (c) 2010 Andrej Stepanchuk, Howard Chu; license: GPL

Streaming on rtmp://0.0.0.0:1935 WARNING: Trying different position for client digest! Processing connect app: webvideo/host-358 flashVer: WIN 29,0,0,140 swfUrl: https://www.filipinamagic.com/libs/asiancamsex/customer_code.swf?v=1458038257000 ERROR: HTTP_get, TLS_Connect failed ERROR: RTMP_HashSWF: connection lost while downloading swfurl https://www.filipinamagic.com/libs/asiancamsex/customer_code.swf?v=1458038257000 tcUrl: rtmp://rtmp.filipinamagic.com:1935/webvideo/host-358 pageUrl: https://www.filipinamagic.com/chat/wetpussy4u Playpath: host-358 Saving as: host-358 WARNING: Trying different position for client digest! WARNING: Trying different position for client digest! Processing connect app: livechatsys_video/156351 flashVer: WIN 29,0,0,140 swfUrl: http://chathostess.com/shared/videos/lcsMember.v4.8.Z.25.swf tcUrl: rtmp://WOWZA05.foobarweb.com/livechatsys_video/156351 pageUrl: http://chathostess.com/chat.php?context=free&model_id=156351&model=PUSSYWETCUMX Processing connect app: livechatsys_chat/156351 flashVer: WIN 29,0,0,140 swfUrl: http://chathostess.com/shared/videos/lcsMember.v4.8.Z.25.swf tcUrl: rtmp://WOWZA05.foobarweb.com/livechatsys_chat/156351 pageUrl: http://chathostess.com/chat.php?context=free&model_id=156351&model=PUSSYWETCUMX WARNING: Trying different position for client digest! Processing connect app: livechatsys_chattext/156351 flashVer: WIN 29,0,0,140 swfUrl: http://chathostess.com/shared/videos/lcsMember.v4.8.Z.25.swf tcUrl: rtmp://WOWZA05.foobarweb.com/livechatsys_chattext/156351 pageUrl: http://chathostess.com/chat.php?context=free&model_id=156351&model=PUSSYWETCUMX Playpath: 201842433021 Saving as: 201842433021 Playpath: 201842433021 Saving as: 20184243302101 WARNING: ignoring too small audio packet: size: 0 ERROR: RTMP_ReadPacket, failed to read RTMP packet header ERROR: RTMP_ReadPacket, failed to read RTMP packet header Closing connection... done!

WARNING: Trying different position for client digest! Processing connect app: camshows_sac/ flashVer: WIN 29,0,0,140 swfUrl: https://camshows.com/cdn/js/nodejs/messenger-hd-sound/HD2.0-Viewer.swf tcUrl: rtmp://fms.mahalcams.com/camshows_sac/ pageUrl: https://wowcams.com/performers/messenger-v2?_userId=807&_siteId=2&fullScreen=1 Playpath: mp4:906972d3641fa2e3d5d1b111d6e61e31.f4v Saving as: mp4_906972d3641fa2e3d5d1b111d6e61e31.f4v WARNING: ignoring too small audio packet: size: 0 ERROR: RTMP_ReadPacket, failed to read RTMP packet header WARNING: Trying different position for client digest! Processing connect app: camshows_sac/ flashVer: WIN 29,0,0,140 swfUrl: https://camshows.com/cdn/js/nodejs/messenger-hd-sound/HD2.0-Viewer.swf tcUrl: rtmp://fms.mahalcams.com/camshows_sac/ pageUrl: https://wowcams.com/performers/messenger-v2?_userId=807&_siteId=2&fullScreen=1 Playpath: mp4:906972d3641fa2e3d5d1b111d6e61e31.f4v Saving as: mp4_906972d3641fa2e3d5d1b111d6e61e31.f4v ERROR: WriteN, RTMP send error 10054 (1386 bytes) WARNING: ignoring too small audio packet: size: 0 ERROR: RTMP_ReadPacket, failed to read RTMP packet header ERROR: RTMP_ReadPacket, failed to read RTMP packet header ERROR: RTMP_ReadPacket, failed to read RTMP packet header Closing connection... Closing connection... done!

done!

Felmachersoft commented 6 years ago

Just provide a sfw rtmp link.

Felmachersoft commented 6 years ago

I will test if pipeping from FFMPEG to StreamBuffRe works. If so I will add a resolver and provider for RTMP/RTMPS/RTMPE via FFMPEG.

Felmachersoft commented 6 years ago

In version 0.5.13.0 the FFMPEG provider was added. It provides a way to pipe all protocols FFMPEG supports into StreamBuffRe. Thus you can now play/download/send RTMP streams with StreamBuffRe, as long as you or youtube-dl can provide the direct RTMP link. In order to use it FFMPEG must be set up correctly (Like before StreamBuffRe can do it for you).

Keep in mind not all protocols FFMPEG supports are ready to be used with StreamBuffRe for now. Due to the nature of pipeing, RTMP streams can't be synced between StreamBuffRe instances.

I will add an FFMPEG resolver to add support for more protocols in the future.

I will close this issue when the rest of the protocols are supported as well.

Zero3K commented 6 years ago
  1. It would be nice if StreamBuffRe could get the RTMP, etc. link from a page containing a stream.
  2. Is there any link I can use to test that the RTMP support is working?
Felmachersoft commented 6 years ago

Please ensure you are on version 0.5.13.1, if fixes few bugs with FFMPEG provider (especially when using older FFMPEG versions).

  1. Some rtmp links can be extracted via youtube-dl (see below for an example). You can also write PhantomJS scripts for additional sides. Due to the usage of flash it is often not trivial to get the direct rtmp link. I know FFMPEG can handle swf files used with flash; I will look into it.

  2. For testing VODs (videos with fixed length) I used links from nick.de. They can be resolved via youtube-dl. Example links are: http://www.nick.de/shows/3106-das-geheimnis-der-hunters http://www.nick.de/shows/2624-schwein-ziege-banane-grille

It's harder to find livestreams, for testing I use the following direct links: rtmp://stream-cdn.ok54.de/tv/nahetv rtmp://62.210.141.18:1935/directo/lancelot.television

Felmachersoft commented 3 years ago

The FFMPEG provider works as intended. Direct RTMP links can be retrieved by custom resolvers made with phantomJS for example.