mirror of
https://github.com/datarhei/core.git
synced 2025-10-05 07:57:13 +08:00
Add format annotation for integer types for swagger documentation
This commit is contained in:
@@ -13,7 +13,7 @@ type Data struct {
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
LoadedAt time.Time `json:"-"`
|
||||
UpdatedAt time.Time `json:"-"`
|
||||
Version int64 `json:"version" jsonschema:"minimum=3,maximum=3"`
|
||||
Version int64 `json:"version" jsonschema:"minimum=3,maximum=3" format:"int64"`
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Address string `json:"address"`
|
||||
@@ -21,7 +21,7 @@ type Data struct {
|
||||
Log struct {
|
||||
Level string `json:"level" enums:"debug,info,warn,error,silent" jsonschema:"enum=debug,enum=info,enum=warn,enum=error,enum=silent"`
|
||||
Topics []string `json:"topics"`
|
||||
MaxLines int `json:"max_lines"`
|
||||
MaxLines int `json:"max_lines" format:"int"`
|
||||
} `json:"log"`
|
||||
DB struct {
|
||||
Dir string `json:"dir"`
|
||||
@@ -67,12 +67,12 @@ type Data struct {
|
||||
Storage struct {
|
||||
Disk struct {
|
||||
Dir string `json:"dir"`
|
||||
Size int64 `json:"max_size_mbytes"`
|
||||
Size int64 `json:"max_size_mbytes" format:"int64"`
|
||||
Cache struct {
|
||||
Enable bool `json:"enable"`
|
||||
Size uint64 `json:"max_size_mbytes"`
|
||||
TTL int64 `json:"ttl_seconds"`
|
||||
FileSize uint64 `json:"max_file_size_mbytes"`
|
||||
Size uint64 `json:"max_size_mbytes" format:"uint64"`
|
||||
TTL int64 `json:"ttl_seconds" format:"int64"`
|
||||
FileSize uint64 `json:"max_file_size_mbytes" format:"uint64"`
|
||||
Types struct {
|
||||
Allow []string `json:"allow"`
|
||||
Block []string `json:"block"`
|
||||
@@ -85,7 +85,7 @@ type Data struct {
|
||||
Username string `json:"username"`
|
||||
Password string `json:"password"`
|
||||
} `json:"auth"`
|
||||
Size int64 `json:"max_size_mbytes"`
|
||||
Size int64 `json:"max_size_mbytes" format:"int64"`
|
||||
Purge bool `json:"purge"`
|
||||
} `json:"memory"`
|
||||
CORS struct {
|
||||
@@ -113,7 +113,7 @@ type Data struct {
|
||||
} `json:"srt"`
|
||||
FFmpeg struct {
|
||||
Binary string `json:"binary"`
|
||||
MaxProcesses int64 `json:"max_processes"`
|
||||
MaxProcesses int64 `json:"max_processes" format:"int64"`
|
||||
Access struct {
|
||||
Input struct {
|
||||
Allow []string `json:"allow"`
|
||||
@@ -125,34 +125,34 @@ type Data struct {
|
||||
} `json:"output"`
|
||||
} `json:"access"`
|
||||
Log struct {
|
||||
MaxLines int `json:"max_lines"`
|
||||
MaxHistory int `json:"max_history"`
|
||||
MaxLines int `json:"max_lines" format:"int"`
|
||||
MaxHistory int `json:"max_history" format:"int"`
|
||||
} `json:"log"`
|
||||
} `json:"ffmpeg"`
|
||||
Playout struct {
|
||||
Enable bool `json:"enable"`
|
||||
MinPort int `json:"min_port"`
|
||||
MaxPort int `json:"max_port"`
|
||||
MinPort int `json:"min_port" format:"int"`
|
||||
MaxPort int `json:"max_port" format:"int"`
|
||||
} `json:"playout"`
|
||||
Debug struct {
|
||||
Profiling bool `json:"profiling"`
|
||||
ForceGC int `json:"force_gc"`
|
||||
MemoryLimit int64 `json:"memory_limit_mbytes"`
|
||||
ForceGC int `json:"force_gc" format:"int"`
|
||||
MemoryLimit int64 `json:"memory_limit_mbytes" format:"int64"`
|
||||
} `json:"debug"`
|
||||
Metrics struct {
|
||||
Enable bool `json:"enable"`
|
||||
EnablePrometheus bool `json:"enable_prometheus"`
|
||||
Range int64 `json:"range_sec"` // seconds
|
||||
Interval int64 `json:"interval_sec"` // seconds
|
||||
Range int64 `json:"range_sec" format:"int64"` // seconds
|
||||
Interval int64 `json:"interval_sec" format:"int64"` // seconds
|
||||
} `json:"metrics"`
|
||||
Sessions struct {
|
||||
Enable bool `json:"enable"`
|
||||
IPIgnoreList []string `json:"ip_ignorelist"`
|
||||
SessionTimeout int `json:"session_timeout_sec"`
|
||||
SessionTimeout int `json:"session_timeout_sec" format:"int"`
|
||||
Persist bool `json:"persist"`
|
||||
PersistInterval int `json:"persist_interval_sec"`
|
||||
MaxBitrate uint64 `json:"max_bitrate_mbit"`
|
||||
MaxSessions uint64 `json:"max_sessions"`
|
||||
PersistInterval int `json:"persist_interval_sec" format:"int"`
|
||||
MaxBitrate uint64 `json:"max_bitrate_mbit" format:"uint64"`
|
||||
MaxSessions uint64 `json:"max_sessions" format:"uint64"`
|
||||
} `json:"sessions"`
|
||||
Service struct {
|
||||
Enable bool `json:"enable"`
|
||||
|
@@ -10,7 +10,7 @@ type Data struct {
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
LoadedAt time.Time `json:"-"`
|
||||
UpdatedAt time.Time `json:"-"`
|
||||
Version int64 `json:"version" jsonschema:"minimum=1,maximum=1"`
|
||||
Version int64 `json:"version" jsonschema:"minimum=1,maximum=1" format:"int64"`
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Address string `json:"address"`
|
||||
@@ -18,7 +18,7 @@ type Data struct {
|
||||
Log struct {
|
||||
Level string `json:"level" enums:"debug,info,warn,error,silent" jsonschema:"enum=debug,enum=info,enum=warn,enum=error,enum=silent"`
|
||||
Topics []string `json:"topics"`
|
||||
MaxLines int `json:"max_lines"`
|
||||
MaxLines int `json:"max_lines" format:"int"`
|
||||
} `json:"log"`
|
||||
DB struct {
|
||||
Dir string `json:"dir"`
|
||||
@@ -63,12 +63,12 @@ type Data struct {
|
||||
Storage struct {
|
||||
Disk struct {
|
||||
Dir string `json:"dir"`
|
||||
Size int64 `json:"max_size_mbytes"`
|
||||
Size int64 `json:"max_size_mbytes" format:"int64"`
|
||||
Cache struct {
|
||||
Enable bool `json:"enable"`
|
||||
Size uint64 `json:"max_size_mbytes"`
|
||||
TTL int64 `json:"ttl_seconds"`
|
||||
FileSize uint64 `json:"max_file_size_mbytes"`
|
||||
Size uint64 `json:"max_size_mbytes" format:"uint64"`
|
||||
TTL int64 `json:"ttl_seconds" format:"int64"`
|
||||
FileSize uint64 `json:"max_file_size_mbytes" format:"uint64"`
|
||||
Types []string `json:"types"`
|
||||
} `json:"cache"`
|
||||
} `json:"disk"`
|
||||
@@ -78,7 +78,7 @@ type Data struct {
|
||||
Username string `json:"username"`
|
||||
Password string `json:"password"`
|
||||
} `json:"auth"`
|
||||
Size int64 `json:"max_size_mbytes"`
|
||||
Size int64 `json:"max_size_mbytes" format:"int64"`
|
||||
Purge bool `json:"purge"`
|
||||
} `json:"memory"`
|
||||
CORS struct {
|
||||
@@ -105,7 +105,7 @@ type Data struct {
|
||||
} `json:"srt"`
|
||||
FFmpeg struct {
|
||||
Binary string `json:"binary"`
|
||||
MaxProcesses int64 `json:"max_processes"`
|
||||
MaxProcesses int64 `json:"max_processes" format:"int64"`
|
||||
Access struct {
|
||||
Input struct {
|
||||
Allow []string `json:"allow"`
|
||||
@@ -117,33 +117,33 @@ type Data struct {
|
||||
} `json:"output"`
|
||||
} `json:"access"`
|
||||
Log struct {
|
||||
MaxLines int `json:"max_lines"`
|
||||
MaxHistory int `json:"max_history"`
|
||||
MaxLines int `json:"max_lines" format:"int"`
|
||||
MaxHistory int `json:"max_history" format:"int"`
|
||||
} `json:"log"`
|
||||
} `json:"ffmpeg"`
|
||||
Playout struct {
|
||||
Enable bool `json:"enable"`
|
||||
MinPort int `json:"min_port"`
|
||||
MaxPort int `json:"max_port"`
|
||||
MinPort int `json:"min_port" format:"int"`
|
||||
MaxPort int `json:"max_port" format:"int"`
|
||||
} `json:"playout"`
|
||||
Debug struct {
|
||||
Profiling bool `json:"profiling"`
|
||||
ForceGC int `json:"force_gc"`
|
||||
ForceGC int `json:"force_gc" format:"int"`
|
||||
} `json:"debug"`
|
||||
Metrics struct {
|
||||
Enable bool `json:"enable"`
|
||||
EnablePrometheus bool `json:"enable_prometheus"`
|
||||
Range int64 `json:"range_sec"` // seconds
|
||||
Interval int64 `json:"interval_sec"` // seconds
|
||||
Range int64 `json:"range_sec" format:"int64"` // seconds
|
||||
Interval int64 `json:"interval_sec" format:"int64"` // seconds
|
||||
} `json:"metrics"`
|
||||
Sessions struct {
|
||||
Enable bool `json:"enable"`
|
||||
IPIgnoreList []string `json:"ip_ignorelist"`
|
||||
SessionTimeout int `json:"session_timeout_sec"`
|
||||
SessionTimeout int `json:"session_timeout_sec" format:"int"`
|
||||
Persist bool `json:"persist"`
|
||||
PersistInterval int `json:"persist_interval_sec"`
|
||||
MaxBitrate uint64 `json:"max_bitrate_mbit"`
|
||||
MaxSessions uint64 `json:"max_sessions"`
|
||||
PersistInterval int `json:"persist_interval_sec" format:"int"`
|
||||
MaxBitrate uint64 `json:"max_bitrate_mbit" format:"uint64"`
|
||||
MaxSessions uint64 `json:"max_sessions" format:"uint64"`
|
||||
} `json:"sessions"`
|
||||
Service struct {
|
||||
Enable bool `json:"enable"`
|
||||
|
@@ -16,7 +16,7 @@ type Data struct {
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
LoadedAt time.Time `json:"-"`
|
||||
UpdatedAt time.Time `json:"-"`
|
||||
Version int64 `json:"version" jsonschema:"minimum=2,maximum=2"`
|
||||
Version int64 `json:"version" jsonschema:"minimum=2,maximum=2" format:"int64"`
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Address string `json:"address"`
|
||||
@@ -24,7 +24,7 @@ type Data struct {
|
||||
Log struct {
|
||||
Level string `json:"level" enums:"debug,info,warn,error,silent" jsonschema:"enum=debug,enum=info,enum=warn,enum=error,enum=silent"`
|
||||
Topics []string `json:"topics"`
|
||||
MaxLines int `json:"max_lines"`
|
||||
MaxLines int `json:"max_lines" format:"int"`
|
||||
} `json:"log"`
|
||||
DB struct {
|
||||
Dir string `json:"dir"`
|
||||
@@ -69,12 +69,12 @@ type Data struct {
|
||||
Storage struct {
|
||||
Disk struct {
|
||||
Dir string `json:"dir"`
|
||||
Size int64 `json:"max_size_mbytes"`
|
||||
Size int64 `json:"max_size_mbytes" format:"int64"`
|
||||
Cache struct {
|
||||
Enable bool `json:"enable"`
|
||||
Size uint64 `json:"max_size_mbytes"`
|
||||
TTL int64 `json:"ttl_seconds"`
|
||||
FileSize uint64 `json:"max_file_size_mbytes"`
|
||||
Size uint64 `json:"max_size_mbytes" format:"uint64"`
|
||||
TTL int64 `json:"ttl_seconds" format:"int64"`
|
||||
FileSize uint64 `json:"max_file_size_mbytes" format:"uint64"`
|
||||
Types []string `json:"types"`
|
||||
} `json:"cache"`
|
||||
} `json:"disk"`
|
||||
@@ -84,7 +84,7 @@ type Data struct {
|
||||
Username string `json:"username"`
|
||||
Password string `json:"password"`
|
||||
} `json:"auth"`
|
||||
Size int64 `json:"max_size_mbytes"`
|
||||
Size int64 `json:"max_size_mbytes" format:"int64"`
|
||||
Purge bool `json:"purge"`
|
||||
} `json:"memory"`
|
||||
CORS struct {
|
||||
@@ -112,7 +112,7 @@ type Data struct {
|
||||
} `json:"srt"`
|
||||
FFmpeg struct {
|
||||
Binary string `json:"binary"`
|
||||
MaxProcesses int64 `json:"max_processes"`
|
||||
MaxProcesses int64 `json:"max_processes" format:"int64"`
|
||||
Access struct {
|
||||
Input struct {
|
||||
Allow []string `json:"allow"`
|
||||
@@ -124,33 +124,33 @@ type Data struct {
|
||||
} `json:"output"`
|
||||
} `json:"access"`
|
||||
Log struct {
|
||||
MaxLines int `json:"max_lines"`
|
||||
MaxHistory int `json:"max_history"`
|
||||
MaxLines int `json:"max_lines" format:"int"`
|
||||
MaxHistory int `json:"max_history" format:"int"`
|
||||
} `json:"log"`
|
||||
} `json:"ffmpeg"`
|
||||
Playout struct {
|
||||
Enable bool `json:"enable"`
|
||||
MinPort int `json:"min_port"`
|
||||
MaxPort int `json:"max_port"`
|
||||
MinPort int `json:"min_port" format:"int"`
|
||||
MaxPort int `json:"max_port" format:"int"`
|
||||
} `json:"playout"`
|
||||
Debug struct {
|
||||
Profiling bool `json:"profiling"`
|
||||
ForceGC int `json:"force_gc"`
|
||||
ForceGC int `json:"force_gc" format:"int"`
|
||||
} `json:"debug"`
|
||||
Metrics struct {
|
||||
Enable bool `json:"enable"`
|
||||
EnablePrometheus bool `json:"enable_prometheus"`
|
||||
Range int64 `json:"range_sec"` // seconds
|
||||
Interval int64 `json:"interval_sec"` // seconds
|
||||
Range int64 `json:"range_sec" format:"int64"` // seconds
|
||||
Interval int64 `json:"interval_sec" format:"int64"` // seconds
|
||||
} `json:"metrics"`
|
||||
Sessions struct {
|
||||
Enable bool `json:"enable"`
|
||||
IPIgnoreList []string `json:"ip_ignorelist"`
|
||||
SessionTimeout int `json:"session_timeout_sec"`
|
||||
SessionTimeout int `json:"session_timeout_sec" format:"int"`
|
||||
Persist bool `json:"persist"`
|
||||
PersistInterval int `json:"persist_interval_sec"`
|
||||
MaxBitrate uint64 `json:"max_bitrate_mbit"`
|
||||
MaxSessions uint64 `json:"max_sessions"`
|
||||
PersistInterval int `json:"persist_interval_sec" format:"int"`
|
||||
MaxBitrate uint64 `json:"max_bitrate_mbit" format:"uint64"`
|
||||
MaxSessions uint64 `json:"max_sessions" format:"uint64"`
|
||||
} `json:"sessions"`
|
||||
Service struct {
|
||||
Enable bool `json:"enable"`
|
||||
|
462
docs/docs.go
462
docs/docs.go
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -3,14 +3,18 @@ definitions:
|
||||
api.AVstream:
|
||||
properties:
|
||||
aqueue:
|
||||
format: uint64
|
||||
type: integer
|
||||
drop:
|
||||
format: uint64
|
||||
type: integer
|
||||
dup:
|
||||
format: uint64
|
||||
type: integer
|
||||
duplicating:
|
||||
type: boolean
|
||||
enc:
|
||||
format: uint64
|
||||
type: integer
|
||||
gop:
|
||||
type: string
|
||||
@@ -21,11 +25,13 @@ definitions:
|
||||
output:
|
||||
$ref: '#/definitions/api.AVstreamIO'
|
||||
queue:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.AVstreamIO:
|
||||
properties:
|
||||
packet:
|
||||
format: uint64
|
||||
type: integer
|
||||
size_kb:
|
||||
type: integer
|
||||
@@ -137,8 +143,10 @@ definitions:
|
||||
debug:
|
||||
properties:
|
||||
force_gc:
|
||||
format: int
|
||||
type: integer
|
||||
memory_limit_mbytes:
|
||||
format: int64
|
||||
type: integer
|
||||
profiling:
|
||||
type: boolean
|
||||
@@ -175,11 +183,14 @@ definitions:
|
||||
log:
|
||||
properties:
|
||||
max_history:
|
||||
format: int
|
||||
type: integer
|
||||
max_lines:
|
||||
format: int
|
||||
type: integer
|
||||
type: object
|
||||
max_processes:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
host:
|
||||
@@ -204,6 +215,7 @@ definitions:
|
||||
- silent
|
||||
type: string
|
||||
max_lines:
|
||||
format: int
|
||||
type: integer
|
||||
topics:
|
||||
items:
|
||||
@@ -218,9 +230,11 @@ definitions:
|
||||
type: boolean
|
||||
interval_sec:
|
||||
description: seconds
|
||||
format: int64
|
||||
type: integer
|
||||
range_sec:
|
||||
description: seconds
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
name:
|
||||
@@ -230,8 +244,10 @@ definitions:
|
||||
enable:
|
||||
type: boolean
|
||||
max_port:
|
||||
format: int
|
||||
type: integer
|
||||
min_port:
|
||||
format: int
|
||||
type: integer
|
||||
type: object
|
||||
router:
|
||||
@@ -280,14 +296,18 @@ definitions:
|
||||
type: string
|
||||
type: array
|
||||
max_bitrate_mbit:
|
||||
format: uint64
|
||||
type: integer
|
||||
max_sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
persist:
|
||||
type: boolean
|
||||
persist_interval_sec:
|
||||
format: int
|
||||
type: integer
|
||||
session_timeout_sec:
|
||||
format: int
|
||||
type: integer
|
||||
type: object
|
||||
srt:
|
||||
@@ -326,10 +346,13 @@ definitions:
|
||||
enable:
|
||||
type: boolean
|
||||
max_file_size_mbytes:
|
||||
format: uint64
|
||||
type: integer
|
||||
max_size_mbytes:
|
||||
format: uint64
|
||||
type: integer
|
||||
ttl_seconds:
|
||||
format: int64
|
||||
type: integer
|
||||
types:
|
||||
properties:
|
||||
@@ -346,6 +369,7 @@ definitions:
|
||||
dir:
|
||||
type: string
|
||||
max_size_mbytes:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
memory:
|
||||
@@ -360,6 +384,7 @@ definitions:
|
||||
type: string
|
||||
type: object
|
||||
max_size_mbytes:
|
||||
format: int64
|
||||
type: integer
|
||||
purge:
|
||||
type: boolean
|
||||
@@ -385,6 +410,7 @@ definitions:
|
||||
update_check:
|
||||
type: boolean
|
||||
version:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
api.ConfigError:
|
||||
@@ -396,6 +422,7 @@ definitions:
|
||||
api.Error:
|
||||
properties:
|
||||
code:
|
||||
format: int
|
||||
type: integer
|
||||
details:
|
||||
items:
|
||||
@@ -407,10 +434,12 @@ definitions:
|
||||
api.FileInfo:
|
||||
properties:
|
||||
last_modified:
|
||||
format: int64
|
||||
type: integer
|
||||
name:
|
||||
type: string
|
||||
size_bytes:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
api.GraphQuery:
|
||||
@@ -465,12 +494,14 @@ definitions:
|
||||
api.MetricsQuery:
|
||||
properties:
|
||||
interval_sec:
|
||||
format: int64
|
||||
type: integer
|
||||
metrics:
|
||||
items:
|
||||
$ref: '#/definitions/api.MetricsQueryMetric'
|
||||
type: array
|
||||
timerange_sec:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
api.MetricsQueryMetric:
|
||||
@@ -485,12 +516,14 @@ definitions:
|
||||
api.MetricsResponse:
|
||||
properties:
|
||||
interval_sec:
|
||||
format: int64
|
||||
type: integer
|
||||
metrics:
|
||||
items:
|
||||
$ref: '#/definitions/api.MetricsResponseMetric'
|
||||
type: array
|
||||
timerange_sec:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
api.MetricsResponseMetric:
|
||||
@@ -516,15 +549,19 @@ definitions:
|
||||
api.PlayoutStatus:
|
||||
properties:
|
||||
aqueue:
|
||||
format: uint64
|
||||
type: integer
|
||||
debug: {}
|
||||
drop:
|
||||
format: uint64
|
||||
type: integer
|
||||
dup:
|
||||
format: uint64
|
||||
type: integer
|
||||
duplicating:
|
||||
type: boolean
|
||||
enc:
|
||||
format: uint64
|
||||
type: integer
|
||||
gop:
|
||||
type: string
|
||||
@@ -537,8 +574,10 @@ definitions:
|
||||
output:
|
||||
$ref: '#/definitions/api.PlayoutStatusIO'
|
||||
queue:
|
||||
format: uint64
|
||||
type: integer
|
||||
stream:
|
||||
format: uint64
|
||||
type: integer
|
||||
swap:
|
||||
$ref: '#/definitions/api.PlayoutStatusSwap'
|
||||
@@ -548,8 +587,10 @@ definitions:
|
||||
api.PlayoutStatusIO:
|
||||
properties:
|
||||
packet:
|
||||
format: uint64
|
||||
type: integer
|
||||
size_kb:
|
||||
format: uint64
|
||||
type: integer
|
||||
state:
|
||||
enum:
|
||||
@@ -557,6 +598,7 @@ definitions:
|
||||
- idle
|
||||
type: string
|
||||
time:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.PlayoutStatusSwap:
|
||||
@@ -586,6 +628,7 @@ definitions:
|
||||
bitrate_kbps:
|
||||
type: number
|
||||
channels:
|
||||
format: uint64
|
||||
type: integer
|
||||
codec:
|
||||
type: string
|
||||
@@ -599,8 +642,10 @@ definitions:
|
||||
description: video
|
||||
type: number
|
||||
height:
|
||||
format: uint64
|
||||
type: integer
|
||||
index:
|
||||
format: uint64
|
||||
type: integer
|
||||
language:
|
||||
type: string
|
||||
@@ -610,8 +655,10 @@ definitions:
|
||||
type: string
|
||||
sampling_hz:
|
||||
description: audio
|
||||
format: uint64
|
||||
type: integer
|
||||
stream:
|
||||
format: uint64
|
||||
type: integer
|
||||
type:
|
||||
type: string
|
||||
@@ -619,6 +666,7 @@ definitions:
|
||||
description: common
|
||||
type: string
|
||||
width:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.Process:
|
||||
@@ -626,6 +674,7 @@ definitions:
|
||||
config:
|
||||
$ref: '#/definitions/api.ProcessConfig'
|
||||
created_at:
|
||||
format: int64
|
||||
type: integer
|
||||
id:
|
||||
type: string
|
||||
@@ -662,10 +711,12 @@ definitions:
|
||||
reconnect:
|
||||
type: boolean
|
||||
reconnect_delay_seconds:
|
||||
format: uint64
|
||||
type: integer
|
||||
reference:
|
||||
type: string
|
||||
stale_timeout_seconds:
|
||||
format: uint64
|
||||
type: integer
|
||||
type:
|
||||
enum:
|
||||
@@ -696,8 +747,10 @@ definitions:
|
||||
api.ProcessConfigIOCleanup:
|
||||
properties:
|
||||
max_file_age_seconds:
|
||||
format: uint
|
||||
type: integer
|
||||
max_files:
|
||||
format: uint
|
||||
type: integer
|
||||
pattern:
|
||||
type: string
|
||||
@@ -711,13 +764,16 @@ definitions:
|
||||
cpu_usage:
|
||||
type: number
|
||||
memory_mbytes:
|
||||
format: uint64
|
||||
type: integer
|
||||
waitfor_seconds:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.ProcessReport:
|
||||
properties:
|
||||
created_at:
|
||||
format: int64
|
||||
type: integer
|
||||
history:
|
||||
items:
|
||||
@@ -737,6 +793,7 @@ definitions:
|
||||
api.ProcessReportHistoryEntry:
|
||||
properties:
|
||||
created_at:
|
||||
format: int64
|
||||
type: integer
|
||||
log:
|
||||
items:
|
||||
@@ -762,14 +819,17 @@ definitions:
|
||||
last_logline:
|
||||
type: string
|
||||
memory_bytes:
|
||||
format: uint64
|
||||
type: integer
|
||||
order:
|
||||
type: string
|
||||
progress:
|
||||
$ref: '#/definitions/api.Progress'
|
||||
reconnect_seconds:
|
||||
format: int64
|
||||
type: integer
|
||||
runtime_seconds:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
api.Progress:
|
||||
@@ -778,12 +838,15 @@ definitions:
|
||||
description: kbit/s
|
||||
type: number
|
||||
drop:
|
||||
format: uint64
|
||||
type: integer
|
||||
dup:
|
||||
format: uint64
|
||||
type: integer
|
||||
fps:
|
||||
type: number
|
||||
frame:
|
||||
format: uint64
|
||||
type: integer
|
||||
inputs:
|
||||
items:
|
||||
@@ -794,11 +857,13 @@ definitions:
|
||||
$ref: '#/definitions/api.ProgressIO'
|
||||
type: array
|
||||
packet:
|
||||
format: uint64
|
||||
type: integer
|
||||
q:
|
||||
type: number
|
||||
size_kb:
|
||||
description: kbytes
|
||||
format: uint64
|
||||
type: integer
|
||||
speed:
|
||||
type: number
|
||||
@@ -817,6 +882,7 @@ definitions:
|
||||
description: kbit/s
|
||||
type: number
|
||||
channels:
|
||||
format: uint64
|
||||
type: integer
|
||||
codec:
|
||||
type: string
|
||||
@@ -827,17 +893,21 @@ definitions:
|
||||
fps:
|
||||
type: number
|
||||
frame:
|
||||
format: uint64
|
||||
type: integer
|
||||
height:
|
||||
format: uint64
|
||||
type: integer
|
||||
id:
|
||||
type: string
|
||||
index:
|
||||
description: General
|
||||
format: uint64
|
||||
type: integer
|
||||
layout:
|
||||
type: string
|
||||
packet:
|
||||
format: uint64
|
||||
type: integer
|
||||
pix_fmt:
|
||||
description: Video
|
||||
@@ -848,15 +918,19 @@ definitions:
|
||||
type: number
|
||||
sampling_hz:
|
||||
description: Audio
|
||||
format: uint64
|
||||
type: integer
|
||||
size_kb:
|
||||
description: kbytes
|
||||
format: uint64
|
||||
type: integer
|
||||
stream:
|
||||
format: uint64
|
||||
type: integer
|
||||
type:
|
||||
type: string
|
||||
width:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.RTMPChannel:
|
||||
@@ -905,34 +979,41 @@ definitions:
|
||||
type: string
|
||||
type: array
|
||||
ts:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
api.SRTStatistics:
|
||||
properties:
|
||||
avail_recv_buf_bytes:
|
||||
description: The available space in the receiver's buffer, in bytes
|
||||
format: uint64
|
||||
type: integer
|
||||
avail_send_buf_bytes:
|
||||
description: The available space in the sender's buffer, in bytes
|
||||
format: uint64
|
||||
type: integer
|
||||
bandwidth_mbit:
|
||||
description: Estimated bandwidth of the network link, in Mbps
|
||||
type: number
|
||||
flight_size_pkt:
|
||||
description: The number of packets in flight
|
||||
format: uint64
|
||||
type: integer
|
||||
flow_window_pkt:
|
||||
description: The maximum number of packets that can be "in flight"
|
||||
format: uint64
|
||||
type: integer
|
||||
max_bandwidth_mbit:
|
||||
description: Transmission bandwidth limit, in Mbps
|
||||
type: number
|
||||
mss_bytes:
|
||||
description: Maximum Segment Size (MSS), in bytes
|
||||
format: uint64
|
||||
type: integer
|
||||
pkt_recv_avg_belated_time_ms:
|
||||
description: Accumulated difference between the current time and the time-to-play
|
||||
of a packet that is received late
|
||||
format: uint64
|
||||
type: integer
|
||||
pkt_send_period_us:
|
||||
description: Current minimum time interval between which consecutive packets
|
||||
@@ -940,79 +1021,98 @@ definitions:
|
||||
type: number
|
||||
recv_ack_pkt:
|
||||
description: The total number of received ACK (Acknowledgement) control packets
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_buf_bytes:
|
||||
description: Instantaneous (current) value of pktRcvBuf, expressed in bytes,
|
||||
including payload and all headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_buf_ms:
|
||||
description: The timespan (msec) of acknowledged packets in the receiver's
|
||||
buffer
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_buf_pkt:
|
||||
description: The number of acknowledged packets in receiver's buffer
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_bytes:
|
||||
description: Same as pktRecv, but expressed in bytes, including payload and
|
||||
all the headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_drop_bytes:
|
||||
description: Same as pktRcvDrop, but expressed in bytes, including payload
|
||||
and all the headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_drop_pkt:
|
||||
description: The total number of dropped by the SRT receiver and, as a result,
|
||||
not delivered to the upstream application DATA packets
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_km_pkt:
|
||||
description: The total number of received KM (Key Material) control packets
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_loss_bytes:
|
||||
description: Same as pktRcvLoss, but expressed in bytes, including payload
|
||||
and all the headers (IP, TCP, SRT), bytes for the presently missing (either
|
||||
reordered or lost) packets' payloads are estimated based on the average
|
||||
packet size
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_loss_pkt:
|
||||
description: The total number of SRT DATA packets detected as presently missing
|
||||
(either reordered or lost) at the receiver side
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_nak_pkt:
|
||||
description: The total number of received NAK (Negative Acknowledgement) control
|
||||
packets
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_pkt:
|
||||
description: The total number of received DATA packets, including retransmitted
|
||||
packets
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_retran_pkts:
|
||||
description: The total number of retransmitted packets registered at the receiver
|
||||
side
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_tsbpd_delay_ms:
|
||||
description: Timestamp-based Packet Delivery Delay value set on the socket
|
||||
via SRTO_RCVLATENCY or SRTO_LATENCY
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_undecrypt_bytes:
|
||||
description: Same as pktRcvUndecrypt, but expressed in bytes, including payload
|
||||
and all the headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_undecrypt_pkt:
|
||||
description: The total number of packets that failed to be decrypted at the
|
||||
receiver side
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_unique_bytes:
|
||||
description: Same as pktRecvUnique, but expressed in bytes, including payload
|
||||
and all the headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
recv_unique_pkt:
|
||||
description: The total number of unique original, retransmitted or recovered
|
||||
by the packet filter DATA packets received in time, decrypted without errors
|
||||
and, as a result, scheduled for delivery to the upstream application by
|
||||
the SRT receiver.
|
||||
format: uint64
|
||||
type: integer
|
||||
reorder_tolerance_pkt:
|
||||
description: Instant value of the packet reorder tolerance
|
||||
format: uint64
|
||||
type: integer
|
||||
rtt_ms:
|
||||
description: Smoothed round-trip time (SRTT), an exponentially-weighted moving
|
||||
@@ -1021,71 +1121,89 @@ definitions:
|
||||
send_buf_bytes:
|
||||
description: Instantaneous (current) value of pktSndBuf, but expressed in
|
||||
bytes, including payload and all headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
send_buf_ms:
|
||||
description: The timespan (msec) of packets in the sender's buffer (unacknowledged
|
||||
packets)
|
||||
format: uint64
|
||||
type: integer
|
||||
send_buf_pkt:
|
||||
description: The number of packets in the sender's buffer that are already
|
||||
scheduled for sending or even possibly sent, but not yet acknowledged
|
||||
format: uint64
|
||||
type: integer
|
||||
send_drop_bytes:
|
||||
description: Same as pktSndDrop, but expressed in bytes, including payload
|
||||
and all the headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
send_drop_pkt:
|
||||
description: The total number of dropped by the SRT sender DATA packets that
|
||||
have no chance to be delivered in time
|
||||
format: uint64
|
||||
type: integer
|
||||
send_duration_us:
|
||||
description: The total accumulated time in microseconds, during which the
|
||||
SRT sender has some data to transmit, including packets that have been sent,
|
||||
but not yet acknowledged
|
||||
format: uint64
|
||||
type: integer
|
||||
send_km_pkt:
|
||||
description: The total number of sent KM (Key Material) control packets
|
||||
format: uint64
|
||||
type: integer
|
||||
send_loss_pkt:
|
||||
description: The total number of data packets considered or reported as lost
|
||||
at the sender side. Does not correspond to the packets detected as lost
|
||||
at the receiver side.
|
||||
format: uint64
|
||||
type: integer
|
||||
send_tsbpd_delay_ms:
|
||||
description: Timestamp-based Packet Delivery Delay value of the peer
|
||||
format: uint64
|
||||
type: integer
|
||||
sent_ack_pkt:
|
||||
description: The total number of sent ACK (Acknowledgement) control packets
|
||||
format: uint64
|
||||
type: integer
|
||||
sent_bytes:
|
||||
description: Same as pktSent, but expressed in bytes, including payload and
|
||||
all the headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
sent_nak_pkt:
|
||||
description: The total number of sent NAK (Negative Acknowledgement) control
|
||||
packets
|
||||
format: uint64
|
||||
type: integer
|
||||
sent_pkt:
|
||||
description: The total number of sent DATA packets, including retransmitted
|
||||
packets
|
||||
format: uint64
|
||||
type: integer
|
||||
sent_retrans_bytes:
|
||||
description: Same as pktRetrans, but expressed in bytes, including payload
|
||||
and all the headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
sent_retrans_pkt:
|
||||
description: The total number of retransmitted packets sent by the SRT sender
|
||||
format: uint64
|
||||
type: integer
|
||||
sent_unique_bytes:
|
||||
description: Same as pktSentUnique, but expressed in bytes, including payload
|
||||
and all the headers (IP, TCP, SRT)
|
||||
format: uint64
|
||||
type: integer
|
||||
sent_unique_pkt:
|
||||
description: The total number of unique DATA packets sent by the SRT sender
|
||||
format: uint64
|
||||
type: integer
|
||||
timestamp_ms:
|
||||
description: The time elapsed, in milliseconds, since the SRT socket has been
|
||||
created
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.Session:
|
||||
@@ -1097,10 +1215,13 @@ definitions:
|
||||
description: kbit/s
|
||||
type: number
|
||||
bytes_rx:
|
||||
format: uint64
|
||||
type: integer
|
||||
bytes_tx:
|
||||
format: uint64
|
||||
type: integer
|
||||
created_at:
|
||||
format: int64
|
||||
type: integer
|
||||
extra:
|
||||
type: string
|
||||
@@ -1120,19 +1241,25 @@ definitions:
|
||||
$ref: '#/definitions/api.SessionStats'
|
||||
type: object
|
||||
sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
traffic_rx_mb:
|
||||
format: uint64
|
||||
type: integer
|
||||
traffic_tx_mb:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.SessionStats:
|
||||
properties:
|
||||
sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
traffic_rx_mb:
|
||||
format: uint64
|
||||
type: integer
|
||||
traffic_tx_mb:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.SessionSummary:
|
||||
@@ -1161,8 +1288,10 @@ definitions:
|
||||
description: mbit/s
|
||||
type: number
|
||||
max_sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.SessionSummarySummary:
|
||||
@@ -1180,10 +1309,13 @@ definitions:
|
||||
$ref: '#/definitions/api.SessionPeers'
|
||||
type: object
|
||||
sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
traffic_rx_mb:
|
||||
format: uint64
|
||||
type: integer
|
||||
traffic_tx_mb:
|
||||
format: uint64
|
||||
type: integer
|
||||
type: object
|
||||
api.SessionsActive:
|
||||
@@ -1265,8 +1397,10 @@ definitions:
|
||||
debug:
|
||||
properties:
|
||||
force_gc:
|
||||
format: int
|
||||
type: integer
|
||||
memory_limit_mbytes:
|
||||
format: int64
|
||||
type: integer
|
||||
profiling:
|
||||
type: boolean
|
||||
@@ -1303,11 +1437,14 @@ definitions:
|
||||
log:
|
||||
properties:
|
||||
max_history:
|
||||
format: int
|
||||
type: integer
|
||||
max_lines:
|
||||
format: int
|
||||
type: integer
|
||||
type: object
|
||||
max_processes:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
host:
|
||||
@@ -1332,6 +1469,7 @@ definitions:
|
||||
- silent
|
||||
type: string
|
||||
max_lines:
|
||||
format: int
|
||||
type: integer
|
||||
topics:
|
||||
items:
|
||||
@@ -1346,9 +1484,11 @@ definitions:
|
||||
type: boolean
|
||||
interval_sec:
|
||||
description: seconds
|
||||
format: int64
|
||||
type: integer
|
||||
range_sec:
|
||||
description: seconds
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
name:
|
||||
@@ -1358,8 +1498,10 @@ definitions:
|
||||
enable:
|
||||
type: boolean
|
||||
max_port:
|
||||
format: int
|
||||
type: integer
|
||||
min_port:
|
||||
format: int
|
||||
type: integer
|
||||
type: object
|
||||
router:
|
||||
@@ -1408,14 +1550,18 @@ definitions:
|
||||
type: string
|
||||
type: array
|
||||
max_bitrate_mbit:
|
||||
format: uint64
|
||||
type: integer
|
||||
max_sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
persist:
|
||||
type: boolean
|
||||
persist_interval_sec:
|
||||
format: int
|
||||
type: integer
|
||||
session_timeout_sec:
|
||||
format: int
|
||||
type: integer
|
||||
type: object
|
||||
srt:
|
||||
@@ -1454,10 +1600,13 @@ definitions:
|
||||
enable:
|
||||
type: boolean
|
||||
max_file_size_mbytes:
|
||||
format: uint64
|
||||
type: integer
|
||||
max_size_mbytes:
|
||||
format: uint64
|
||||
type: integer
|
||||
ttl_seconds:
|
||||
format: int64
|
||||
type: integer
|
||||
types:
|
||||
properties:
|
||||
@@ -1474,6 +1623,7 @@ definitions:
|
||||
dir:
|
||||
type: string
|
||||
max_size_mbytes:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
memory:
|
||||
@@ -1488,6 +1638,7 @@ definitions:
|
||||
type: string
|
||||
type: object
|
||||
max_size_mbytes:
|
||||
format: int64
|
||||
type: integer
|
||||
purge:
|
||||
type: boolean
|
||||
@@ -1513,6 +1664,7 @@ definitions:
|
||||
update_check:
|
||||
type: boolean
|
||||
version:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
api.Skills:
|
||||
@@ -1679,8 +1831,10 @@ definitions:
|
||||
api.WidgetProcess:
|
||||
properties:
|
||||
current_sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
total_sessions:
|
||||
format: uint64
|
||||
type: integer
|
||||
uptime:
|
||||
type: integer
|
||||
|
@@ -6,7 +6,7 @@ import (
|
||||
|
||||
type AVstreamIO struct {
|
||||
State string `json:"state" enums:"running,idle" jsonschema:"enum=running,enum=idle"`
|
||||
Packet uint64 `json:"packet"`
|
||||
Packet uint64 `json:"packet" format:"uint64"`
|
||||
Time uint64 `json:"time"`
|
||||
Size uint64 `json:"size_kb"`
|
||||
}
|
||||
@@ -25,11 +25,11 @@ func (i *AVstreamIO) Unmarshal(io *app.AVstreamIO) {
|
||||
type AVstream struct {
|
||||
Input AVstreamIO `json:"input"`
|
||||
Output AVstreamIO `json:"output"`
|
||||
Aqueue uint64 `json:"aqueue"`
|
||||
Queue uint64 `json:"queue"`
|
||||
Dup uint64 `json:"dup"`
|
||||
Drop uint64 `json:"drop"`
|
||||
Enc uint64 `json:"enc"`
|
||||
Aqueue uint64 `json:"aqueue" format:"uint64"`
|
||||
Queue uint64 `json:"queue" format:"uint64"`
|
||||
Dup uint64 `json:"dup" format:"uint64"`
|
||||
Drop uint64 `json:"drop" format:"uint64"`
|
||||
Enc uint64 `json:"enc" format:"uint64"`
|
||||
Looping bool `json:"looping"`
|
||||
Duplicating bool `json:"duplicating"`
|
||||
GOP string `json:"gop"`
|
||||
|
@@ -8,7 +8,7 @@ import (
|
||||
|
||||
// Error represents an error response of the API
|
||||
type Error struct {
|
||||
Code int `json:"code" jsonschema:"required"`
|
||||
Code int `json:"code" jsonschema:"required" format:"int"`
|
||||
Message string `json:"message" jsonschema:""`
|
||||
Details []string `json:"details" jsonschema:""`
|
||||
}
|
||||
|
@@ -3,6 +3,6 @@ package api
|
||||
// FileInfo represents informatiion about a file on a filesystem
|
||||
type FileInfo struct {
|
||||
Name string `json:"name" jsonschema:"minLength=1"`
|
||||
Size int64 `json:"size_bytes" jsonschema:"minimum=0"`
|
||||
LastMod int64 `json:"last_modified" jsonschema:"minimum=0"`
|
||||
Size int64 `json:"size_bytes" jsonschema:"minimum=0" format:"int64"`
|
||||
LastMod int64 `json:"last_modified" jsonschema:"minimum=0" format:"int64"`
|
||||
}
|
||||
|
@@ -19,8 +19,8 @@ type MetricsQueryMetric struct {
|
||||
}
|
||||
|
||||
type MetricsQuery struct {
|
||||
Timerange int64 `json:"timerange_sec"`
|
||||
Interval int64 `json:"interval_sec"`
|
||||
Timerange int64 `json:"timerange_sec" format:"int64"`
|
||||
Interval int64 `json:"interval_sec" format:"int64"`
|
||||
Metrics []MetricsQueryMetric `json:"metrics"`
|
||||
}
|
||||
|
||||
@@ -51,8 +51,8 @@ func (v MetricsResponseValue) MarshalJSON() ([]byte, error) {
|
||||
}
|
||||
|
||||
type MetricsResponse struct {
|
||||
Timerange int64 `json:"timerange_sec"`
|
||||
Interval int64 `json:"interval_sec"`
|
||||
Timerange int64 `json:"timerange_sec" format:"int64"`
|
||||
Interval int64 `json:"interval_sec" format:"int64"`
|
||||
Metrics []MetricsResponseMetric `json:"metrics"`
|
||||
}
|
||||
|
||||
|
@@ -4,9 +4,9 @@ import "github.com/datarhei/core/v16/playout"
|
||||
|
||||
type PlayoutStatusIO struct {
|
||||
State string `json:"state" enums:"running,idle" jsonschema:"enum=running,enum=idle"`
|
||||
Packet uint64 `json:"packet"`
|
||||
Time uint64 `json:"time"`
|
||||
Size uint64 `json:"size_kb"`
|
||||
Packet uint64 `json:"packet" format:"uint64"`
|
||||
Time uint64 `json:"time" format:"uint64"`
|
||||
Size uint64 `json:"size_kb" format:"uint64"`
|
||||
}
|
||||
|
||||
func (i *PlayoutStatusIO) Unmarshal(io playout.StatusIO) {
|
||||
@@ -33,12 +33,12 @@ func (s *PlayoutStatusSwap) Unmarshal(swap playout.StatusSwap) {
|
||||
type PlayoutStatus struct {
|
||||
ID string `json:"id"`
|
||||
Address string `json:"url"`
|
||||
Stream uint64 `json:"stream"`
|
||||
Queue uint64 `json:"queue"`
|
||||
AQueue uint64 `json:"aqueue"`
|
||||
Dup uint64 `json:"dup"`
|
||||
Drop uint64 `json:"drop"`
|
||||
Enc uint64 `json:"enc"`
|
||||
Stream uint64 `json:"stream" format:"uint64"`
|
||||
Queue uint64 `json:"queue" format:"uint64"`
|
||||
AQueue uint64 `json:"aqueue" format:"uint64"`
|
||||
Dup uint64 `json:"dup" format:"uint64"`
|
||||
Drop uint64 `json:"drop" format:"uint64"`
|
||||
Enc uint64 `json:"enc" format:"uint64"`
|
||||
Looping bool `json:"looping"`
|
||||
Duplicating bool `json:"duplicating"`
|
||||
GOP string `json:"gop"`
|
||||
|
@@ -11,8 +11,8 @@ type ProbeIO struct {
|
||||
// common
|
||||
Address string `json:"url"`
|
||||
Format string `json:"format"`
|
||||
Index uint64 `json:"index"`
|
||||
Stream uint64 `json:"stream"`
|
||||
Index uint64 `json:"index" format:"uint64"`
|
||||
Stream uint64 `json:"stream" format:"uint64"`
|
||||
Language string `json:"language"`
|
||||
Type string `json:"type"`
|
||||
Codec string `json:"codec"`
|
||||
@@ -23,13 +23,13 @@ type ProbeIO struct {
|
||||
// video
|
||||
FPS json.Number `json:"fps" swaggertype:"number" jsonschema:"type=number"`
|
||||
Pixfmt string `json:"pix_fmt"`
|
||||
Width uint64 `json:"width"`
|
||||
Height uint64 `json:"height"`
|
||||
Width uint64 `json:"width" format:"uint64"`
|
||||
Height uint64 `json:"height" format:"uint64"`
|
||||
|
||||
// audio
|
||||
Sampling uint64 `json:"sampling_hz"`
|
||||
Sampling uint64 `json:"sampling_hz" format:"uint64"`
|
||||
Layout string `json:"layout"`
|
||||
Channels uint64 `json:"channels"`
|
||||
Channels uint64 `json:"channels" format:"uint64"`
|
||||
}
|
||||
|
||||
func (i *ProbeIO) Unmarshal(io *app.ProbeIO) {
|
||||
|
@@ -13,7 +13,7 @@ type Process struct {
|
||||
ID string `json:"id" jsonschema:"minLength=1"`
|
||||
Type string `json:"type" jsonschema:"enum=ffmpeg"`
|
||||
Reference string `json:"reference"`
|
||||
CreatedAt int64 `json:"created_at" jsonschema:"minimum=0"`
|
||||
CreatedAt int64 `json:"created_at" jsonschema:"minimum=0" format:"int64"`
|
||||
Config *ProcessConfig `json:"config,omitempty"`
|
||||
State *ProcessState `json:"state,omitempty"`
|
||||
Report *ProcessReport `json:"report,omitempty"`
|
||||
@@ -30,15 +30,15 @@ type ProcessConfigIO struct {
|
||||
|
||||
type ProcessConfigIOCleanup struct {
|
||||
Pattern string `json:"pattern" validate:"required"`
|
||||
MaxFiles uint `json:"max_files"`
|
||||
MaxFileAge uint `json:"max_file_age_seconds"`
|
||||
MaxFiles uint `json:"max_files" format:"uint"`
|
||||
MaxFileAge uint `json:"max_file_age_seconds" format:"uint"`
|
||||
PurgeOnDelete bool `json:"purge_on_delete"`
|
||||
}
|
||||
|
||||
type ProcessConfigLimits struct {
|
||||
CPU float64 `json:"cpu_usage" jsonschema:"minimum=0,maximum=100"`
|
||||
Memory uint64 `json:"memory_mbytes" jsonschema:"minimum=0"`
|
||||
WaitFor uint64 `json:"waitfor_seconds" jsonschema:"minimum=0"`
|
||||
Memory uint64 `json:"memory_mbytes" jsonschema:"minimum=0" format:"uint64"`
|
||||
WaitFor uint64 `json:"waitfor_seconds" jsonschema:"minimum=0" format:"uint64"`
|
||||
}
|
||||
|
||||
// ProcessConfig represents the configuration of an ffmpeg process
|
||||
@@ -50,9 +50,9 @@ type ProcessConfig struct {
|
||||
Output []ProcessConfigIO `json:"output" validate:"required"`
|
||||
Options []string `json:"options"`
|
||||
Reconnect bool `json:"reconnect"`
|
||||
ReconnectDelay uint64 `json:"reconnect_delay_seconds"`
|
||||
ReconnectDelay uint64 `json:"reconnect_delay_seconds" format:"uint64"`
|
||||
Autostart bool `json:"autostart"`
|
||||
StaleTimeout uint64 `json:"stale_timeout_seconds"`
|
||||
StaleTimeout uint64 `json:"stale_timeout_seconds" format:"uint64"`
|
||||
Limits ProcessConfigLimits `json:"limits"`
|
||||
}
|
||||
|
||||
@@ -188,7 +188,7 @@ func (cfg *ProcessConfig) Unmarshal(c *app.Config) {
|
||||
|
||||
// ProcessReportHistoryEntry represents the logs of a run of a restream process
|
||||
type ProcessReportHistoryEntry struct {
|
||||
CreatedAt int64 `json:"created_at"`
|
||||
CreatedAt int64 `json:"created_at" format:"int64"`
|
||||
Prelude []string `json:"prelude"`
|
||||
Log [][2]string `json:"log"`
|
||||
}
|
||||
@@ -235,11 +235,11 @@ func (report *ProcessReport) Unmarshal(l *app.Log) {
|
||||
type ProcessState struct {
|
||||
Order string `json:"order" jsonschema:"enum=start,enum=stop"`
|
||||
State string `json:"exec" jsonschema:"enum=finished,enum=starting,enum=running,enum=finishing,enum=killed,enum=failed"`
|
||||
Runtime int64 `json:"runtime_seconds" jsonschema:"minimum=0"`
|
||||
Reconnect int64 `json:"reconnect_seconds"`
|
||||
Runtime int64 `json:"runtime_seconds" jsonschema:"minimum=0" format:"int64"`
|
||||
Reconnect int64 `json:"reconnect_seconds" format:"int64"`
|
||||
LastLog string `json:"last_logline"`
|
||||
Progress *Progress `json:"progress"`
|
||||
Memory uint64 `json:"memory_bytes"`
|
||||
Memory uint64 `json:"memory_bytes" format:"uint64"`
|
||||
CPU json.Number `json:"cpu_usage" swaggertype:"number" jsonschema:"type=number"`
|
||||
Command []string `json:"command"`
|
||||
}
|
||||
|
@@ -13,29 +13,29 @@ type ProgressIO struct {
|
||||
Address string `json:"address" jsonschema:"minLength=1"`
|
||||
|
||||
// General
|
||||
Index uint64 `json:"index"`
|
||||
Stream uint64 `json:"stream"`
|
||||
Index uint64 `json:"index" format:"uint64"`
|
||||
Stream uint64 `json:"stream" format:"uint64"`
|
||||
Format string `json:"format"`
|
||||
Type string `json:"type"`
|
||||
Codec string `json:"codec"`
|
||||
Coder string `json:"coder"`
|
||||
Frame uint64 `json:"frame"`
|
||||
Frame uint64 `json:"frame" format:"uint64"`
|
||||
FPS json.Number `json:"fps" swaggertype:"number" jsonschema:"type=number"`
|
||||
Packet uint64 `json:"packet"`
|
||||
Packet uint64 `json:"packet" format:"uint64"`
|
||||
PPS json.Number `json:"pps" swaggertype:"number" jsonschema:"type=number"`
|
||||
Size uint64 `json:"size_kb"` // kbytes
|
||||
Size uint64 `json:"size_kb" format:"uint64"` // kbytes
|
||||
Bitrate json.Number `json:"bitrate_kbit" swaggertype:"number" jsonschema:"type=number"` // kbit/s
|
||||
|
||||
// Video
|
||||
Pixfmt string `json:"pix_fmt,omitempty"`
|
||||
Quantizer json.Number `json:"q,omitempty" swaggertype:"number" jsonschema:"type=number"`
|
||||
Width uint64 `json:"width,omitempty"`
|
||||
Height uint64 `json:"height,omitempty"`
|
||||
Width uint64 `json:"width,omitempty" format:"uint64"`
|
||||
Height uint64 `json:"height,omitempty" format:"uint64"`
|
||||
|
||||
// Audio
|
||||
Sampling uint64 `json:"sampling_hz,omitempty"`
|
||||
Sampling uint64 `json:"sampling_hz,omitempty" format:"uint64"`
|
||||
Layout string `json:"layout,omitempty"`
|
||||
Channels uint64 `json:"channels,omitempty"`
|
||||
Channels uint64 `json:"channels,omitempty" format:"uint64"`
|
||||
|
||||
// avstream
|
||||
AVstream *AVstream `json:"avstream"`
|
||||
@@ -79,16 +79,16 @@ func (i *ProgressIO) Unmarshal(io *app.ProgressIO) {
|
||||
type Progress struct {
|
||||
Input []ProgressIO `json:"inputs"`
|
||||
Output []ProgressIO `json:"outputs"`
|
||||
Frame uint64 `json:"frame"`
|
||||
Packet uint64 `json:"packet"`
|
||||
Frame uint64 `json:"frame" format:"uint64"`
|
||||
Packet uint64 `json:"packet" format:"uint64"`
|
||||
FPS json.Number `json:"fps" swaggertype:"number" jsonschema:"type=number"`
|
||||
Quantizer json.Number `json:"q" swaggertype:"number" jsonschema:"type=number"`
|
||||
Size uint64 `json:"size_kb"` // kbytes
|
||||
Size uint64 `json:"size_kb" format:"uint64"` // kbytes
|
||||
Time json.Number `json:"time" swaggertype:"number" jsonschema:"type=number"`
|
||||
Bitrate json.Number `json:"bitrate_kbit" swaggertype:"number" jsonschema:"type=number"` // kbit/s
|
||||
Speed json.Number `json:"speed" swaggertype:"number" jsonschema:"type=number"`
|
||||
Drop uint64 `json:"drop"`
|
||||
Dup uint64 `json:"dup"`
|
||||
Drop uint64 `json:"drop" format:"uint64"`
|
||||
Dup uint64 `json:"dup" format:"uint64"`
|
||||
}
|
||||
|
||||
// Unmarshal converts a restreamer Progress to a Progress in API representation
|
||||
|
@@ -8,9 +8,9 @@ import (
|
||||
|
||||
// SessionStats are the accumulated numbers for the session summary
|
||||
type SessionStats struct {
|
||||
TotalSessions uint64 `json:"sessions"`
|
||||
TotalRxBytes uint64 `json:"traffic_rx_mb"`
|
||||
TotalTxBytes uint64 `json:"traffic_tx_mb"`
|
||||
TotalSessions uint64 `json:"sessions" format:"uint64"`
|
||||
TotalRxBytes uint64 `json:"traffic_rx_mb" format:"uint64"`
|
||||
TotalTxBytes uint64 `json:"traffic_tx_mb" format:"uint64"`
|
||||
}
|
||||
|
||||
// SessionPeers is for the grouping by peers in the summary
|
||||
@@ -24,12 +24,12 @@ type SessionPeers struct {
|
||||
type Session struct {
|
||||
ID string `json:"id"`
|
||||
Reference string `json:"reference"`
|
||||
CreatedAt int64 `json:"created_at"`
|
||||
CreatedAt int64 `json:"created_at" format:"int64"`
|
||||
Location string `json:"local"`
|
||||
Peer string `json:"remote"`
|
||||
Extra string `json:"extra"`
|
||||
RxBytes uint64 `json:"bytes_rx"`
|
||||
TxBytes uint64 `json:"bytes_tx"`
|
||||
RxBytes uint64 `json:"bytes_rx" format:"uint64"`
|
||||
TxBytes uint64 `json:"bytes_tx" format:"uint64"`
|
||||
RxBitrate json.Number `json:"bandwidth_rx_kbit" swaggertype:"number" jsonschema:"type=number"` // kbit/s
|
||||
TxBitrate json.Number `json:"bandwidth_tx_kbit" swaggertype:"number" jsonschema:"type=number"` // kbit/s
|
||||
}
|
||||
@@ -50,10 +50,10 @@ func (s *Session) Unmarshal(sess session.Session) {
|
||||
// SessionSummaryActive represents the currently active sessions
|
||||
type SessionSummaryActive struct {
|
||||
SessionList []Session `json:"list"`
|
||||
Sessions uint64 `json:"sessions"`
|
||||
Sessions uint64 `json:"sessions" format:"uint64"`
|
||||
RxBitrate json.Number `json:"bandwidth_rx_mbit" swaggertype:"number" jsonschema:"type=number"` // mbit/s
|
||||
TxBitrate json.Number `json:"bandwidth_tx_mbit" swaggertype:"number" jsonschema:"type=number"` // mbit/s
|
||||
MaxSessions uint64 `json:"max_sessions"`
|
||||
MaxSessions uint64 `json:"max_sessions" format:"uint64"`
|
||||
MaxRxBitrate json.Number `json:"max_bandwidth_rx_mbit" swaggertype:"number" jsonschema:"type=number"` // mbit/s
|
||||
MaxTxBitrate json.Number `json:"max_bandwidth_tx_mbit" swaggertype:"number" jsonschema:"type=number"` // mbit/s
|
||||
}
|
||||
|
@@ -8,60 +8,60 @@ import (
|
||||
|
||||
// SRTStatistics represents the statistics of a SRT connection
|
||||
type SRTStatistics struct {
|
||||
MsTimeStamp uint64 `json:"timestamp_ms"` // The time elapsed, in milliseconds, since the SRT socket has been created
|
||||
MsTimeStamp uint64 `json:"timestamp_ms" format:"uint64"` // The time elapsed, in milliseconds, since the SRT socket has been created
|
||||
|
||||
// Accumulated
|
||||
|
||||
PktSent uint64 `json:"sent_pkt"` // The total number of sent DATA packets, including retransmitted packets
|
||||
PktRecv uint64 `json:"recv_pkt"` // The total number of received DATA packets, including retransmitted packets
|
||||
PktSentUnique uint64 `json:"sent_unique_pkt"` // The total number of unique DATA packets sent by the SRT sender
|
||||
PktRecvUnique uint64 `json:"recv_unique_pkt"` // The total number of unique original, retransmitted or recovered by the packet filter DATA packets received in time, decrypted without errors and, as a result, scheduled for delivery to the upstream application by the SRT receiver.
|
||||
PktSndLoss uint64 `json:"send_loss_pkt"` // The total number of data packets considered or reported as lost at the sender side. Does not correspond to the packets detected as lost at the receiver side.
|
||||
PktRcvLoss uint64 `json:"recv_loss_pkt"` // The total number of SRT DATA packets detected as presently missing (either reordered or lost) at the receiver side
|
||||
PktRetrans uint64 `json:"sent_retrans_pkt"` // The total number of retransmitted packets sent by the SRT sender
|
||||
PktRcvRetrans uint64 `json:"recv_retran_pkts"` // The total number of retransmitted packets registered at the receiver side
|
||||
PktSentACK uint64 `json:"sent_ack_pkt"` // The total number of sent ACK (Acknowledgement) control packets
|
||||
PktRecvACK uint64 `json:"recv_ack_pkt"` // The total number of received ACK (Acknowledgement) control packets
|
||||
PktSentNAK uint64 `json:"sent_nak_pkt"` // The total number of sent NAK (Negative Acknowledgement) control packets
|
||||
PktRecvNAK uint64 `json:"recv_nak_pkt"` // The total number of received NAK (Negative Acknowledgement) control packets
|
||||
PktSentKM uint64 `json:"send_km_pkt"` // The total number of sent KM (Key Material) control packets
|
||||
PktRecvKM uint64 `json:"recv_km_pkt"` // The total number of received KM (Key Material) control packets
|
||||
UsSndDuration uint64 `json:"send_duration_us"` // The total accumulated time in microseconds, during which the SRT sender has some data to transmit, including packets that have been sent, but not yet acknowledged
|
||||
PktSndDrop uint64 `json:"send_drop_pkt"` // The total number of dropped by the SRT sender DATA packets that have no chance to be delivered in time
|
||||
PktRcvDrop uint64 `json:"recv_drop_pkt"` // The total number of dropped by the SRT receiver and, as a result, not delivered to the upstream application DATA packets
|
||||
PktRcvUndecrypt uint64 `json:"recv_undecrypt_pkt"` // The total number of packets that failed to be decrypted at the receiver side
|
||||
PktSent uint64 `json:"sent_pkt" format:"uint64"` // The total number of sent DATA packets, including retransmitted packets
|
||||
PktRecv uint64 `json:"recv_pkt" format:"uint64"` // The total number of received DATA packets, including retransmitted packets
|
||||
PktSentUnique uint64 `json:"sent_unique_pkt" format:"uint64"` // The total number of unique DATA packets sent by the SRT sender
|
||||
PktRecvUnique uint64 `json:"recv_unique_pkt" format:"uint64"` // The total number of unique original, retransmitted or recovered by the packet filter DATA packets received in time, decrypted without errors and, as a result, scheduled for delivery to the upstream application by the SRT receiver.
|
||||
PktSndLoss uint64 `json:"send_loss_pkt" format:"uint64"` // The total number of data packets considered or reported as lost at the sender side. Does not correspond to the packets detected as lost at the receiver side.
|
||||
PktRcvLoss uint64 `json:"recv_loss_pkt" format:"uint64"` // The total number of SRT DATA packets detected as presently missing (either reordered or lost) at the receiver side
|
||||
PktRetrans uint64 `json:"sent_retrans_pkt" format:"uint64"` // The total number of retransmitted packets sent by the SRT sender
|
||||
PktRcvRetrans uint64 `json:"recv_retran_pkts" format:"uint64"` // The total number of retransmitted packets registered at the receiver side
|
||||
PktSentACK uint64 `json:"sent_ack_pkt" format:"uint64"` // The total number of sent ACK (Acknowledgement) control packets
|
||||
PktRecvACK uint64 `json:"recv_ack_pkt" format:"uint64"` // The total number of received ACK (Acknowledgement) control packets
|
||||
PktSentNAK uint64 `json:"sent_nak_pkt" format:"uint64"` // The total number of sent NAK (Negative Acknowledgement) control packets
|
||||
PktRecvNAK uint64 `json:"recv_nak_pkt" format:"uint64"` // The total number of received NAK (Negative Acknowledgement) control packets
|
||||
PktSentKM uint64 `json:"send_km_pkt" format:"uint64"` // The total number of sent KM (Key Material) control packets
|
||||
PktRecvKM uint64 `json:"recv_km_pkt" format:"uint64"` // The total number of received KM (Key Material) control packets
|
||||
UsSndDuration uint64 `json:"send_duration_us" format:"uint64"` // The total accumulated time in microseconds, during which the SRT sender has some data to transmit, including packets that have been sent, but not yet acknowledged
|
||||
PktSndDrop uint64 `json:"send_drop_pkt" format:"uint64"` // The total number of dropped by the SRT sender DATA packets that have no chance to be delivered in time
|
||||
PktRcvDrop uint64 `json:"recv_drop_pkt" format:"uint64"` // The total number of dropped by the SRT receiver and, as a result, not delivered to the upstream application DATA packets
|
||||
PktRcvUndecrypt uint64 `json:"recv_undecrypt_pkt" format:"uint64"` // The total number of packets that failed to be decrypted at the receiver side
|
||||
|
||||
ByteSent uint64 `json:"sent_bytes"` // Same as pktSent, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRecv uint64 `json:"recv_bytes"` // Same as pktRecv, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteSentUnique uint64 `json:"sent_unique_bytes"` // Same as pktSentUnique, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRecvUnique uint64 `json:"recv_unique_bytes"` // Same as pktRecvUnique, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRcvLoss uint64 `json:"recv_loss_bytes"` // Same as pktRcvLoss, but expressed in bytes, including payload and all the headers (IP, TCP, SRT), bytes for the presently missing (either reordered or lost) packets' payloads are estimated based on the average packet size
|
||||
ByteRetrans uint64 `json:"sent_retrans_bytes"` // Same as pktRetrans, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteSndDrop uint64 `json:"send_drop_bytes"` // Same as pktSndDrop, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRcvDrop uint64 `json:"recv_drop_bytes"` // Same as pktRcvDrop, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRcvUndecrypt uint64 `json:"recv_undecrypt_bytes"` // Same as pktRcvUndecrypt, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteSent uint64 `json:"sent_bytes" format:"uint64"` // Same as pktSent, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRecv uint64 `json:"recv_bytes" format:"uint64"` // Same as pktRecv, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteSentUnique uint64 `json:"sent_unique_bytes" format:"uint64"` // Same as pktSentUnique, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRecvUnique uint64 `json:"recv_unique_bytes" format:"uint64"` // Same as pktRecvUnique, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRcvLoss uint64 `json:"recv_loss_bytes" format:"uint64"` // Same as pktRcvLoss, but expressed in bytes, including payload and all the headers (IP, TCP, SRT), bytes for the presently missing (either reordered or lost) packets' payloads are estimated based on the average packet size
|
||||
ByteRetrans uint64 `json:"sent_retrans_bytes" format:"uint64"` // Same as pktRetrans, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteSndDrop uint64 `json:"send_drop_bytes" format:"uint64"` // Same as pktSndDrop, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRcvDrop uint64 `json:"recv_drop_bytes" format:"uint64"` // Same as pktRcvDrop, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
ByteRcvUndecrypt uint64 `json:"recv_undecrypt_bytes" format:"uint64"` // Same as pktRcvUndecrypt, but expressed in bytes, including payload and all the headers (IP, TCP, SRT)
|
||||
|
||||
// Instantaneous
|
||||
|
||||
UsPktSndPeriod float64 `json:"pkt_send_period_us"` // Current minimum time interval between which consecutive packets are sent, in microseconds
|
||||
PktFlowWindow uint64 `json:"flow_window_pkt"` // The maximum number of packets that can be "in flight"
|
||||
PktFlightSize uint64 `json:"flight_size_pkt"` // The number of packets in flight
|
||||
PktFlowWindow uint64 `json:"flow_window_pkt" format:"uint64"` // The maximum number of packets that can be "in flight"
|
||||
PktFlightSize uint64 `json:"flight_size_pkt" format:"uint64"` // The number of packets in flight
|
||||
MsRTT float64 `json:"rtt_ms"` // Smoothed round-trip time (SRTT), an exponentially-weighted moving average (EWMA) of an endpoint's RTT samples, in milliseconds
|
||||
MbpsBandwidth float64 `json:"bandwidth_mbit"` // Estimated bandwidth of the network link, in Mbps
|
||||
ByteAvailSndBuf uint64 `json:"avail_send_buf_bytes"` // The available space in the sender's buffer, in bytes
|
||||
ByteAvailRcvBuf uint64 `json:"avail_recv_buf_bytes"` // The available space in the receiver's buffer, in bytes
|
||||
ByteAvailSndBuf uint64 `json:"avail_send_buf_bytes" format:"uint64"` // The available space in the sender's buffer, in bytes
|
||||
ByteAvailRcvBuf uint64 `json:"avail_recv_buf_bytes" format:"uint64"` // The available space in the receiver's buffer, in bytes
|
||||
MbpsMaxBW float64 `json:"max_bandwidth_mbit"` // Transmission bandwidth limit, in Mbps
|
||||
ByteMSS uint64 `json:"mss_bytes"` // Maximum Segment Size (MSS), in bytes
|
||||
PktSndBuf uint64 `json:"send_buf_pkt"` // The number of packets in the sender's buffer that are already scheduled for sending or even possibly sent, but not yet acknowledged
|
||||
ByteSndBuf uint64 `json:"send_buf_bytes"` // Instantaneous (current) value of pktSndBuf, but expressed in bytes, including payload and all headers (IP, TCP, SRT)
|
||||
MsSndBuf uint64 `json:"send_buf_ms"` // The timespan (msec) of packets in the sender's buffer (unacknowledged packets)
|
||||
MsSndTsbPdDelay uint64 `json:"send_tsbpd_delay_ms"` // Timestamp-based Packet Delivery Delay value of the peer
|
||||
PktRcvBuf uint64 `json:"recv_buf_pkt"` // The number of acknowledged packets in receiver's buffer
|
||||
ByteRcvBuf uint64 `json:"recv_buf_bytes"` // Instantaneous (current) value of pktRcvBuf, expressed in bytes, including payload and all headers (IP, TCP, SRT)
|
||||
MsRcvBuf uint64 `json:"recv_buf_ms"` // The timespan (msec) of acknowledged packets in the receiver's buffer
|
||||
MsRcvTsbPdDelay uint64 `json:"recv_tsbpd_delay_ms"` // Timestamp-based Packet Delivery Delay value set on the socket via SRTO_RCVLATENCY or SRTO_LATENCY
|
||||
PktReorderTolerance uint64 `json:"reorder_tolerance_pkt"` // Instant value of the packet reorder tolerance
|
||||
PktRcvAvgBelatedTime uint64 `json:"pkt_recv_avg_belated_time_ms"` // Accumulated difference between the current time and the time-to-play of a packet that is received late
|
||||
ByteMSS uint64 `json:"mss_bytes" format:"uint64"` // Maximum Segment Size (MSS), in bytes
|
||||
PktSndBuf uint64 `json:"send_buf_pkt" format:"uint64"` // The number of packets in the sender's buffer that are already scheduled for sending or even possibly sent, but not yet acknowledged
|
||||
ByteSndBuf uint64 `json:"send_buf_bytes" format:"uint64"` // Instantaneous (current) value of pktSndBuf, but expressed in bytes, including payload and all headers (IP, TCP, SRT)
|
||||
MsSndBuf uint64 `json:"send_buf_ms" format:"uint64"` // The timespan (msec) of packets in the sender's buffer (unacknowledged packets)
|
||||
MsSndTsbPdDelay uint64 `json:"send_tsbpd_delay_ms" format:"uint64"` // Timestamp-based Packet Delivery Delay value of the peer
|
||||
PktRcvBuf uint64 `json:"recv_buf_pkt" format:"uint64"` // The number of acknowledged packets in receiver's buffer
|
||||
ByteRcvBuf uint64 `json:"recv_buf_bytes" format:"uint64"` // Instantaneous (current) value of pktRcvBuf, expressed in bytes, including payload and all headers (IP, TCP, SRT)
|
||||
MsRcvBuf uint64 `json:"recv_buf_ms" format:"uint64"` // The timespan (msec) of acknowledged packets in the receiver's buffer
|
||||
MsRcvTsbPdDelay uint64 `json:"recv_tsbpd_delay_ms" format:"uint64"` // Timestamp-based Packet Delivery Delay value set on the socket via SRTO_RCVLATENCY or SRTO_LATENCY
|
||||
PktReorderTolerance uint64 `json:"reorder_tolerance_pkt" format:"uint64"` // Instant value of the packet reorder tolerance
|
||||
PktRcvAvgBelatedTime uint64 `json:"pkt_recv_avg_belated_time_ms" format:"uint64"` // Accumulated difference between the current time and the time-to-play of a packet that is received late
|
||||
}
|
||||
|
||||
// Unmarshal converts the SRT statistics into API representation
|
||||
@@ -119,7 +119,7 @@ func (s *SRTStatistics) Unmarshal(ss *gosrt.Statistics) {
|
||||
}
|
||||
|
||||
type SRTLog struct {
|
||||
Timestamp int64 `json:"ts"`
|
||||
Timestamp int64 `json:"ts" format:"int64"`
|
||||
Message []string `json:"msg"`
|
||||
}
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
package api
|
||||
|
||||
type WidgetProcess struct {
|
||||
CurrentSessions uint64 `json:"current_sessions"`
|
||||
TotalSessions uint64 `json:"total_sessions"`
|
||||
CurrentSessions uint64 `json:"current_sessions" format:"uint64"`
|
||||
TotalSessions uint64 `json:"total_sessions" format:"uint64"`
|
||||
Uptime int64 `json:"uptime"`
|
||||
}
|
||||
|
Reference in New Issue
Block a user