I've had Capturebate working for years in Ubuntu 12.04, but I was recently forced to change servers. The new one is Ubuntu 16.04 and nothing I try works =/ (Although it's possible that there's some setting or dependency I don't know about is blocking it.)
Capturebate
seems to run smoothly until it's time to record the actual stream. Then it creates a 0kb file and dies. If I run the leftover shell script myself with the --verbose option, I get:
Code:
DEBUG: Property: <Name: level, STRING: error>
DEBUG: Property: <Name: code, STRING: NetStream.Play.Failed>
DEBUG: Property: <Name: description, STRING: security>
DEBUG: Property: <Name: clientid, NUMBER: 817360195.00>
DEBUG: (object end)
DEBUG: (object end)
DEBUG: HandleInvoke, server invoking <onStatus>
DEBUG: HandleInvoke, onStatus: NetStream.Play.Failed
ERROR: Closing connection: NetStream.Play.Failed
(Here's the full output on Pastebin)
Here's the actual command from the model.sh file, with my personal information changed. I've tried it with the rtmpdump binary you compile from ksv (that comes with Capturebate), the rtmpdump that you get with
apt-get install rtmpdump, and the rtmpdump from my old server.
Code:
/home/me/cb/rtmpdump-ksv/rtmpdump --quiet --live --rtmp "rtmp://edge9.stream.highwebmedia.com/live-edge" --pageUrl "http://chaturbate.com/chroniclove" --conn S:myusername --conn S:chroniclove --conn S:2.645 --conn S:pbkdf2_sha256\$24000\$xxxxxxxxxx\$xxxxxxxxxxxgxxxyxxxxxxxxxxxxxxxxxxxxxx\= --token "xxx#xxxxxxxxx@xxxxxx" --playpath "playpath" --flv "/home/me/CaptureBate/captured/chroniclove_09-14-2016_16.35.flv"
I've tried running rtmpsuck and it successfully gives me output with Chaturbate (although oddly, I can't get it to work with any
other site). Here are the results of rtmpsuck:
Code:
(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: live-edge
flashVer: LNX 11,2,202,632
swfUrl: https://chaturbate.com/static/flash/CBV_2p650.swf
tcUrl: rtmp://edge12.stream.highwebmedia.com/live-edge
pageUrl: https://chaturbate.com/chroniclove/
WARNING: Trying different position for client digest!
Processing connect
app: live-chat
flashVer: LNX 11,2,202,632
swfUrl: https://chaturbate.com/static/flash/CBV_2p650.swf
tcUrl: rtmp://chat3.highwebmedia.com/live-chat
pageUrl: https://chaturbate.com/chroniclove/
Playpath: mp4:rtmp://origin17.stream.highwebmedia.com/live-origin/chroniclove-sd-4eb78e9eb5231a70fa31c8236be0d6550ebbf5e6cda1b805fdfec3021c008523
Saving as: chroniclove-sd-4eb78e9eb5231a70fa31c8236be0d6550ebbf5e6cda1b805fdfec3021c008523
WARNING: ignoring too small audio packet: size: 0
If I take that output and put it back into rtmpdump like this:
Code:
#!/bin/bash
/usr/bin/rtmpdump \
--rtmp rtmp://edge12.stream.highwebmedia.com/live-edge \
--playpath mp4:rtmp://origin17.stream.highwebmedia.com/live-origin/chroniclove-sd-4eb78e9eb5231a70fa31c8236be0d6550ebbf5e6cda1b805fdfec3021c008523 \
--app live-edge \
-W https://chaturbate.com/static/flash/CBV_2p650.swf \
--pageUrl https://chaturbate.com/chroniclove/ \
--flashVer "LNX 11,2,202,632" \
-o rttest.flv \
--verbose \
--live \
I get a different error:
Code:
DEBUG: Property: <Name: level, STRING: error>
DEBUG: Property: <Name: code, STRING: NetStream.Play.Failed>
DEBUG: Property: <Name: description, STRING: security>
DEBUG: Property: <Name: clientid, NUMBER: 246530619.00>
DEBUG: (object end)
DEBUG: (object end)
DEBUG: HandleInvoke, server invoking <onStatus>
DEBUG: HandleInvoke, onStatus: NetStream.Play.Failed
ERROR: Closing connection: NetStream.Play.Failed
(Here's a pastebin of the full output)
Basically, I just completely stuck here. I've been banging my head against this all week, trying different things.
I would be grateful for any scripting solution for recording shows in Ubuntu 16.04. It doesn't have to be Capturebate; if I can find a rtmpdump command that works (or anything else that works), I'll write my own scripts to do it automatically. I know there are supposedly Firefox plugins that will do it, but I'd rather not do that; I'd rather use a script, or something that works completely on the command line.
Thanks to anyone who took the time to read this.