8000 GitHub - teacat/chaturbate-dvr: 😎 Chaturbate DVR - auto records the stream when it goes online!
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

teacat/chaturbate-dvr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Chaturbate DVR

A tool to record multiple Chaturbate streams. Supports macOS, Windows, Linux, and Docker. Favicon from Twemoji.

Image

Image

Β 

Getting Started

Go to the πŸ“¦ Releases page and download the appropriate binary. (e.g., x64_windows_chatubrate-dvr.exe)

Β 

🌐 Launching the Web UI

# Windows
$ x64_windows_chatubrate-dvr.exe

# macOS / Linux
$ ./x64_linux_chatubrate-dvr

Then visit http://localhost:8080 in your browser.

Β 

πŸ’» Using as a CLI Tool

# Windows
$ x64_windows_chatubrate-dvr.exe -u CHANNEL_USERNAME

# macOS / Linux
$ ./x64_linux_chatubrate-dvr -u CHANNEL_USERNAME

This starts recording immediately. The Web UI will be disabled.

Β 

🐳 Running with Docker

Pre-built image yamiodymel/chaturbate-dvr from Docker Hub:

# Run the container and save videos to ./videos
$ docker run -d \
    --name my-dvr \
    -p 8080:8080 \
    -v "./videos:/usr/src/app/videos" \
    -v "./conf:/usr/src/app/conf" \
    yamiodymel/chaturbate-dvr

...Or build your own image using the Dockerfile in this repository.

# Build the image
$ docker build -t chaturbate-dvr .

# Run the container and save videos to ./videos
$ docker run -d \
    --name my-dvr \
    -p 8080:8080 \
    -v "./videos:/usr/src/app/videos" \
    -v "./conf:/usr/src/app/conf" \
    chaturbate-dvr

...Or use docker-compose.yml:

$ docker-compose up

Then visit http://localhost:8080 in your browser.

Β 

🧾 Command-Line Options

Available options:

--username value, -u value  The username of the channel to record
--admin-username value      Username for web authentication (optional)
--admin-password value      Password for web authentication (optional)
--framerate value           Desired framerate (FPS) (default: 30)
--resolution value          Desired resolution (e.g., 1080 for 1080p) (default: 1080)
--pattern value             Template for naming recorded videos (default: "videos/{{.Username}}_{{.Year}}-{{.Month}}-{{.Day}}_{{.Hour}}-{{.Minute}}-{{.Second}}{{if .Sequence}}_{{.Sequence}}{{end}}")
--max-duration value        Split video into segments every N minutes ('0' to disable) (default: 0)
--max-filesize value        Split video into segments every N MB ('0' to disable) (default: 0)
--port value, -p value      Port for the web interface and API (default: "8080")
--interval value            Check if the channel is online every N minutes (default: 1)
--cookies value             Cookies to use in the request (format: key=value; key2=value2)
--user-agent value          Custom User-Agent for the request
--domain value              Chaturbate domain to use (default: "https://chaturbate.global/")
--help, -h                  show help
--version, -v               print the version

Examples:

# Record at 720p / 60fps
$ ./chatubrate-dvr -u yamiodymel -resolution 720 -framerate 60

# Split every 30 minutes
$ ./chatubrate-dvr -u yamiodymel -max-duration 30

# Split at 1024 MB
$ ./chatubrate-dvr -u yamiodymel -max-filesize 1024

# Custom filename format
$ ./chatubrate-dvr -u yamiodymel \
    -pattern "video/{{.Username}}/{{.Year}}-{{.Month}}-{{.Day}}_{{.Hour}}-{{.Minute}}-{{.Second}}_{{.Sequence}}"

Note: In Web UI mode, these flags serve as default values for new channels.

Β 

πŸͺ Cookies & User-Agent

You can set Cookies and User-Agent via the Web UI or command-line arguments.

localhost_8080_ (4)

Note: Use semicolons to separate multiple cookies, e.g., key1=value1; key2=value2.

Β 

☁️ Bypass Cloudflare

  1. Open Chaturbate in your browser and complete the Cloudflare check.

    (Keep refresh with F5 if the check doesn't appear)

  2. DevTools (F12) β†’ Application β†’ Cookies β†’ https://chaturbate.com β†’ Copy the cf_clearance value

sshot-2025-04-30-146

  1. User-Agent can be found using WhatIsMyBrowser, now run with -cookies and -user-agent:

    $ ./chatubrate-dvr -u yamiodymel \
        -cookies "cf_clearance=PASTE_YOUR_CF_CLEARANCE_HERE" \
        -user-agent "PASTE_YOUR_USER_AGENT_HERE"

    Example:

    $ ./chatubrate-dvr -u yamiodymel \
        -cookies "cf_clearance=i975JyJSMZUuEj2kIqfaClPB2dLomx3.iYo6RO1IIRg-1746019135-1.2.1.1-2CX..." \
        -user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64)..."

Β 

πŸ•΅οΈ Record Private Shows

  1. Login Chaturbate in your browser.

  2. DevTools (F12) β†’ Application β†’ Cookies β†’ https://chaturbate.com β†’ Copy the sessionid value

  3. Run with -cookies:

    $ ./chatubrate-dvr -u yamiodymel -cookies "sessionid=PASTE_YOUR_SESSIONID_HERE"

Β 

πŸ“„ Filename Pattern

The format is based on Go Template Syntax, available variables are:

{{.Username}}, {{.Year}}, {{.Month}}, {{.Day}}, {{.Hour}}, {{.Minute}}, {{.Second}}, {{.Sequence}}

Β 

Default it hides the sequence if it's zero.

Pattern: {{.Username}}_{{.Year}}-{{.Month}}-{{.Day}}_{{.Hour}}-{{.Minute}}-{{.Second}}{{if .Sequence}}_{{.Sequence}}{{end}}
 Output: yamiodymel_2024-01-02_13-45-00.ts    # Sequence won't be shown if it's zero.
 Output: yamiodymel_2024-01-02_13-45-00_1.ts

πŸ‘€ or... The sequence can be shown even if it's zero.

Pattern: {{.Username}}_{{.Year}}-{{.Month}}-{{.Day}}_{{.Hour}}-{{.Minute}}-{{.Second}}_{{.Sequence}}
 Output: yamiodymel_2024-01-02_13-45-00_0.ts
 Output: yamiodymel_2024-01-02_13-45-00_1.ts

πŸ“ or... Folder per each channel.

Pattern: video/{{.Username}}/{{.Year}}-{{.Month}}-{{.Day}}_{{.Hour}}-{{.Minute}}-{{.Second}}_{{.Sequence}}
 Output: video/yamiodymel/2024-01-02_13-45-00_0.ts

Note: Files are saved in .ts format, and this is not configurable.

Β 

πŸ€” Frequently Asked Questions

Q: The program closes immediately on Windows.

Open it via Command Prompt, the error message should appear. If needed, create an issue.

Β 

Q: Error listen tcp :8080: bind: An attempt was... by its access permissions

The port 8080 is in use. Try another port with -p 8123, then visit http://localhost:8123.

If that fails, run Command Prompt as Administrator and execute:

$ net stop winnat
$ net start winnat

Β 

Q: Error A connection attempt failed... host has failed to respond

Likely a network issue (e.g., VPN, firewall, or blocked by Chaturbate). This cannot be fixed by the program.

Β 

Q: Error Channel was blocked by Cloudflare

You've been temporarily blocked. See the Cookies & User-Agent section to bypass.

Β 

Q: Is Proxy or SOCKS5 supported?

Yes. You can launch the program using the HTTPS_PROXY environment variable:

$ HTTPS_PROXY="socks5://127.0.0.1:9050" ./chaturbate-dvr -u CHANNEL_USERNAME

About

😎 Chaturbate DVR - auto records the stream when it goes online!

Topics

Resources

License

Stars

Watchers

Forks

0