Compare commits

...

10 Commits

Author SHA1 Message Date
dexter
d12052eb4a 修复gb28181插件ssrc取值以及ip获取的兼容性 2022-07-17 14:04:01 +08:00
dexter
7a0964b501 Merge branch 'v4' of github.com:langhuihui/monibuca into v4 2022-07-10 20:47:40 +08:00
dexter
67ad3e669d 更新gb插件以及远程控制台显示数据部分 2022-07-10 20:47:11 +08:00
dexter
6c78c2f456 Merge pull request #60 from dwdcth/v4
保存发布信息
2022-07-06 15:39:59 +08:00
banshan
16cf7725f3 保存发布信息 2022-07-06 15:35:26 +08:00
dexter
9d08fa47b3 修复startTime经过json序列化后变成负数的问题 2022-07-06 10:13:02 +08:00
dexter
9b6e9bfbec Merge pull request #59 from dwdcth/v4
修复goreleaser 发布时编译错误
2022-07-06 10:11:32 +08:00
banshan
a18fc77b8b Update go.yml 2022-07-06 09:39:46 +08:00
dexter
edd7a6f047 消除一个hls的内存泄露,修复gb插件的一个bug 2022-07-05 10:24:45 +08:00
dexter
9ec70f0454 升级engine 2022-06-29 14:23:04 +08:00
5 changed files with 69 additions and 43 deletions

View File

@@ -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 }}
@@ -56,6 +56,11 @@ jobs:
cp ../dist/m7s_${{ env.version }}_darwin_arm64.tar.gz apps/m7s-website/src/public/bin/m7s_darwin_arm64.tar.gz
cp ../dist/m7s_${{ env.version }}_linux_amd64.tar.gz apps/m7s-website/src/public/bin/m7s_linux_amd64.tar.gz
cp ../dist/m7s_${{ env.version }}_linux_arm64.tar.gz apps/m7s-website/src/public/bin/m7s_linux_arm64.tar.gz
releaseinfo=`curl -H "Accept: application/vnd.github+json" -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" https://api.github.com/repos/${{ github.repository }}/releases/latest`
body=`echo $releaseinfo | jq ".body" | sed -e 's/^"//' -e 's/"$//'`
name=`echo $releaseinfo | jq ".name" | sed -e 's/^"//' -e 's/"$//'`
touch apps/m7s-website/src/release.txt
echo -e "# $name\n$body" | cat - apps/m7s-website/src/release.txt > temp && mv temp apps/m7s-website/src/release.txt
git config --global user.name 'langhuihui'
git config --global user.email '178529795@qq.com'
git add -A

View File

@@ -3,28 +3,35 @@
# 插件配置参考各个插件的文档
# 插件都有一个enable配置如果为false则不启用该插件默认为true即不需要配置。
# global:
# secret: "123456"
# http:
# listenaddrtls: :8081
# certfile: monibuca.com.pem
# keyfile: monibuca.com.key
# record:
# mp4:
# autorecord: true
# fragment: 20
# webtransport:
# enable: false
# certfile: monibuca.com.pem
# keyfile: monibuca.com.key
# rtsp:
# pull:
# pullonstart: true
# pulllist:
# live/rtsp : rtsp://admin:aaa123456@airiot.link:18554/Streaming/Channels/101
# hls:
# enable: false
# pull:
# pullonstart: true
# pulllist:
# live/hls: http://111.40.196.27/PLTV/88888888/224/3221225548/index.m3u8
global:
console:
secret: "ab0f6913670062af4d2f15c621205178"
# publish:
# pubaudio: false
http:
listenaddrtls: :8081
certfile: monibuca.com.pem
keyfile: monibuca.com.key
record:
enable: false
hls:
autorecord: true
fragment: 20
webtransport:
# enable: false
certfile: monibuca.com.pem
keyfile: monibuca.com.key
gb28181:
# enable: false
rtsp:
enable: false
pull:
pullonstart: true
pulllist:
live/rtsp : rtsp://admin:MOMA2021@47.94.226.17/Streaming/Channels/201?transportmode=unicast
hls:
enable: false
pull:
pullonstart: true
pulllist:
live/hls: http://111.40.196.27/PLTV/88888888/224/3221225548/index.m3u8

12
go.mod
View File

@@ -3,19 +3,19 @@ module monibuca
go 1.18
require (
m7s.live/engine/v4 v4.4.1
m7s.live/engine/v4 v4.5.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-20220717024155-cf761e09d74b
m7s.live/plugin/hdl/v4 v4.0.0-20220619154106-b109dd48a6e4
m7s.live/plugin/hls/v4 v4.0.0-20220625093111-3bf2cf54b4d3
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-20220626084504-3a50bb4ce5f3
m7s.live/plugin/preview/v4 v4.0.0-20220710064653-1bfc340193c8
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-20220625121132-93d6eedff2b2
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-20220625121305-db54d6ee4d17
m7s.live/plugin/webtransport/v4 v4.0.0-20220619154419-bf138bc5958b
@@ -36,6 +36,7 @@ require (
github.com/gobwas/pool v0.2.1 // indirect
github.com/gobwas/ws v1.1.0 // indirect
github.com/google/uuid v1.3.0 // indirect
github.com/husanpao/ip v0.0.0-20220711072141-f1e1174bc11b // indirect
github.com/icza/bitio v1.1.0 // indirect
github.com/logrusorgru/aurora v2.0.3+incompatible // indirect
github.com/lucas-clemente/quic-go v0.26.0 // indirect
@@ -49,7 +50,6 @@ require (
github.com/mgutz/ansi v0.0.0-20200706080929-d51e80ef957d // indirect
github.com/nxadm/tail v1.4.8 // indirect
github.com/onsi/ginkgo v1.16.5 // indirect
github.com/onsi/gomega v1.19.0 // indirect
github.com/pion/datachannel v1.5.2 // indirect
github.com/pion/dtls/v2 v2.1.5 // indirect
github.com/pion/ice/v2 v2.2.6 // indirect

23
go.sum
View File

@@ -106,6 +106,8 @@ github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/ad
github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA=
github.com/grpc-ecosystem/grpc-gateway v1.5.0/go.mod h1:RSKVYQBd5MCa4OVpNdGskqpgL2+G+NZTnrVHpWWfpdw=
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
github.com/husanpao/ip v0.0.0-20220711072141-f1e1174bc11b h1:Sz6yYtmUAECABK80QzOrXp4EiqqAtHvaviIujATSJN4=
github.com/husanpao/ip v0.0.0-20220711072141-f1e1174bc11b/go.mod h1:medl9/CfYoQlqAXtAARmMW5dAX2UOdwwkhaszYPk0AM=
github.com/icza/bitio v1.1.0 h1:ysX4vtldjdi3Ygai5m1cWy4oLkhWTAi+SyO6HC8L9T0=
github.com/icza/bitio v1.1.0/go.mod h1:0jGnlLAx8MKMr9VGnn/4YrvZiprkvBelsVIbA9Jjr9A=
github.com/icza/mighty v0.0.0-20180919140131-cfd07d671de6 h1:8UsGZ2rr2ksmEru6lToqnXgA8Mz1DP11X4zSJ159C3k=
@@ -179,7 +181,6 @@ github.com/onsi/gomega v1.10.4/go.mod h1:g/HbgYopi++010VEqkFgJHKC09uJiW9UkXvMUuK
github.com/onsi/gomega v1.13.0/go.mod h1:lRk9szgn8TxENtWd0Tp4c3wjlRfMTMH27I+3Je41yGY=
github.com/onsi/gomega v1.17.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY=
github.com/onsi/gomega v1.19.0 h1:4ieX6qQjPP/BfC3mpsAtIGGlxTWPeA3Inl/7DtXw1tw=
github.com/onsi/gomega v1.19.0/go.mod h1:LY+I3pBVzYsTBU1AnDwOSxaYi9WoWiqgwooUqq9yPro=
github.com/openzipkin/zipkin-go v0.1.1/go.mod h1:NtoC/o8u3JlF1lSlyPNswIbeQH9bJTmOf0Erfk+hxe8=
github.com/pion/datachannel v1.5.2 h1:piB93s8LGmbECrpO84DnkIVWasRMk3IimbcXkTQLE6E=
github.com/pion/datachannel v1.5.2/go.mod h1:FTGQWaHrdCwIJ1rw6xBIfZVkslikjShim5yr05XFuCQ=
@@ -496,32 +497,32 @@ 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.4.1 h1:a6veJk9REY1R8TbqlRO4kyrU6chv2Dvyg1LgRXI4rK8=
m7s.live/engine/v4 v4.4.1/go.mod h1:uzpGiVnIcuoXehpvqOj9iTVxnyf7RZQZ/Ikiwyjs01E=
m7s.live/engine/v4 v4.5.4 h1:wjkC8KSuoPbrfy0PFyZWiVy3t8Ed9Umm0T+uT9imjpg=
m7s.live/engine/v4 v4.5.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-20220717024155-cf761e09d74b h1:Q65xt8j7h8erXOiiq9JfvM44ttI99v1eLiKfuHvU9vk=
m7s.live/plugin/gb28181/v4 v4.0.0-20220717024155-cf761e09d74b/go.mod h1:Tn34m/YLi7hLteNBbeRmFkwxy4Y/mmd9okdKMvdbmkY=
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-20220625093111-3bf2cf54b4d3 h1:9EA4qWYR5tr5vzvFyy1SJ81a4B4izM2Fzm3TEUFvmow=
m7s.live/plugin/hls/v4 v4.0.0-20220625093111-3bf2cf54b4d3/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-20220626084504-3a50bb4ce5f3 h1:bHObtD7I1QOQA7dq3T1G8kjZdgyA/KOnAOl7bdmFOIg=
m7s.live/plugin/preview/v4 v4.0.0-20220626084504-3a50bb4ce5f3/go.mod h1:iYhWqFbTvTNDFplbTOrE5X9M6ED7gCKkKMuM5QmBocg=
m7s.live/plugin/preview/v4 v4.0.0-20220710064653-1bfc340193c8 h1:RjeD7x5PpWQfSuygquGgRR0S5/ycgQ4VI9pzJpHbHIc=
m7s.live/plugin/preview/v4 v4.0.0-20220710064653-1bfc340193c8/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-20220625121132-93d6eedff2b2 h1:wnOWbAp7D4i7Kd5ZWai+Nt1kFvjm8nOcYvok/ijboLI=
m7s.live/plugin/rtsp/v4 v4.0.0-20220625121132-93d6eedff2b2/go.mod h1:vzkSksXHo7Im77Yazqucrsa+VyOBV4UBlnrWW/oZpuo=
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-20220625121305-db54d6ee4d17 h1:gWGEjZ8rT7kDD3u7rnQX17XDQtRA7pEWgRQoE47VMXY=

13
main.go
View File

@@ -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"