Go语言开源项目 支持多种直播平台的直播录制工具Bililive-go

Bililive-go是一个支持多种直播平台的直播录制工具

预览

站点url支持情况cookie
Acfun直播live.acfun.cnY
哔哩哔哩直播live.bilibili.comYY
战旗直播www.zhanqi.tvY
斗鱼直播www.douyu.comY
火猫直播www.huomao.comY
龙珠直播longzhu.comY
虎牙直播www.huya.comY
CC直播cc.163.comY
一直播www.yizhibo.comY
OPENRECwww.openrec.tvY
企鹅电竞egame.qq.comY
浪liveplay.lang.live & www.lang.liveY
花椒www.huajiao.comY
抖音直播live.douyin.comYY
猫耳fm.missevan.comY
克拉克拉www.hongdoufm.comY
YY直播www.yy.comY
微博直播weibo.comY

cookie 在 config.yml 中的设置方法

cookie的设置以域名为单位。比如想在录制抖音直播时使用 cookie,那么 config.yml 中可以像下面这样写:

cookies:
  live.douyin.com: __ac_nonce=123456789012345678903;name=value

这里 name 和 value 只是随便举的例子,用来说明当添加超过一条 cookie 的键值对时应该用分号隔开。
至于具体应该添加哪些键,就需要用户针对不同网站自己获取了。

在网页中修改设置

点击网页左边的 设置 可以在线修改项目的配置文件,之后点击页面下面的 保存设置 按钮保存设置。
如果保存后窗口提醒设置保存成功,那就是配置文件已经被写入磁盘了。如果是保存失败,那可能是配置文件格式问题或者遇到程序 bug,总之磁盘上的配置文件没变。

在网页中即使保存配置成功也不一定表示相应的配置会立即生效。
有些配置需要停止监控后再重新开始监控才会生效,有些配置也许要重启程序才会生效。

安装教程

windows安装

Step 1: 获取ffmpeg
FFmpeg Builds下载压缩包,将其中bin/ffmpeg.exe解压出来备用

Step 2: 下载Bililive-go
打开Bililive-go Releases

  • 32位系统下载bililive-windows-386.zip,并解压
  • 64位系统下载bililive-windows-amd64.zip,并解压

之后将ffmpeg.exe复制到和bililive-go同一目录下

Step 3: 运行
双击 bililive-windows-amd64.exe 执行将使用和 exe 文件在同一目录下的 config.yml 文件作为默认配置文件启动程序。

也可以执行

./bililive-windows-amd64 -c ./config.yml

使用指定的配置文件来启动

macOS运行

Step 1: 获取ffmpeg
macOS下推荐使用brew来安装ffmpeg

  • 安装brew
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • 安装ffmpeg
    brew install ffmpeg

Step 2: 下载Bililive-go
打开Bililive-go Releases,选择bililive-go-darwin-amd64.7zbililive-darwin-arm64.tar.gz下载并解压

Step 3: 运行
双击 bililive-linux-amd64 执行将使用和程序在同一目录下的 config.yml 文件作为默认配置文件启动程序。
也可以执行

./bililive-linux-amd64 -c ./config.yml

使用指定的配置文件来启动

docker运行

使用https://hub.docker.com/r/chigusa/bililive-go镜像创建容器运行。

例如:

docker run --restart=always -v ~/config.yml:/etc/bililive-go/config.yml -v ~/Videos:/srv/bililive -p 8080:8080 -d chigusa/bililive-go

docker compose

使用项目根目录下的 docker-compose.yml 配置文件启动 docker compose 运行。

例如:

docker compose up

此时默认使用 config.docker.yml 文件作为程序的配置文件,Videos/ 目录作为录制视频的输出目录。

Linux下的就不讲了,用的少...咱不折腾

项目开源地址:https://github.com/hr3lxphr6j/bililive-go

标签: Go

相关文章

在 Go 项目中使用 LevelDB 进行数据存储

LevelDB 是一个由 Google 开发的高性能键值存储库,广泛应用于需要快速读写操作的场景。本文将介绍如何在 Go 项目中使用 LevelDB 作为数据存储,并通过示例代码展示如何初始化数...

详解Go语言依赖注入工具wire最佳实践介绍与使用

wire是一个强大的依赖注入工具,通过代码生成的方式实现了高效的依赖注入。本文详细介绍了wire的入门级和高级使用技巧,并通过示例代码展示了其强大的功能。无论是简单的依赖注入,还是复杂的依赖图生...

Go语言中copy命令讲解 切片之间复制元素

在Go语言中,copy函数是一个非常常用的内置函数,用于在切片(slice)之间复制元素。理解copy函数的用法和机制对于高效处理数据操作至关重要1. copy函数的基本用法copy函数的基本语...

深入理解 Go 语言中的 goto:用法与最佳实践

在学习编程语言时,goto 一直是一个颇具争议的概念。它常常因为“跳跃式”的行为被认为会让代码混乱且难以维护,但在 Go 语言中,goto 被保留并提供了一些实际的应用场景。今天我们将深入探讨 ...

Go并发编程与调度器及并发模式详解

Go语言以其简洁的语法和强大的并发能力,成为现代网络编程和微服务架构的热门选择。本文将深入探讨Go的并发编程模型,调度器的工作机制,以及多种并发模式的实现和应用,帮助开发者更好地理解并发编程的设...

Go语言中sync.Pool详解

sync.Pool 是 Go 语言标准库中的一个数据结构,用于提供高效的对象池。它的主要作用是缓存临时对象,以减少内存分配和垃圾回收的开销。sync.Pool 特别适合用于存储短生命周期的对象,...

图片Base64编码

CSR生成

图片无损放大

图片占位符

Excel拆分文件