's'
This commit is contained in:
2
d2ypp2/config/URL_config.ini
Normal file
2
d2ypp2/config/URL_config.ini
Normal file
@@ -0,0 +1,2 @@
|
||||
# 每行一条源站直播页 URL(如抖音直播间),由控制台保存或手工编辑
|
||||
# 部署后请删除本注释并填入实际地址,或仅在 Web 控制台「直播地址列表」中填写
|
||||
131
d2ypp2/config/config.ini
Normal file
131
d2ypp2/config/config.ini
Normal file
@@ -0,0 +1,131 @@
|
||||
[录制设置]
|
||||
language(zh_cn/en) = zh_cn
|
||||
是否跳过代理检测(是/否) = 是
|
||||
直播保存路径(不填则默认) =
|
||||
保存文件夹是否以作者区分 = 否
|
||||
保存文件夹是否以时间区分 = 否
|
||||
保存文件夹是否以标题区分 = 否
|
||||
保存文件名是否包含标题 = 否
|
||||
是否去除名称中的表情符号 = 是
|
||||
视频保存格式ts|mkv|flv|mp4|mp3音频|m4a音频 = ts
|
||||
原画|超清|高清|标清|流畅 = 原画
|
||||
是否使用代理ip(是/否) = 否
|
||||
代理地址 =
|
||||
同一时间访问网络的线程数 = 3
|
||||
循环时间(秒) = 300
|
||||
排队读取网址时间(秒) = 0
|
||||
是否显示循环秒数 = 否
|
||||
是否显示直播源地址 = 是
|
||||
分段录制是否开启 = 是
|
||||
是否强制启用https录制 = 否
|
||||
录制空间剩余阈值(gb) = 1.0
|
||||
视频分段时间(秒) = 1800
|
||||
录制完成后自动转为mp4格式 = 否
|
||||
mp4格式重新编码为h264 = 否
|
||||
追加格式后删除原文件 = 是
|
||||
生成时间字幕文件 = 否
|
||||
是否录制完成后执行自定义脚本 = 否
|
||||
自定义脚本执行命令 =
|
||||
使用代理录制的平台(逗号分隔) = tiktok, sooplive, pandalive, winktv, flextv, popkontv, twitch, liveme, showroom, chzzk, shopee, shp, youtu
|
||||
额外使用代理录制的平台(逗号分隔) =
|
||||
|
||||
[推送配置]
|
||||
# 可选微信|钉钉|tg|邮箱|bark|ntfy|pushplus 可填多个
|
||||
直播状态推送渠道 =
|
||||
钉钉推送接口链接 =
|
||||
微信推送接口链接 =
|
||||
bark推送接口链接 =
|
||||
bark推送中断级别 = active
|
||||
bark推送铃声 =
|
||||
钉钉通知@对象(填手机号) =
|
||||
钉钉通知@全体(是/否) = 否
|
||||
tgapi令牌 =
|
||||
tg聊天id(个人或者群组id) =
|
||||
smtp邮件服务器 =
|
||||
是否使用SMTP服务SSL加密(是/否) =
|
||||
SMTP邮件服务器端口 =
|
||||
邮箱登录账号 =
|
||||
发件人密码(授权码) =
|
||||
发件人邮箱 =
|
||||
发件人显示昵称 =
|
||||
收件人邮箱 =
|
||||
ntfy推送地址 =
|
||||
ntfy推送标签 = tada
|
||||
ntfy推送邮箱 =
|
||||
pushplus推送token =
|
||||
自定义推送标题 =
|
||||
自定义开播推送内容 =
|
||||
自定义关播推送内容 =
|
||||
只推送通知不录制(是/否) = 否
|
||||
直播推送检测频率(秒) = 1800
|
||||
开播推送开启(是/否) = 是
|
||||
关播推送开启(是/否)= 否
|
||||
|
||||
[Cookie]
|
||||
# 录制抖音必填
|
||||
抖音cookie = ttwid=1%7CB1qls3GdnZhUov9o2NxOMxxYS2ff6OSvEWbv0ytbES4%7C1680522049%7C280d802d6d478e3e78d0c807f7c487e7ffec0ae4e5fdd6a0fe74c3c6af149511; my_rd=1; passport_csrf_token=3ab34460fa656183fccfb904b16ff742; passport_csrf_token_default=3ab34460fa656183fccfb904b16ff742; d_ticket=9f562383ac0547d0b561904513229d76c9c21; n_mh=hvnJEQ4Q5eiH74-84kTFUyv4VK8xtSrpRZG1AhCeFNI; store-region=cn-fj; store-region-src=uid; LOGIN_STATUS=1; __security_server_data_status=1; FORCE_LOGIN=%7B%22videoConsumedRemainSeconds%22%3A180%7D; pwa2=%223%7C0%7C3%7C0%22; download_guide=%223%2F20230729%2F0%22; volume_info=%7B%22isUserMute%22%3Afalse%2C%22isMute%22%3Afalse%2C%22volume%22%3A0.6%7D; strategyABtestKey=%221690824679.923%22; stream_recommend_feed_params=%22%7B%5C%22cookie_enabled%5C%22%3Atrue%2C%5C%22screen_width%5C%22%3A1536%2C%5C%22screen_height%5C%22%3A864%2C%5C%22browser_online%5C%22%3Atrue%2C%5C%22cpu_core_num%5C%22%3A8%2C%5C%22device_memory%5C%22%3A8%2C%5C%22downlink%5C%22%3A10%2C%5C%22effective_type%5C%22%3A%5C%224g%5C%22%2C%5C%22round_trip_time%5C%22%3A150%7D%22; VIDEO_FILTER_MEMO_SELECT=%7B%22expireTime%22%3A1691443863751%2C%22type%22%3Anull%7D; home_can_add_dy_2_desktop=%221%22; __live_version__=%221.1.1.2169%22; device_web_cpu_core=8; device_web_memory_size=8; xgplayer_user_id=346045893336; csrf_session_id=2e00356b5cd8544d17a0e66484946f28; odin_tt=724eb4dd23bc6ffaed9a1571ac4c757ef597768a70c75fef695b95845b7ffcd8b1524278c2ac31c2587996d058e03414595f0a4e856c53bd0d5e5f56dc6d82e24004dc77773e6b83ced6f80f1bb70627; __ac_nonce=064caded4009deafd8b89; __ac_signature=_02B4Z6wo00f01HLUuwwAAIDBh6tRkVLvBQBy9L-AAHiHf7; ttcid=2e9619ebbb8449eaa3d5a42d8ce88ec835; webcast_leading_last_show_time=1691016922379; webcast_leading_total_show_times=1; webcast_local_quality=sd; live_can_add_dy_2_desktop=%221%22; msToken=1JDHnVPw_9yTvzIrwb7cQj8dCMNOoesXbA_IooV8cezcOdpe4pzusZE7NB7tZn9TBXPr0ylxmv-KMs5rqbNUBHP4P7VBFUu0ZAht_BEylqrLpzgt3y5ne_38hXDOX8o=; msToken=jV_yeN1IQKUd9PlNtpL7k5vthGKcHo0dEh_QPUQhr8G3cuYv-Jbb4NnIxGDmhVOkZOCSihNpA2kvYtHiTW25XNNX_yrsv5FN8O6zm3qmCIXcEe0LywLn7oBO2gITEeg=; tt_scid=mYfqpfbDjqXrIGJuQ7q-DlQJfUSG51qG.KUdzztuGP83OjuVLXnQHjsz-BRHRJu4e986
|
||||
快手cookie =
|
||||
tiktok_cookie =
|
||||
虎牙cookie =
|
||||
斗鱼cookie =
|
||||
yy_cookie =
|
||||
b站cookie =
|
||||
小红书cookie =
|
||||
bigo_cookie =
|
||||
blued_cookie =
|
||||
sooplive_cookie =
|
||||
netease_cookie =
|
||||
千度热播_cookie =
|
||||
pandatv_cookie =
|
||||
猫耳fm_cookie =
|
||||
winktv_cookie =
|
||||
flextv_cookie =
|
||||
look_cookie =
|
||||
twitcasting_cookie =
|
||||
baidu_cookie =
|
||||
weibo_cookie =
|
||||
kugou_cookie =
|
||||
twitch_cookie =
|
||||
liveme_cookie =
|
||||
huajiao_cookie =
|
||||
liuxing_cookie =
|
||||
showroom_cookie =
|
||||
acfun_cookie =
|
||||
changliao_cookie =
|
||||
yinbo_cookie =
|
||||
yingke_cookie =
|
||||
zhihu_cookie =
|
||||
chzzk_cookie =
|
||||
haixiu_cookie =
|
||||
vvxqiu_cookie =
|
||||
17live_cookie =
|
||||
langlive_cookie =
|
||||
pplive_cookie =
|
||||
6room_cookie =
|
||||
lehaitv_cookie =
|
||||
huamao_cookie =
|
||||
shopee_cookie =
|
||||
youtube_cookie =
|
||||
taobao_cookie =
|
||||
jd_cookie =
|
||||
faceit_cookie =
|
||||
migu_cookie =
|
||||
lianjie_cookie =
|
||||
laixiu_cookie =
|
||||
picarto_cookie =
|
||||
|
||||
|
||||
[Authorization]
|
||||
popkontv_token =
|
||||
|
||||
[账号密码]
|
||||
sooplive账号 =
|
||||
sooplive密码 =
|
||||
flextv账号 =
|
||||
flextv密码 =
|
||||
popkontv账号 =
|
||||
partner_code = P-00001
|
||||
popkontv密码 =
|
||||
twitcasting账号类型 = normal
|
||||
twitcasting账号 =
|
||||
twitcasting密码 =
|
||||
5
d2ypp2/config/easytier_network.json
Normal file
5
d2ypp2/config/easytier_network.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"networkName": "",
|
||||
"networkSecret": "",
|
||||
"peerUrls": []
|
||||
}
|
||||
10
d2ypp2/config/google_oauth.json
Normal file
10
d2ypp2/config/google_oauth.json
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"redirect_uri": "http://127.0.0.1:8001/youtube/oauth/callback",
|
||||
"web": {
|
||||
"client_id": "",
|
||||
"client_secret": "",
|
||||
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
|
||||
"token_uri": "https://oauth2.googleapis.com/token",
|
||||
"redirect_uris": ["http://127.0.0.1:8001/youtube/oauth/callback"]
|
||||
}
|
||||
}
|
||||
14
d2ypp2/config/hardware.env.example
Normal file
14
d2ypp2/config/hardware.env.example
Normal file
@@ -0,0 +1,14 @@
|
||||
# 复制为 config/hardware.env 或安装后由 scripts/hardware_probe.py --write 生成
|
||||
# 抖音→YouTube 推流(douyin_youtube_ffplay.py)在 Linux 上会读取本文件中的 LIVE_VIDEO_ENCODER。
|
||||
#
|
||||
# —— ARM(RK3588 等)常见:h264_rkmpp(需 /dev/mpp_service 与 ffmpeg 含 rkmpp)
|
||||
# —— ARM 通用 V4L2:h264_v4l2m2m
|
||||
# —— x86_64 Intel/AMD 核显(VA-API):h264_vaapi(需 /dev/dri render 节点)
|
||||
# —— x86_64 Intel Quick Sync:h264_qsv(需 ffmpeg 编译带 libmfx/oneVPL)
|
||||
# —— NVIDIA:一般无需写此处,推流脚本会自行检测 nvidia-smi + h264_nvenc
|
||||
#
|
||||
# LIVE_VIDEO_ENCODER=h264_v4l2m2m
|
||||
# LIVE_HW_DECODER=cpu
|
||||
# LIVE_HDMI_PLAYER=mpv-drm
|
||||
# LIVE_BROWSER_HWACCEL=auto
|
||||
# LIVE_STABILITY_MODE=safe
|
||||
18
d2ypp2/config/runtime.env.example
Normal file
18
d2ypp2/config/runtime.env.example
Normal file
@@ -0,0 +1,18 @@
|
||||
# 复制本文件为同目录下的 runtime.env 后生效(已加入 .gitignore,不会提交)
|
||||
# 启动器 scripts/launch.py 会自动加载 runtime.env 中的键(不覆盖已存在的环境变量)
|
||||
|
||||
# 局域网内任意浏览器访问控制台时,请保持 0.0.0.0
|
||||
HOST=0.0.0.0
|
||||
|
||||
# Web 控制台(FastAPI + 静态页)端口;与同机 SRS / Clash / Neko 等冲突时请改成未占用端口,例如 8101、9200
|
||||
# 若 Nginx/Caddy 反代出现 502,请核对 proxy_pass 端口与这里一致(Docker Compose 默认常为 8101,PM2 ecosystem 默认 8001)
|
||||
PORT=8001
|
||||
|
||||
# 开发模式时 Next 端口(一般无需改)
|
||||
# NEXT_DEV_PORT=3000
|
||||
|
||||
# scrcpy-server 自动下载(安卓 Web 真流):默认同版本走 GitHub;内网可镜像后设下列之一(支持 {tag} / {version})
|
||||
# SCRCPY_SERVER_DOWNLOAD_URL=https://你的镜像/scrcpy-server-v{tag}
|
||||
# SCRCPY_SERVER_DOWNLOAD_URLS=https://a/v{tag},https://b/v{tag}
|
||||
# SCRCPY_SERVER_DOWNLOAD_NO_GITHUB=1
|
||||
# SKIP_SCRCPY_SERVER_FETCH=1
|
||||
159
d2ypp2/config/system-stack.env.example
Normal file
159
d2ypp2/config/system-stack.env.example
Normal file
@@ -0,0 +1,159 @@
|
||||
# Copy to config/system-stack.env before first Linux deployment when you need custom values.
|
||||
# Profile model:
|
||||
# - install-hub.sh: base Linux super hub, web admin, ShellCrash, monitoring, beginner tools
|
||||
# - install-business.sh: Douyin / YouTube / HDMI business module only
|
||||
# - install-all.sh: hub first, then business module
|
||||
|
||||
# LAN identity
|
||||
HOSTNAME_ALIAS=live
|
||||
|
||||
# Shared control plane
|
||||
PORT=8001
|
||||
|
||||
# Caddy 将 :80 反代到 PORT(http://live.local 无端口验收)
|
||||
ENABLE_LIVE_EDGE_PROXY=1
|
||||
|
||||
# Hub web services
|
||||
WEBTTY_PORT=7681
|
||||
# 默认 3080,避免与 Caddy 占用 80(live.local 无端口访问控制台)
|
||||
HOMEPAGE_PORT=3080
|
||||
FILEBROWSER_PORT=8082
|
||||
NETDATA_PORT=19999
|
||||
|
||||
# Business streaming services
|
||||
SRS_HTTP_PORT=8080
|
||||
SRS_API_PORT=1985
|
||||
SRS_RTMP_PORT=1935
|
||||
SRS_SRT_PORT=10080
|
||||
SRS_WEBRTC_PORT=8088
|
||||
SRS_WEBRTC_UDP_PORT=8000
|
||||
|
||||
# ShellCrash
|
||||
SHELLCRASH_DIR=/etc/ShellCrash
|
||||
|
||||
# Browser / Android lab
|
||||
BROWSER_PROFILE_DIR=/var/lib/live-browser/profile
|
||||
BROWSER_START_URL=https://www.tiktok.com/live
|
||||
BROWSER_REMOTE_DEBUG_PORT=9222
|
||||
BROWSER_LOCALE=zh-CN
|
||||
|
||||
# WebTTY credentials
|
||||
WEBTTY_USER=live
|
||||
WEBTTY_PASS=12345678
|
||||
|
||||
# File Browser credentials
|
||||
FILEBROWSER_USER=live
|
||||
FILEBROWSER_PASS=12345678
|
||||
|
||||
# Wi-Fi onboarding
|
||||
WIFI_CONNECTION_NAME=live-wifi
|
||||
WIFI_SSID=live
|
||||
WIFI_PSK=12345678
|
||||
DISABLE_IPV6=1
|
||||
|
||||
# ws-scrcpy 克隆地址(可改为 NetrisTV 上游:https://github.com/NetrisTV/ws-scrcpy.git)
|
||||
# ANDROID_PANEL_GIT_URL=https://github.com/baixin1228/web-scrcpy.git
|
||||
|
||||
# 可选:Docker Neko 浏览器桌面(m1k1o/neko),与 SRS 8080 错开端口
|
||||
# 策略/启动参数对齐 x86 参考机:油猴强制安装、扩展白名单、用户数据持久化目录见 NEKO_PROFILE_HOST_DIR
|
||||
# WebRTC 画面:NEKO_WEBRTC_NAT1TO1 必须为本机在局域网中的 IP(如 192.168.x.x),与参考机填网关 IP 同理
|
||||
# 设为 1 才会安装/启动 Neko 容器;不需要浏览器桌面可改回 0
|
||||
ENABLE_NEKO=1
|
||||
NEKO_HTTP_PORT=9200
|
||||
NEKO_HTTP_PORT_1=9200
|
||||
NEKO_HTTP_PORT_2=9201
|
||||
NEKO_HTTP_PORT_3=9202
|
||||
NEKO_START_URL=https://accounts.google.com/ServiceLogin?continue=https://www.youtube.com/
|
||||
NEKO_IMAGE_X86=ghcr.io/m1k1o/neko/google-chrome:3.0.0
|
||||
NEKO_IMAGE_ARM64=ghcr.io/m1k1o/neko/chromium:3.0.0
|
||||
# Neko 浏览器登录:用户名为 live / admin,口令与全站策略一致(默认 12345678)
|
||||
NEKO_USER_PASS=12345678
|
||||
NEKO_ADMIN_PASS=12345678
|
||||
# 持久化 Chromium 配置(油猴、YouTube 登录、脚本);可从参考机 rsync 整个目录覆盖以迁移
|
||||
NEKO_PROFILE_HOST_DIR=
|
||||
NEKO_SHM_SIZE=2gb
|
||||
NEKO_DESKTOP_SCREEN=1920x1080@30
|
||||
NEKO_WEBRTC_EPR=52000-52099
|
||||
NEKO_WEBRTC_EPR_1=52000-52099
|
||||
NEKO_WEBRTC_EPR_2=52101-52199
|
||||
NEKO_WEBRTC_EPR_3=52201-52299
|
||||
NEKO_WEBRTC_UDP_RANGE=52000-52099
|
||||
NEKO_WEBRTC_UDP_RANGE_1=52000-52099
|
||||
NEKO_WEBRTC_UDP_RANGE_2=52101-52199
|
||||
NEKO_WEBRTC_UDP_RANGE_3=52201-52299
|
||||
NEKO_WEBRTC_ICELITE=0
|
||||
NEKO_WEBRTC_TCPMUX=52300
|
||||
NEKO_WEBRTC_TCPMUX_1=52300
|
||||
NEKO_WEBRTC_TCPMUX_2=52301
|
||||
NEKO_WEBRTC_TCPMUX_3=52302
|
||||
NEKO_WEBRTC_UDPMUX=52300
|
||||
NEKO_WEBRTC_UDPMUX_1=52300
|
||||
NEKO_WEBRTC_UDPMUX_2=52301
|
||||
NEKO_WEBRTC_UDPMUX_3=52302
|
||||
NEKO_WEBRTC_NAT1TO1=
|
||||
NEKO_PLUGINS_ENABLED=true
|
||||
|
||||
# Redroid Android 13
|
||||
ENABLE_REDROID=1
|
||||
REDROID_DEFAULT_PORT=5555
|
||||
REDROID_PORT_STEP=1
|
||||
REDROID_INSTANCE_PREFIX=redroid13
|
||||
REDROID_DEFAULT_COUNT=1
|
||||
REDROID_DATA_PREFIX=/var/lib/live-redroid
|
||||
REDROID_GPU_MODE=guest
|
||||
REDROID_DEVICE_PROFILE=pixel-7-pro
|
||||
REDROID_ADB_INSECURE=1
|
||||
REDROID_BOOT_ARGS="androidboot.redroid_magisk=1 androidboot.redroid_gpu_mode=guest"
|
||||
REDROID_EXPECT_GMS=1
|
||||
REDROID_EXPECT_MAGISK=1
|
||||
REDROID_WEB_CONSOLE_PORT=9010
|
||||
REDROID_IMAGE_X86=fahaddz/redroid:13
|
||||
REDROID_IMAGE_X86_ALT=fahaddz/redroid:13
|
||||
REDROID_IMAGE_ARM64=fahaddz/redroid:13-arm-pi5
|
||||
REDROID_IMAGE_ARM64_ALT=fahaddz/redroid:13-arm-pi5
|
||||
|
||||
# Android gateway mode(仅双网口直连安卓板时需要;单网口留空 ANDROID_DOWNLINK_IF 即可,控制台为「跳过」)
|
||||
ANDROID_GATEWAY_NAME=live-android-gateway
|
||||
ANDROID_UPLINK_IF=eth0
|
||||
ANDROID_DOWNLINK_IF=
|
||||
ANDROID_GATEWAY_CIDR=192.168.51.1/24
|
||||
ANDROID_PANEL_PORT=5000
|
||||
ANDROID_PANEL_DIR=/opt/live-modules/web-scrcpy
|
||||
ANDROID_PANEL_VIDEO_BIT_RATE=1024000
|
||||
|
||||
# Optional modules
|
||||
# Shared
|
||||
ENABLE_SHELLCRASH=1
|
||||
ENABLE_WEBTTY=1
|
||||
ENABLE_BROWSER=1
|
||||
ENABLE_MDNS=1
|
||||
ENABLE_WIFI_PROFILE=1
|
||||
ENABLE_ANDROID_PANEL=1
|
||||
# Hub profile defaults
|
||||
ENABLE_COCKPIT=1
|
||||
ENABLE_FILEBROWSER=1
|
||||
ENABLE_HOMEPAGE=1
|
||||
ENABLE_NETDATA=1
|
||||
ENABLE_MITMPROXY=1
|
||||
MITMPROXY_WEB_PORT=8086
|
||||
MITMPROXY_PROXY_PORT=8087
|
||||
ENABLE_VSCODE_SERVER=1
|
||||
VSCODE_SERVER_PORT=8440
|
||||
VSCODE_SERVER_PASSWORD=12345678
|
||||
ENABLE_UPTIME_KUMA=1
|
||||
UPTIME_KUMA_PORT=3001
|
||||
ENABLE_PULSEAUDIO=1
|
||||
PULSEAUDIO_TCP_PORT=4713
|
||||
ENABLE_KMSCUBE=1
|
||||
KMSCUBE_AUTOSTART=0
|
||||
KMSCUBE_DRM_DEVICE=/dev/dri/card0
|
||||
ENABLE_OPENCLAW=1
|
||||
OPENCLAW_IMAGE=ghcr.io/openclaw/openclaw:latest
|
||||
OPENCLAW_GATEWAY_PORT=18789
|
||||
OPENCLAW_BRIDGE_PORT=18790
|
||||
OPENCLAW_GATEWAY_TOKEN=12345678
|
||||
OPENCLAW_ALLOW_INSECURE_PRIVATE_WS=1
|
||||
OPENCLAW_CONFIG_DIR=/var/lib/live-openclaw/config
|
||||
OPENCLAW_WORKSPACE_DIR=/var/lib/live-openclaw/workspace
|
||||
# Business profile defaults
|
||||
ENABLE_SRS=1
|
||||
0
d2ypp2/config/web2_api_token.txt
Normal file
0
d2ypp2/config/web2_api_token.txt
Normal file
1
d2ypp2/config/web2_bind_host.txt
Normal file
1
d2ypp2/config/web2_bind_host.txt
Normal file
@@ -0,0 +1 @@
|
||||
0.0.0.0
|
||||
12
d2ypp2/config/youtube.ini
Normal file
12
d2ypp2/config/youtube.ini
Normal file
@@ -0,0 +1,12 @@
|
||||
[youtube]
|
||||
# 必填:YouTube 直播推流 key(在 YouTube 工作室 → 创建 → 流式传输 获取)
|
||||
key =
|
||||
|
||||
# 可选:是否使用 RTMPS 加密推流,填 否 则用 RTMP(默认 RTMPS)
|
||||
; rtmps = 否
|
||||
|
||||
# 可选:视频比特率 kbps,YouTube 推荐 2500,可填 3000-4500 提高画质
|
||||
; bitrate = 2500
|
||||
|
||||
# 可选:软编 speed 长期小于 1 时开启——轻量音频链(无 arnndn/长 EQ),减轻 CPU。填 1 或 是
|
||||
; fast_audio = 1
|
||||
Reference in New Issue
Block a user