录制支持追加模式,并优化文档

This commit is contained in:
杨树海
2022-01-30 22:18:03 +08:00
parent 096b69ad9b
commit 33744e31ed
2 changed files with 16 additions and 7 deletions

View File

@@ -4,13 +4,18 @@ record plugin for monibuca
实现了录制Flv文件的功能并且支持再次使用录制好的Flv文件作为发布者进行发布。 实现了录制Flv文件的功能并且支持再次使用录制好的Flv文件作为发布者进行发布。
## 默认配置 ## 默认配置
配置中的Path 表示要保存的Flv文件的根路径可以使用相对路径或者绝对路径
```toml ```toml
[Record] [Record]
Path = "" Path = "resource/[appName]/[streamName]"
AutoRecord = false AutoRecord = false
AppendFlv = false
``` ```
- `Path` 表示要保存的Flv文件的根路径可以使用相对路径或者绝对路径默认为流路径
- `AutoRecord` 是否自动开启录制
- `AppendFlv` 当存在历史录制文件时,是否追加写入,如果不存在历史录制文件,则总是新创建文件
## API ## API
- `/api/record/flv/list` 罗列所有录制的flv文件 - `/api/record/flv/list` 罗列所有录制的flv文件

View File

@@ -17,6 +17,7 @@ import (
var config struct { var config struct {
Path string Path string
AutoRecord bool AutoRecord bool
AppendFlv bool
} }
var recordings sync.Map var recordings sync.Map
@@ -46,6 +47,9 @@ func init() {
"AutoRecord": func(v interface{}) { "AutoRecord": func(v interface{}) {
config.AutoRecord = v.(bool) config.AutoRecord = v.(bool)
}, },
"AppendFlv": func(v interface{}) {
config.AppendFlv = v.(bool)
},
}, },
} }
pc.Install(run) pc.Install(run)
@@ -128,7 +132,7 @@ func run() {
func onPublish(p *Stream) { func onPublish(p *Stream) {
if config.AutoRecord || (ExtraConfig.AutoRecordFilter != nil && ExtraConfig.AutoRecordFilter(p.StreamPath)) { if config.AutoRecord || (ExtraConfig.AutoRecordFilter != nil && ExtraConfig.AutoRecordFilter(p.StreamPath)) {
SaveFlv(p.StreamPath, false) SaveFlv(p.StreamPath, config.AppendFlv)
} }
} }