You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.3 KiB
35 lines
1.3 KiB
package models |
|
|
|
import "time" |
|
|
|
// Broadcaster represents the details around the inbound broadcasting connection. |
|
type Broadcaster struct { |
|
Time time.Time `json:"time"` |
|
RemoteAddr string `json:"remoteAddr"` |
|
StreamDetails InboundStreamDetails `json:"streamDetails"` |
|
} |
|
|
|
// InboundStreamDetails represents an inbound broadcast stream. |
|
type InboundStreamDetails struct { |
|
VideoCodec string `json:"videoCodec"` |
|
AudioCodec string `json:"audioCodec"` |
|
Encoder string `json:"encoder"` |
|
Width int `json:"width"` |
|
Height int `json:"height"` |
|
VideoBitrate int `json:"videoBitrate"` |
|
AudioBitrate int `json:"audioBitrate"` |
|
VideoFramerate float32 `json:"framerate"` |
|
VideoOnly bool `json:"-"` |
|
} |
|
|
|
// RTMPStreamMetadata is the raw metadata that comes in with a RTMP connection. |
|
type RTMPStreamMetadata struct { |
|
VideoCodec interface{} `json:"videocodecid"` |
|
AudioCodec interface{} `json:"audiocodecid"` |
|
Encoder string `json:"encoder"` |
|
Width int `json:"width"` |
|
Height int `json:"height"` |
|
VideoBitrate float32 `json:"videodatarate"` |
|
VideoFramerate float32 `json:"framerate"` |
|
AudioBitrate float32 `json:"audiodatarate"` |
|
}
|
|
|