mirror of
https://github.com/Monibuca/plugin-hdl.git
synced 2025-10-05 16:56:55 +08:00
对拉流的头进行判断是否包含音视频
This commit is contained in:
44
README.en.md
Normal file
44
README.en.md
Normal file
@@ -0,0 +1,44 @@
|
||||
_[简体中文](https://github.com/Monibuca/plugin-hdl) | English_
|
||||
# HDL Plugin
|
||||
|
||||
The main function of the HDL plugin is to provide access to the HTTP-FLV protocol.
|
||||
|
||||
## Plugin Address
|
||||
|
||||
https://github.com/Monibuca/plugin-hdl
|
||||
|
||||
## Plugin Introduction
|
||||
```go
|
||||
import (
|
||||
_ "m7s.live/plugin/hdl/v4"
|
||||
)
|
||||
```
|
||||
|
||||
## Default Plugin Configuration
|
||||
|
||||
```yaml
|
||||
hdl:
|
||||
http: # Refer to global configuration for format
|
||||
publish: # Refer to global configuration for format
|
||||
subscribe: # Refer to global configuration for format
|
||||
pull: # Format: https://m7s.live/guide/config.html#%E6%8F%92%E4%BB%B6%E9%85%8D%E7%BD%AE
|
||||
```
|
||||
|
||||
## Plugin Features
|
||||
|
||||
### Pulling HTTP-FLV Streams from M7S
|
||||
|
||||
If the live/test stream already exists in M7S, then HTTP-FLV protocol can be used for playback. If the listening port is not configured, then the global HTTP port is used (default 8080).
|
||||
|
||||
```bash
|
||||
ffplay http://localhost:8080/hdl/live/test.flv
|
||||
```
|
||||
|
||||
### M7S Pull HTTP-FLV Streams from Remote
|
||||
|
||||
The available API is:
|
||||
`/hdl/api/pull?target=[HTTP-FLV address]&streamPath=[stream identifier]&save=[whether to save configuration (leave blank if not)]`
|
||||
|
||||
### Get a List of All HDL Streams
|
||||
|
||||
`/hdl/api/list`
|
@@ -1,3 +1,4 @@
|
||||
_[English](https://github.com/Monibuca/plugin-hdl/blob/v4/README.en.md) | 简体中文_
|
||||
# HDL插件
|
||||
|
||||
HDL插件主要功能是提供HTTP-FLV协议的访问
|
||||
|
5
pull.go
5
pull.go
@@ -58,6 +58,11 @@ func (puller *HDLPuller) Connect() (err error) {
|
||||
if _, err = io.ReadFull(puller, head); err == nil {
|
||||
if head[0] != 'F' || head[1] != 'L' || head[2] != 'V' {
|
||||
err = codec.ErrInvalidFLV
|
||||
} else {
|
||||
configCopy := hdlConfig.GetPublishConfig()
|
||||
configCopy.PubAudio = head[4]&0x04 != 0
|
||||
configCopy.PubVideo = head[4]&0x01 != 0
|
||||
puller.Config = &configCopy
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user