Merge branch 'dev' into cluster

This commit is contained in:
Ingo Oppermann
2023-05-05 15:56:26 +02:00
7 changed files with 64 additions and 44 deletions

View File

@@ -13,6 +13,10 @@
- Fix purging default file from HTTP cache - Fix purging default file from HTTP cache
- Fix parsing S3 storage definition from environment variable - Fix parsing S3 storage definition from environment variable
- Fix checking length of CPU time array ([#10](https://github.com/datarhei/core/issues/10)) - Fix checking length of CPU time array ([#10](https://github.com/datarhei/core/issues/10))
- Fix possible infinite loop with HLS session rewriter
- Fix not propagating process limits
- Fix URL validation if the path contains FFmpeg specific placeholders
- Fix RTMP DoS attack (thx Johannes Frank)
- Deprecate ENV names that do not correspond to JSON name - Deprecate ENV names that do not correspond to JSON name
### Core v16.11.0 > v16.12.0 ### Core v16.11.0 > v16.12.0

View File

@@ -2172,6 +2172,10 @@ const docTemplate = `{
"looping": { "looping": {
"type": "boolean" "type": "boolean"
}, },
"looping_runtime": {
"type": "integer",
"format": "uint64"
},
"output": { "output": {
"$ref": "#/definitions/api.AVstreamIO" "$ref": "#/definitions/api.AVstreamIO"
}, },

View File

@@ -2165,6 +2165,10 @@
"looping": { "looping": {
"type": "boolean" "type": "boolean"
}, },
"looping_runtime": {
"type": "integer",
"format": "uint64"
},
"output": { "output": {
"$ref": "#/definitions/api.AVstreamIO" "$ref": "#/definitions/api.AVstreamIO"
}, },

View File

@@ -22,6 +22,9 @@ definitions:
$ref: '#/definitions/api.AVstreamIO' $ref: '#/definitions/api.AVstreamIO'
looping: looping:
type: boolean type: boolean
looping_runtime:
format: uint64
type: integer
output: output:
$ref: '#/definitions/api.AVstreamIO' $ref: '#/definitions/api.AVstreamIO'
queue: queue:

View File

@@ -70,6 +70,7 @@ type ffmpegAVstream struct {
Drop uint64 `json:"drop"` Drop uint64 `json:"drop"`
Enc uint64 `json:"enc"` Enc uint64 `json:"enc"`
Looping bool `json:"looping"` Looping bool `json:"looping"`
LoopingRuntime uint64 `json:"looping_runtime"`
Duplicating bool `json:"duplicating"` Duplicating bool `json:"duplicating"`
GOP string `json:"gop"` GOP string `json:"gop"`
} }
@@ -82,6 +83,7 @@ func (av *ffmpegAVstream) export() *app.AVstream {
Dup: av.Dup, Dup: av.Dup,
Enc: av.Enc, Enc: av.Enc,
Looping: av.Looping, Looping: av.Looping,
LoopingRuntime: av.LoopingRuntime,
Duplicating: av.Duplicating, Duplicating: av.Duplicating,
GOP: av.GOP, GOP: av.GOP,
Input: av.Input.export(), Input: av.Input.export(),

View File

@@ -31,6 +31,7 @@ type AVstream struct {
Drop uint64 `json:"drop" format:"uint64"` Drop uint64 `json:"drop" format:"uint64"`
Enc uint64 `json:"enc" format:"uint64"` Enc uint64 `json:"enc" format:"uint64"`
Looping bool `json:"looping"` Looping bool `json:"looping"`
LoopingRuntime uint64 `json:"looping_runtime" format:"uint64"`
Duplicating bool `json:"duplicating"` Duplicating bool `json:"duplicating"`
GOP string `json:"gop"` GOP string `json:"gop"`
} }
@@ -46,6 +47,7 @@ func (a *AVstream) Unmarshal(av *app.AVstream) {
a.Drop = av.Drop a.Drop = av.Drop
a.Enc = av.Enc a.Enc = av.Enc
a.Looping = av.Looping a.Looping = av.Looping
a.LoopingRuntime = av.LoopingRuntime
a.Duplicating = av.Duplicating a.Duplicating = av.Duplicating
a.GOP = av.GOP a.GOP = av.GOP

View File

@@ -3,7 +3,7 @@ package app
type AVstreamIO struct { type AVstreamIO struct {
State string State string
Packet uint64 // counter Packet uint64 // counter
Time uint64 Time uint64 // sec
Size uint64 // bytes Size uint64 // bytes
} }
@@ -16,6 +16,7 @@ type AVstream struct {
Drop uint64 // counter Drop uint64 // counter
Enc uint64 // counter Enc uint64 // counter
Looping bool Looping bool
LoopingRuntime uint64 // sec
Duplicating bool Duplicating bool
GOP string GOP string
} }