rpi: rename rpiCameraJPEGQuality in rpiCameraMJPEGQuality (#4784)
This commit is contained in:
@@ -722,7 +722,7 @@ paths:
|
||||
# Codec. in case of secondary streams, it defaults to M-JPEG.
|
||||
rpiCameraCodec: auto
|
||||
# JPEG quality.
|
||||
rpiCameraJPEGQuality: 60
|
||||
rpiCameraMJPEGQuality: 60
|
||||
```
|
||||
|
||||
The secondary stream is available in path `/secondary`.
|
||||
|
||||
@@ -456,7 +456,7 @@ components:
|
||||
type: string
|
||||
rpiCameraLevel:
|
||||
type: string
|
||||
rpiCameraJPEGQuality:
|
||||
rpiCameraMJPEGQuality:
|
||||
type: integer
|
||||
|
||||
# Hooks
|
||||
|
||||
@@ -79,7 +79,7 @@ func TestConfFromFile(t *testing.T) {
|
||||
RPICameraBitrate: 5000000,
|
||||
RPICameraProfile: "main",
|
||||
RPICameraLevel: "4.1",
|
||||
RPICameraJPEGQuality: 60,
|
||||
RPICameraMJPEGQuality: 60,
|
||||
RunOnDemandStartTimeout: 5 * Duration(time.Second),
|
||||
RunOnDemandCloseAfter: 10 * Duration(time.Second),
|
||||
}, pa)
|
||||
|
||||
+52
-45
@@ -157,48 +157,49 @@ type Path struct {
|
||||
SourceRedirect string `json:"sourceRedirect"`
|
||||
|
||||
// Raspberry Pi Camera source
|
||||
RPICameraCamID uint `json:"rpiCameraCamID"`
|
||||
RPICameraSecondary bool `json:"rpiCameraSecondary"`
|
||||
RPICameraWidth uint `json:"rpiCameraWidth"`
|
||||
RPICameraHeight uint `json:"rpiCameraHeight"`
|
||||
RPICameraHFlip bool `json:"rpiCameraHFlip"`
|
||||
RPICameraVFlip bool `json:"rpiCameraVFlip"`
|
||||
RPICameraBrightness float64 `json:"rpiCameraBrightness"`
|
||||
RPICameraContrast float64 `json:"rpiCameraContrast"`
|
||||
RPICameraSaturation float64 `json:"rpiCameraSaturation"`
|
||||
RPICameraSharpness float64 `json:"rpiCameraSharpness"`
|
||||
RPICameraExposure string `json:"rpiCameraExposure"`
|
||||
RPICameraAWB string `json:"rpiCameraAWB"`
|
||||
RPICameraAWBGains []float64 `json:"rpiCameraAWBGains"`
|
||||
RPICameraDenoise string `json:"rpiCameraDenoise"`
|
||||
RPICameraShutter uint `json:"rpiCameraShutter"`
|
||||
RPICameraMetering string `json:"rpiCameraMetering"`
|
||||
RPICameraGain float64 `json:"rpiCameraGain"`
|
||||
RPICameraEV float64 `json:"rpiCameraEV"`
|
||||
RPICameraROI string `json:"rpiCameraROI"`
|
||||
RPICameraHDR bool `json:"rpiCameraHDR"`
|
||||
RPICameraTuningFile string `json:"rpiCameraTuningFile"`
|
||||
RPICameraMode string `json:"rpiCameraMode"`
|
||||
RPICameraFPS float64 `json:"rpiCameraFPS"`
|
||||
RPICameraAfMode string `json:"rpiCameraAfMode"`
|
||||
RPICameraAfRange string `json:"rpiCameraAfRange"`
|
||||
RPICameraAfSpeed string `json:"rpiCameraAfSpeed"`
|
||||
RPICameraLensPosition float64 `json:"rpiCameraLensPosition"`
|
||||
RPICameraAfWindow string `json:"rpiCameraAfWindow"`
|
||||
RPICameraFlickerPeriod uint `json:"rpiCameraFlickerPeriod"`
|
||||
RPICameraTextOverlayEnable bool `json:"rpiCameraTextOverlayEnable"`
|
||||
RPICameraTextOverlay string `json:"rpiCameraTextOverlay"`
|
||||
RPICameraCodec string `json:"rpiCameraCodec"`
|
||||
RPICameraIDRPeriod uint `json:"rpiCameraIDRPeriod"`
|
||||
RPICameraBitrate uint `json:"rpiCameraBitrate"`
|
||||
RPICameraProfile string `json:"rpiCameraProfile"`
|
||||
RPICameraLevel string `json:"rpiCameraLevel"`
|
||||
RPICameraJPEGQuality uint `json:"rpiCameraJPEGQuality"`
|
||||
RPICameraPrimaryName string `json:"-"` // filled by Check()
|
||||
RPICameraSecondaryWidth uint `json:"-"` // filled by Check()
|
||||
RPICameraSecondaryHeight uint `json:"-"` // filled by Check()
|
||||
RPICameraSecondaryFPS float64 `json:"-"` // filled by Check()
|
||||
RPICameraSecondaryJPEGQuality uint `json:"-"` // filled by Check()
|
||||
RPICameraCamID uint `json:"rpiCameraCamID"`
|
||||
RPICameraSecondary bool `json:"rpiCameraSecondary"`
|
||||
RPICameraWidth uint `json:"rpiCameraWidth"`
|
||||
RPICameraHeight uint `json:"rpiCameraHeight"`
|
||||
RPICameraHFlip bool `json:"rpiCameraHFlip"`
|
||||
RPICameraVFlip bool `json:"rpiCameraVFlip"`
|
||||
RPICameraBrightness float64 `json:"rpiCameraBrightness"`
|
||||
RPICameraContrast float64 `json:"rpiCameraContrast"`
|
||||
RPICameraSaturation float64 `json:"rpiCameraSaturation"`
|
||||
RPICameraSharpness float64 `json:"rpiCameraSharpness"`
|
||||
RPICameraExposure string `json:"rpiCameraExposure"`
|
||||
RPICameraAWB string `json:"rpiCameraAWB"`
|
||||
RPICameraAWBGains []float64 `json:"rpiCameraAWBGains"`
|
||||
RPICameraDenoise string `json:"rpiCameraDenoise"`
|
||||
RPICameraShutter uint `json:"rpiCameraShutter"`
|
||||
RPICameraMetering string `json:"rpiCameraMetering"`
|
||||
RPICameraGain float64 `json:"rpiCameraGain"`
|
||||
RPICameraEV float64 `json:"rpiCameraEV"`
|
||||
RPICameraROI string `json:"rpiCameraROI"`
|
||||
RPICameraHDR bool `json:"rpiCameraHDR"`
|
||||
RPICameraTuningFile string `json:"rpiCameraTuningFile"`
|
||||
RPICameraMode string `json:"rpiCameraMode"`
|
||||
RPICameraFPS float64 `json:"rpiCameraFPS"`
|
||||
RPICameraAfMode string `json:"rpiCameraAfMode"`
|
||||
RPICameraAfRange string `json:"rpiCameraAfRange"`
|
||||
RPICameraAfSpeed string `json:"rpiCameraAfSpeed"`
|
||||
RPICameraLensPosition float64 `json:"rpiCameraLensPosition"`
|
||||
RPICameraAfWindow string `json:"rpiCameraAfWindow"`
|
||||
RPICameraFlickerPeriod uint `json:"rpiCameraFlickerPeriod"`
|
||||
RPICameraTextOverlayEnable bool `json:"rpiCameraTextOverlayEnable"`
|
||||
RPICameraTextOverlay string `json:"rpiCameraTextOverlay"`
|
||||
RPICameraCodec string `json:"rpiCameraCodec"`
|
||||
RPICameraIDRPeriod uint `json:"rpiCameraIDRPeriod"`
|
||||
RPICameraBitrate uint `json:"rpiCameraBitrate"`
|
||||
RPICameraProfile string `json:"rpiCameraProfile"`
|
||||
RPICameraLevel string `json:"rpiCameraLevel"`
|
||||
RPICameraJPEGQuality *uint `json:"rpiCameraJPEGQuality,omitempty"` // deprecated
|
||||
RPICameraMJPEGQuality uint `json:"rpiCameraMJPEGQuality"`
|
||||
RPICameraPrimaryName string `json:"-"` // filled by Check()
|
||||
RPICameraSecondaryWidth uint `json:"-"` // filled by Check()
|
||||
RPICameraSecondaryHeight uint `json:"-"` // filled by Check()
|
||||
RPICameraSecondaryFPS float64 `json:"-"` // filled by Check()
|
||||
RPICameraSecondaryMJPEGQuality uint `json:"-"` // filled by Check()
|
||||
|
||||
// Hooks
|
||||
RunOnInit string `json:"runOnInit"`
|
||||
@@ -256,7 +257,7 @@ func (pconf *Path) setDefaults() {
|
||||
pconf.RPICameraBitrate = 5000000
|
||||
pconf.RPICameraProfile = "main"
|
||||
pconf.RPICameraLevel = "4.1"
|
||||
pconf.RPICameraJPEGQuality = 60
|
||||
pconf.RPICameraMJPEGQuality = 60
|
||||
|
||||
// Hooks
|
||||
pconf.RunOnDemandStartTimeout = 10 * Duration(time.Second)
|
||||
@@ -288,7 +289,7 @@ func (pconf Path) Clone() *Path {
|
||||
dest.RPICameraSecondaryWidth = pconf.RPICameraSecondaryWidth
|
||||
dest.RPICameraSecondaryHeight = pconf.RPICameraSecondaryHeight
|
||||
dest.RPICameraSecondaryFPS = pconf.RPICameraSecondaryFPS
|
||||
dest.RPICameraSecondaryJPEGQuality = pconf.RPICameraSecondaryJPEGQuality
|
||||
dest.RPICameraSecondaryMJPEGQuality = pconf.RPICameraSecondaryMJPEGQuality
|
||||
|
||||
return &dest
|
||||
}
|
||||
@@ -506,6 +507,12 @@ func (pconf *Path) validate(
|
||||
return fmt.Errorf("invalid 'rpiCameraLevel' value")
|
||||
}
|
||||
|
||||
if pconf.RPICameraJPEGQuality != nil {
|
||||
l.Log(logger.Warn, "parameter 'rpiCameraJPEGQuality' is deprecated"+
|
||||
" and has been replaced with 'rpiCameraMJPEGQuality'")
|
||||
pconf.RPICameraMJPEGQuality = *pconf.RPICameraJPEGQuality
|
||||
}
|
||||
|
||||
if !pconf.RPICameraSecondary {
|
||||
switch pconf.RPICameraCodec {
|
||||
case "auto", "hardwareH264", "softwareH264":
|
||||
@@ -557,7 +564,7 @@ func (pconf *Path) validate(
|
||||
primary.RPICameraSecondaryWidth = pconf.RPICameraWidth
|
||||
primary.RPICameraSecondaryHeight = pconf.RPICameraHeight
|
||||
primary.RPICameraSecondaryFPS = pconf.RPICameraFPS
|
||||
primary.RPICameraSecondaryJPEGQuality = pconf.RPICameraJPEGQuality
|
||||
primary.RPICameraSecondaryMJPEGQuality = pconf.RPICameraMJPEGQuality
|
||||
}
|
||||
|
||||
default:
|
||||
|
||||
@@ -76,7 +76,7 @@ func paramsFromConf(logLevel conf.LogLevel, cnf *conf.Path) params {
|
||||
SecondaryWidth: uint32(cnf.RPICameraSecondaryWidth),
|
||||
SecondaryHeight: uint32(cnf.RPICameraSecondaryHeight),
|
||||
SecondaryFPS: float32(cnf.RPICameraSecondaryFPS),
|
||||
SecondaryQuality: uint32(cnf.RPICameraSecondaryJPEGQuality),
|
||||
SecondaryQuality: uint32(cnf.RPICameraSecondaryMJPEGQuality),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+4
-3
@@ -611,7 +611,8 @@ pathDefaults:
|
||||
# format is the one of the strftime() function.
|
||||
rpiCameraTextOverlay: '%Y-%m-%d %H:%M:%S - MediaMTX'
|
||||
# Codec (auto, hardwareH264, softwareH264 or mjpeg).
|
||||
# When auto, hardwareH264 is used if the Raspberry has a H264 encoder, otherwise softwareH264.
|
||||
# When is "auto" and stream is primary, it defaults to hardwareH264 (if available) or softwareH264.
|
||||
# When is "auto" and stream is secondary, it defaults to mjpeg.
|
||||
rpiCameraCodec: auto
|
||||
# Period between IDR frames (when codec is hardwareH264 or softwareH264).
|
||||
rpiCameraIDRPeriod: 60
|
||||
@@ -621,8 +622,8 @@ pathDefaults:
|
||||
rpiCameraProfile: main
|
||||
# H264 level (4.0, 4.1 or 4.2).
|
||||
rpiCameraLevel: '4.1'
|
||||
# JPEG quality.
|
||||
rpiCameraJPEGQuality: 60
|
||||
# M-JPEG JPEG quality (when codec is mjpeg).
|
||||
rpiCameraMJPEGQuality: 60
|
||||
|
||||
###############################################
|
||||
# Default path settings -> Hooks
|
||||
|
||||
Reference in New Issue
Block a user