mirror of
https://github.com/langhuihui/monibuca.git
synced 2025-12-24 13:48:04 +08:00
Compare commits
8 Commits
v4.0.0-bet
...
v4.0.0-bet
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9d08fa47b3 | ||
|
|
9b6e9bfbec | ||
|
|
a18fc77b8b | ||
|
|
edd7a6f047 | ||
|
|
9ec70f0454 | ||
|
|
6ca479371e | ||
|
|
f65bd3a760 | ||
|
|
91a9171c5c |
2
.github/workflows/go.yml
vendored
2
.github/workflows/go.yml
vendored
@@ -33,7 +33,7 @@ jobs:
|
||||
uses: goreleaser/goreleaser-action@v2
|
||||
if: success() && startsWith(github.ref, 'refs/tags/')
|
||||
with:
|
||||
version: latest
|
||||
version: v1.8.3
|
||||
args: release --rm-dist
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
92
config.toml
92
config.toml
@@ -1,92 +0,0 @@
|
||||
[Engine]
|
||||
EnableAudio = true
|
||||
EnableVideo = true
|
||||
# 发布流默认过期时间单位秒
|
||||
PublishTimeout = 60
|
||||
# 自动关闭触发后延迟的秒数(期间内如果有新的订阅则取消触发关闭)
|
||||
AutoCloseDelay = 10
|
||||
# RTP包乱序重排
|
||||
RTPReorder = false
|
||||
[Summary]
|
||||
# 1秒中采样一次
|
||||
SampleRate = 1
|
||||
[RTMP]
|
||||
ListenAddr = ":1935"
|
||||
[GateWay]
|
||||
ListenAddr = ":8081"
|
||||
ListenAddrTLS = ":8082"
|
||||
CertFile = "server.pem"
|
||||
KeyFile = "server.key"
|
||||
[Jessica]
|
||||
#ListenAddr = ":8081"
|
||||
#ListenAddrTLS = ":8083"
|
||||
#CertFile = "xxx.cert"
|
||||
#KeyFile = "xxx.key"
|
||||
[LogRotate]
|
||||
# 日志存储目录相对或绝对
|
||||
Path = "logs"
|
||||
# 日志是否按大小分割,0表示不按大小分割,非零代表按该大小字节进行分割
|
||||
Size = 0
|
||||
Days = 1
|
||||
# 按照go layout格式化,默认按照小时
|
||||
Formatter = "2006-01-02T15"
|
||||
# [FFMPEG]
|
||||
[HLS]
|
||||
# 是否开启写磁盘,开启后侦测到发布流就会开始写TS文件
|
||||
EnableWrite = false
|
||||
# 是否打开内存模式,在内存中保留TS数据,方便直接读取
|
||||
EnableMemory = false
|
||||
# 分片大小 单位秒
|
||||
Fragment = 10
|
||||
# 窗口数里,代表一个m3u8文件里面有几个ts
|
||||
Window = 2
|
||||
# ts文件存放目录,m3u8会存放在上一级
|
||||
Path = "resource"
|
||||
[HDL]
|
||||
#ListenAddr = ":2020"
|
||||
#ListenAddrTLS = ":2021"
|
||||
#CertFile = "xxx.cert"
|
||||
#KeyFile = "xxx.key"
|
||||
#Reconnect = true
|
||||
[HDL.AutoPullList]
|
||||
# "live/hdl" = "http://flv.bdplay.nodemedia.cn/live/bbb.flv"
|
||||
[TS]
|
||||
# ts存放目录
|
||||
Path = "resource"
|
||||
[Record]
|
||||
Path = "resource"
|
||||
# 自动录制功能
|
||||
AutoRecord = false
|
||||
[RTSP]
|
||||
# 端口接收推流
|
||||
ListenAddr = ":554"
|
||||
Reconnect = true
|
||||
#启动后自动拉流,可以配置多个
|
||||
[RTSP.AutoPullList]
|
||||
# "live/rtsp" = "rtsp://114.116.215.52:38558/sub/3"
|
||||
"live/rtsp" = "rtsp://admin:MOMA2021@47.94.226.17/Streaming/Channels/201?transportmode=unicast"
|
||||
# "live/rtc" = "rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mp4"
|
||||
# "live/rtsp" = "rtsp://admin:123456@42.193.7.166:9018/video1"
|
||||
[WebRTC]
|
||||
# 端口范围不配置的话是自动分配
|
||||
# PortMin = 30000
|
||||
# PortMax = 40000
|
||||
# 公网访问必须配置PublicIP,否则无法建立连接
|
||||
# PublicIP = ["192.168.1.120"]
|
||||
# WebRTC 推流时控制GOP大小,单位毫秒
|
||||
# PLI = 2000
|
||||
[GB28181]
|
||||
Serial = "34020000002000000001"
|
||||
Realm = "3402000000"
|
||||
Expires = 3600
|
||||
# 媒体端口
|
||||
# MediaPort = 58200
|
||||
# 开启TCP拉流,默认关闭
|
||||
# TCP = true
|
||||
# TCP端口数量,超过一个的话将会每个设备轮流使用,从MediaPort往下递增
|
||||
# TCPMediaPortNum = 1
|
||||
ListenAddr = "192.168.1.120:5060"
|
||||
# 自动停止发布,当订阅者数量将为0时,延迟N秒自动断开,-1代表不断开
|
||||
AutoCloseAfter = -1
|
||||
# 自动拉流,如果开启,则拿到设备注册信息后,就从设备拉流
|
||||
AutoInvite = true
|
||||
14
go.mod
14
go.mod
@@ -3,21 +3,21 @@ module monibuca
|
||||
go 1.18
|
||||
|
||||
require (
|
||||
m7s.live/engine/v4 v4.3.0
|
||||
m7s.live/engine/v4 v4.4.4
|
||||
m7s.live/plugin/debug/v4 v4.0.0-20220506113031-34f3a736ceb2
|
||||
m7s.live/plugin/gb28181/v4 v4.0.0-20220607131724-e110acfb56d3
|
||||
m7s.live/plugin/gb28181/v4 v4.0.0-20220704023857-64861c37b1e6
|
||||
m7s.live/plugin/hdl/v4 v4.0.0-20220619154106-b109dd48a6e4
|
||||
m7s.live/plugin/hls/v4 v4.0.0-20220619163635-447976e65ab9
|
||||
m7s.live/plugin/hls/v4 v4.0.0-20220701023227-8b8d68de154f
|
||||
m7s.live/plugin/hook/v4 v4.0.0-20220510140048-d4f76fd1c415
|
||||
m7s.live/plugin/jessica/v4 v4.0.0-20220619154153-bcd0a5960ac1
|
||||
m7s.live/plugin/logrotate/v4 v4.0.0-20220506113619-1a557d4707a5
|
||||
m7s.live/plugin/preview/v4 v4.0.0-20220612074126-ea770517a67e
|
||||
m7s.live/plugin/record/v4 v4.0.0-20220620045616-933fb3cceda5
|
||||
m7s.live/plugin/preview/v4 v4.0.0-20220626084504-3a50bb4ce5f3
|
||||
m7s.live/plugin/record/v4 v4.0.0-20220625032502-232d974a1c93
|
||||
m7s.live/plugin/room/v4 v4.0.0-20220512035851-f980d4a7f6a0
|
||||
m7s.live/plugin/rtmp/v4 v4.0.0-20220619154232-ab31af1fb7d6
|
||||
m7s.live/plugin/rtsp/v4 v4.0.0-20220619154428-2c1d908d7e68
|
||||
m7s.live/plugin/rtsp/v4 v4.0.0-20220702171423-ae37279dd194
|
||||
m7s.live/plugin/snap/v4 v4.0.0-20220619154320-97a4991e775b
|
||||
m7s.live/plugin/webrtc/v4 v4.0.0-20220619154404-6a5d740a21de
|
||||
m7s.live/plugin/webrtc/v4 v4.0.0-20220625121305-db54d6ee4d17
|
||||
m7s.live/plugin/webtransport/v4 v4.0.0-20220619154419-bf138bc5958b
|
||||
)
|
||||
|
||||
|
||||
30
go.sum
30
go.sum
@@ -496,38 +496,36 @@ grpc.go4.org v0.0.0-20170609214715-11d0a25b4919/go.mod h1:77eQGdRu53HpSqPFJFmuJd
|
||||
honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
m7s.live/engine/v4 v4.3.0 h1:z2R8ZmmFjhtSFYu4Y1Gzmfvx+0y2ynJqL89xT1a7Kcw=
|
||||
m7s.live/engine/v4 v4.3.0/go.mod h1:rliHP5yJnSyr40ha6q8OhUResRn8fo26TxmmBbR2X4M=
|
||||
m7s.live/engine/v4 v4.4.4 h1:Fno5quSMLgZAGStHRvFA86cIF52JhjlgUwz/mkCbBJ4=
|
||||
m7s.live/engine/v4 v4.4.4/go.mod h1:uzpGiVnIcuoXehpvqOj9iTVxnyf7RZQZ/Ikiwyjs01E=
|
||||
m7s.live/plugin/debug/v4 v4.0.0-20220506113031-34f3a736ceb2 h1:0QWJvozTHy7m+G/lOIGiejQ9okFIDjwzVsgXe6ZaJg8=
|
||||
m7s.live/plugin/debug/v4 v4.0.0-20220506113031-34f3a736ceb2/go.mod h1:A/C1ViacCOK7EPeeCfiwlUrC2TUtRdEqzrR0Yd9b1KQ=
|
||||
m7s.live/plugin/gb28181/v4 v4.0.0-20220607131724-e110acfb56d3 h1:zhDjSjstW82eRaihAJdNwgat5hMhRD39GbyWf2Kg8+I=
|
||||
m7s.live/plugin/gb28181/v4 v4.0.0-20220607131724-e110acfb56d3/go.mod h1:cEVPp9jSsN7u85Km8ztdG54n2Sj4LyxvIp3SJIYPByE=
|
||||
m7s.live/plugin/gb28181/v4 v4.0.0-20220704023857-64861c37b1e6 h1:NA4ouCJiLWtV872CNLqxvXcxDuBKo3gj9sx55frx2bE=
|
||||
m7s.live/plugin/gb28181/v4 v4.0.0-20220704023857-64861c37b1e6/go.mod h1:gaIODijPQOyMvFE1X/46N8Yh0i0RLozyom6RtxTG3g0=
|
||||
m7s.live/plugin/hdl/v4 v4.0.0-20220619154106-b109dd48a6e4 h1:l9y3NU/mD2lWnBop3sq1mGbGcQhzutxIZ6++wWIOlUM=
|
||||
m7s.live/plugin/hdl/v4 v4.0.0-20220619154106-b109dd48a6e4/go.mod h1:oYox1NW5lUlwWNuAqqmgY7csuP8Hyd8TlIGuF7DoxIk=
|
||||
m7s.live/plugin/hls/v4 v4.0.0-20220619163635-447976e65ab9 h1:EcB8awppfwza+s4ECjUr3xLTtl9BgJcZ12EgfE/L2YA=
|
||||
m7s.live/plugin/hls/v4 v4.0.0-20220619163635-447976e65ab9/go.mod h1:Qn4dDz5xlyBJwO+eZ3w8CUQ8Hl6KN1nmv0a3IsOjJvw=
|
||||
m7s.live/plugin/hls/v4 v4.0.0-20220701023227-8b8d68de154f h1:ZSBTBj/LkoVaGWwfgV/qFMTj/UR/iyyAuIWrDjYm47U=
|
||||
m7s.live/plugin/hls/v4 v4.0.0-20220701023227-8b8d68de154f/go.mod h1:Qn4dDz5xlyBJwO+eZ3w8CUQ8Hl6KN1nmv0a3IsOjJvw=
|
||||
m7s.live/plugin/hook/v4 v4.0.0-20220510140048-d4f76fd1c415 h1:ByaKrp8iWIDhASzxxCsJRBx0Cyw1P466KLgvSiMSix4=
|
||||
m7s.live/plugin/hook/v4 v4.0.0-20220510140048-d4f76fd1c415/go.mod h1:ky3FOzCMKSDIiosPOw3wrKrQLM3YERSe5YrQZToJh/I=
|
||||
m7s.live/plugin/jessica/v4 v4.0.0-20220619154153-bcd0a5960ac1 h1:7muSZHyx6EQSzO8svuZKlFNVk3OrOdra+e8proeGAUY=
|
||||
m7s.live/plugin/jessica/v4 v4.0.0-20220619154153-bcd0a5960ac1/go.mod h1:mJCONeOUeIPPA7Pfgge844l65KzHXa+QwE+AJ64Cf+4=
|
||||
m7s.live/plugin/logrotate/v4 v4.0.0-20220506113619-1a557d4707a5 h1:XkkHG9sYk45GXVxZXDbY7WgtwoiXfJ8Mf58CPT5Bzss=
|
||||
m7s.live/plugin/logrotate/v4 v4.0.0-20220506113619-1a557d4707a5/go.mod h1:a8hIV59GjpQDE+Ip790CU7yOHaG4+Iweci0sLvo43FU=
|
||||
m7s.live/plugin/preview/v4 v4.0.0-20220612074126-ea770517a67e h1:S8hrME0L3QWwmJ4i6iEvGSqXCGpgWHgg42N0M1Pq3N0=
|
||||
m7s.live/plugin/preview/v4 v4.0.0-20220612074126-ea770517a67e/go.mod h1:iYhWqFbTvTNDFplbTOrE5X9M6ED7gCKkKMuM5QmBocg=
|
||||
m7s.live/plugin/record/v4 v4.0.0-20220620045616-933fb3cceda5 h1:Lv3elhs9rW885D3TyfEz58WC3g14S2riTtowFMPOAv4=
|
||||
m7s.live/plugin/record/v4 v4.0.0-20220620045616-933fb3cceda5/go.mod h1:pOe8VNiXm/m1SiJSO16iFZhqrWJeb1xcV3s9qv5v6eo=
|
||||
m7s.live/plugin/preview/v4 v4.0.0-20220626084504-3a50bb4ce5f3 h1:bHObtD7I1QOQA7dq3T1G8kjZdgyA/KOnAOl7bdmFOIg=
|
||||
m7s.live/plugin/preview/v4 v4.0.0-20220626084504-3a50bb4ce5f3/go.mod h1:iYhWqFbTvTNDFplbTOrE5X9M6ED7gCKkKMuM5QmBocg=
|
||||
m7s.live/plugin/record/v4 v4.0.0-20220625032502-232d974a1c93 h1:4voF7d0cDsSm0QV7CpJuyBxWaMOPYoPz6Ub/e96g5zA=
|
||||
m7s.live/plugin/record/v4 v4.0.0-20220625032502-232d974a1c93/go.mod h1:pOe8VNiXm/m1SiJSO16iFZhqrWJeb1xcV3s9qv5v6eo=
|
||||
m7s.live/plugin/room/v4 v4.0.0-20220512035851-f980d4a7f6a0 h1:rv/GTbcVz1k3/7xWHTXnp4f9LU7Bzf+qC3Dqe9TIEZs=
|
||||
m7s.live/plugin/room/v4 v4.0.0-20220512035851-f980d4a7f6a0/go.mod h1:s/e+9cyOkJVMAsOVRM08RDvlPikeaeh5R26qk8oekFA=
|
||||
m7s.live/plugin/rtmp/v4 v4.0.0-20220619154232-ab31af1fb7d6 h1:3YZmLR3waoaLLkyPCcKek6jrjX+EIK8tgILOYQqc0Is=
|
||||
m7s.live/plugin/rtmp/v4 v4.0.0-20220619154232-ab31af1fb7d6/go.mod h1:Y+1A1ds4GgcoDennFy5DJntiuzeptO7EEqgu32bjJ70=
|
||||
m7s.live/plugin/rtsp/v4 v4.0.0-20220619154428-2c1d908d7e68 h1:sKnga6vlsh3iVLwbjpIfdSLnypqZcjtWdPNjs97OTxg=
|
||||
m7s.live/plugin/rtsp/v4 v4.0.0-20220619154428-2c1d908d7e68/go.mod h1:pGxUDv4pes+hA/PxDdUdJleyJpSbK0562hCC0TODMJ0=
|
||||
m7s.live/plugin/snap/v4 v4.0.0-20220612035905-720756e0d9ce h1:oYlcXS0qX/LtLMry6Lvaidz91dw6nEIs8q4XIaU6+dw=
|
||||
m7s.live/plugin/snap/v4 v4.0.0-20220612035905-720756e0d9ce/go.mod h1:XHggonZ0lIKEX/OP2rXjV2mPpG4urmvMT3foIaFRsus=
|
||||
m7s.live/plugin/rtsp/v4 v4.0.0-20220702171423-ae37279dd194 h1:iokKYVIQCOV8SGVWndguAIKNQcn9IrIBtsMFI8iFYaE=
|
||||
m7s.live/plugin/rtsp/v4 v4.0.0-20220702171423-ae37279dd194/go.mod h1:vzkSksXHo7Im77Yazqucrsa+VyOBV4UBlnrWW/oZpuo=
|
||||
m7s.live/plugin/snap/v4 v4.0.0-20220619154320-97a4991e775b h1:fyy2rnRkjJnOIDJ4lIYHpDlxaAMJPYvXmhd/PbNhgrQ=
|
||||
m7s.live/plugin/snap/v4 v4.0.0-20220619154320-97a4991e775b/go.mod h1:XHggonZ0lIKEX/OP2rXjV2mPpG4urmvMT3foIaFRsus=
|
||||
m7s.live/plugin/webrtc/v4 v4.0.0-20220619154404-6a5d740a21de h1:YQuiVrN7XMsxbxvYC8696i0gFPPe8TsfTIUDMxmKrFQ=
|
||||
m7s.live/plugin/webrtc/v4 v4.0.0-20220619154404-6a5d740a21de/go.mod h1:F78F1+ILZZbKYoHXr42YBXkHoi9D4W7jvjSazN38000=
|
||||
m7s.live/plugin/webrtc/v4 v4.0.0-20220625121305-db54d6ee4d17 h1:gWGEjZ8rT7kDD3u7rnQX17XDQtRA7pEWgRQoE47VMXY=
|
||||
m7s.live/plugin/webrtc/v4 v4.0.0-20220625121305-db54d6ee4d17/go.mod h1:F78F1+ILZZbKYoHXr42YBXkHoi9D4W7jvjSazN38000=
|
||||
m7s.live/plugin/webtransport/v4 v4.0.0-20220619154419-bf138bc5958b h1:VIZh7EDfZ6kLv+f9sLMQzrRZObDiMVgFFaTalVAU+MI=
|
||||
m7s.live/plugin/webtransport/v4 v4.0.0-20220619154419-bf138bc5958b/go.mod h1:RtqizBkC2q3QNA+gfYD1mMH6SVK8T/iprvaX+3SQ1B0=
|
||||
sourcegraph.com/sourcegraph/go-diff v0.5.0/go.mod h1:kuch7UrkMzY0X+p9CRK03kfuPQ2zzQcaEFbx8wA8rck=
|
||||
|
||||
13
main.go
13
main.go
@@ -2,6 +2,19 @@ package main
|
||||
|
||||
//go:generate go run gen.go $debug
|
||||
|
||||
/*
|
||||
|
||||
███╗ ███╗ ██████╗ ███╗ ██╗██╗██████╗ ██╗ ██╗ ██████╗ █████╗
|
||||
████╗ ████║██╔═══██╗████╗ ██║██║██╔══██╗██║ ██║██╔════╝██╔══██╗
|
||||
██╔████╔██║██║ ██║██╔██╗ ██║██║██████╔╝██║ ██║██║ ███████║
|
||||
██║╚██╔╝██║██║ ██║██║╚██╗██║██║██╔══██╗██║ ██║██║ ██╔══██║
|
||||
██║ ╚═╝ ██║╚██████╔╝██║ ╚████║██║██████╔╝╚██████╔╝╚██████╗██║ ██║
|
||||
╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝╚═════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝
|
||||
|
||||
The live stream server for Go
|
||||
(c) dexter 2019-present
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"flag"
|
||||
|
||||
Reference in New Issue
Block a user