Fix type changes in filter settings

This commit is contained in:
Ingo Oppermann 2022-07-14 10:24:09 +02:00
parent f610e2739e
commit 7639c4de18
No known key found for this signature in database
GPG Key ID: 2AB32426E9DD229E
6 changed files with 48 additions and 67 deletions

View File

@ -27,15 +27,6 @@ function createMapping(settings) {
return mapping;
}
function Loudness(props) {
return <Checkbox label={<Trans>Loudness Normalization</Trans>} checked={props.value} onChange={props.onChange} />;
}
Loudness.defaultProps = {
value: '',
onChange: function (event) {},
};
function Filter(props) {
const settings = init(props.settings);
@ -70,7 +61,7 @@ function Filter(props) {
return (
<React.Fragment>
<Grid item>
<Loudness value={settings.value} onChange={update('value')} allowCustom />
<Checkbox label={<Trans>Loudness Normalization</Trans>} checked={settings.value} onChange={update('value')} />
</Grid>
</React.Fragment>
);

View File

@ -12,7 +12,7 @@ import Select from '../../Select';
function init(initialState) {
const state = {
level: false,
level: 'none',
db: 0,
...initialState,
};
@ -23,12 +23,15 @@ function init(initialState) {
function createMapping(settings) {
const mapping = [];
if (settings.level) {
if (settings.level !== 'custom') {
mapping.push(`volume=volume=${settings.level}`);
} else {
switch (settings.level) {
case 'none':
break;
case 'custom':
mapping.push(`volume=volume=${settings.db}dB`);
}
break;
default:
mapping.push(`volume=volume=${parseInt(settings.level) / 100}`);
break;
}
return mapping;
@ -37,18 +40,22 @@ function createMapping(settings) {
function VolumeLevel(props) {
return (
<Select label={<Trans>Volume</Trans>} value={props.value} onChange={props.onChange}>
<MenuItem value={false}>None</MenuItem>
<MenuItem value={0.1}>10%</MenuItem>
<MenuItem value={0.2}>20%</MenuItem>
<MenuItem value={0.3}>30%</MenuItem>
<MenuItem value={0.4}>40%</MenuItem>
<MenuItem value={0.5}>50%</MenuItem>
<MenuItem value={0.6}>60%</MenuItem>
<MenuItem value={0.7}>70%</MenuItem>
<MenuItem value={0.8}>80%</MenuItem>
<MenuItem value={0.9}>90%</MenuItem>
<MenuItem value={1.0}>100%</MenuItem>
<MenuItem value="custom">Custom</MenuItem>
<MenuItem value="none">
<Trans>None</Trans>
</MenuItem>
<MenuItem value="10">10%</MenuItem>
<MenuItem value="20">20%</MenuItem>
<MenuItem value="30">30%</MenuItem>
<MenuItem value="40">40%</MenuItem>
<MenuItem value="50">50%</MenuItem>
<MenuItem value="60">60%</MenuItem>
<MenuItem value="70">70%</MenuItem>
<MenuItem value="80">80%</MenuItem>
<MenuItem value="90">90%</MenuItem>
<MenuItem value="100">100%</MenuItem>
<MenuItem value="custom">
<Trans>Custom ...</Trans>
</MenuItem>
</Select>
);
}
@ -108,10 +115,10 @@ function Filter(props) {
return (
<React.Fragment>
<Grid item xs={6}>
<VolumeLevel value={settings.level} onChange={update('level')} allowCustom />
<VolumeLevel value={settings.level} onChange={update('level')} />
</Grid>
<Grid item xs={6}>
<VolumeDB value={settings.db} onChange={update('db')} disabled={settings.level !== 'custom'} allowCustom />
<VolumeDB value={settings.db} onChange={update('db')} disabled={settings.level !== 'custom'} />
</Grid>
</React.Fragment>
);

View File

@ -7,8 +7,7 @@ import * as Transpose from './video/Transpose';
import * as HFlip from './video/HFlip';
import * as VFlip from './video/VFlip';
// Registrate Filters by:
// type: audio/video
// Register filters type: audio/video
class Registry {
constructor(type) {
this.type = type;

View File

@ -27,17 +27,6 @@ function createMapping(settings) {
return mapping;
}
function HFlip(props) {
return (
<Checkbox label={<Trans>Horizontal Flip</Trans>} checked={props.value} onChange={props.onChange} />
);
}
HFlip.defaultProps = {
value: '',
onChange: function (event) {},
};
function Filter(props) {
const settings = init(props.settings);
@ -71,7 +60,7 @@ function Filter(props) {
return (
<Grid item>
<HFlip value={settings.value} onChange={update('value')} allowCustom />
<Checkbox label={<Trans>Horizontal Flip</Trans>} checked={settings.value} onChange={update('value')} />
</Grid>
);
}

View File

@ -11,7 +11,7 @@ import Select from '../../Select';
function init(initialState) {
const state = {
value: false,
value: 'none',
...initialState,
};
@ -21,12 +21,18 @@ function init(initialState) {
function createMapping(settings) {
const mapping = [];
if (settings.value) {
if (settings.value === 3) {
mapping.push('transpose=2', 'transpose=2');
} else {
mapping.push(`transpose=${settings.value}`);
}
switch (settings.value) {
case '90':
mapping.push('transpose=dir=clock:passthrough=none');
break;
case '180':
mapping.push('transpose=dir=clock:passthrough=none', 'transpose=dir=clock:passthrough=none');
break;
case '270':
mapping.push('transpose=dir=cclock:passthrough=none');
break;
default:
break;
}
return mapping;
@ -36,10 +42,10 @@ function createMapping(settings) {
function Rotate(props) {
return (
<Select label={<Trans>Rotate</Trans>} value={props.value} onChange={props.onChange}>
<MenuItem value={false}>None</MenuItem>
<MenuItem value={1}>90°</MenuItem>
<MenuItem value={3}>180°</MenuItem>
<MenuItem value={2}>270°</MenuItem>
<MenuItem value="none">None</MenuItem>
<MenuItem value="90">90°</MenuItem>
<MenuItem value="180">180°</MenuItem>
<MenuItem value="270">270°</MenuItem>
</Select>
);
}

View File

@ -27,17 +27,6 @@ function createMapping(settings) {
return mapping;
}
function VFlip(props) {
return (
<Checkbox label={<Trans>Vertical Flip</Trans>} checked={props.value} onChange={props.onChange} />
);
}
VFlip.defaultProps = {
value: '',
onChange: function (event) {},
};
function Filter(props) {
const settings = init(props.settings);
@ -71,7 +60,7 @@ function Filter(props) {
return (
<Grid item>
<VFlip value={settings.value} onChange={update('value')} allowCustom />
<Checkbox label={<Trans>Vertical Flip</Trans>} checked={settings.value} onChange={update('value')} />
</Grid>
);
}