Add avoid_negative_ts and http_proxy input options,updates npm dependencies

This commit is contained in:
Jan Stabenow 2023-02-22 12:08:27 +01:00
parent b39e04ec68
commit 3da606c8dd
No known key found for this signature in database
GPG Key ID: 9C22DD65A9AAF133
4 changed files with 67 additions and 28 deletions

View File

@ -2,12 +2,15 @@
## v1.6.0 > x.x.x
- Add copyts, start_at_zero and use_wallclock_as_timestamps option
- Add avoid_negative_ts input option
- Add http_proxy input option ([#513](https://github.com/datarhei/restreamer/issues/513))
- Add copyts, start_at_zero and use_wallclock_as_timestamps input options
- Add heuristic to find core address if UI is proxied
- Add Turkish translation (thanks to Ramazan Sancar) ([#22](https://github.com/datarhei/restreamer-ui/issues/22))
- Add Danish translation (Thanks to Filip Stadler and Info)
- Add Slovenian translation (thanks to Grega)
- Add Greek translation
- Mod updates npm dependencies
- Fix positioning of the deinterlacing filter ([#465](https://github.com/datarhei/restreamer/issues/465))
## v1.5.1 > v1.6.0

View File

@ -1,5 +1,5 @@
ARG NODE_IMAGE=node:19.0-alpine3.16
ARG CADDY_IMAGE=caddy:2.6.2-alpine
ARG NODE_IMAGE=node:19.6-alpine3.16
ARG CADDY_IMAGE=caddy:2.6.3-alpine
FROM $NODE_IMAGE as builder

View File

@ -5,47 +5,47 @@
"private": false,
"license": "Apache-2.0",
"dependencies": {
"@auth0/auth0-spa-js": "^2.0.0",
"@auth0/auth0-spa-js": "^2.0.3",
"@babel/plugin-syntax-flow": "^7.18.6",
"@babel/plugin-transform-react-jsx": "^7.19.0",
"@babel/plugin-transform-react-jsx": "^7.20.13",
"@emotion/react": "^11.10.5",
"@emotion/styled": "^11.10.5",
"@fontsource/dosis": "^4.5.10",
"@fontsource/dosis": "^4.5.11",
"@fontsource/roboto": "^4.5.8",
"@fortawesome/fontawesome-svg-core": "^6.2.1",
"@fortawesome/free-brands-svg-icons": "^6.2.1",
"@fortawesome/free-solid-svg-icons": "^6.2.1",
"@fortawesome/fontawesome-svg-core": "^6.3.0",
"@fortawesome/free-brands-svg-icons": "^6.3.0",
"@fortawesome/free-solid-svg-icons": "^6.3.0",
"@fortawesome/react-fontawesome": "^0.2.0",
"@lingui/core": "^3.15.0",
"@lingui/macro": "^3.15.0",
"@lingui/react": "^3.15.0",
"@mui/icons-material": "^5.10.15",
"@mui/lab": "^5.0.0-alpha.109",
"@mui/material": "^5.10.15",
"@mui/styles": "^5.10.15",
"@testing-library/dom": "^8.19.0",
"@lingui/core": "^3.17.1",
"@lingui/macro": "^3.17.1",
"@lingui/react": "^3.17.1",
"@mui/icons-material": "^5.11.9",
"@mui/lab": "^5.0.0-alpha.120",
"@mui/material": "^5.11.9",
"@mui/styles": "^5.11.9",
"@testing-library/dom": "^8.20.0",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^14.4.3",
"@types/react": "^18.0.25",
"@types/react": "^18.0.28",
"babel-plugin-macros": "^3.1.0",
"eslint": "^8.28.0",
"eslint": "^8.34.0",
"handlebars": "^4.7.7",
"jwt-decode": "^3.1.2",
"make-plural": "^7.2.0",
"react": "^18.2.0",
"react-colorful": "^5.6.1",
"react-device-detect": "^2.2.2",
"react-device-detect": "^2.2.3",
"react-dom": "^18.2.0",
"react-markdown": "^8.0.3",
"react-router-dom": "^6.4.3",
"react-markdown": "^8.0.5",
"react-router-dom": "^6.8.1",
"react-scripts": "5.0.1",
"semver": "^7.3.8",
"typescript": "^4.9.3",
"typescript": "^4.9.5",
"url-parse": "^1.5.10",
"uuid": "^9.0.0",
"video.js": "^7.20.3",
"videojs-overlay": "^2.1.5"
"video.js": "^8.0.4",
"videojs-overlay": "^3.0.0"
},
"scripts": {
"start": "react-scripts start",
@ -83,11 +83,11 @@
]
},
"devDependencies": {
"@babel/core": "^7.20.2",
"@lingui/cli": "^3.15.0",
"@babel/core": "^7.20.12",
"@lingui/cli": "^3.17.1",
"babel-core": "^7.0.0-bridge.0",
"eslint-config-react-app": "^7.0.1",
"prettier": "^2.8.0",
"prettier": "^2.8.4",
"react-error-overlay": "^6.0.11"
},
"resolutions": {}

View File

@ -67,6 +67,7 @@ const initSettings = (initialSettings) => {
forceFramerate: false,
framerate: 25,
userAgent: '',
http_proxy: '',
...settings.http,
};
@ -76,6 +77,7 @@ const initSettings = (initialSettings) => {
copyts: false,
start_at_zero: false,
use_wallclock_as_timestamps: false,
avoid_negative_ts: 'auto',
...settings.general,
};
@ -195,6 +197,10 @@ const createInputs = (settings, config, skills) => {
input.options.push('-use_wallclock_as_timestamps', '1');
}
if (ffmpeg_version === 5) {
input.options.push('-avoid_negative_ts', settings.general.avoid_negative_ts);
}
if (settings.mode === 'push') {
if (settings.push.type === 'hls') {
input.address = getLocalHLS(config);
@ -244,6 +250,10 @@ const createInputs = (settings, config, skills) => {
if (settings.http.userAgent.length !== 0) {
input.options.push('-user_agent', settings.http.userAgent);
}
if (settings.http.http_proxy.length !== 0) {
input.options.push('-http_proxy', settings.http.http_proxy);
}
}
}
/*
@ -568,6 +578,16 @@ function Pull(props) {
onChange={props.onChange('http', 'userAgent')}
/>
</Grid>
<Grid item xs={12}>
<TextField
variant="outlined"
fullWidth
label="HTTP proxy"
value={settings.http.http_proxy}
onChange={props.onChange('http', 'http_proxy')}
placeholder="https://123.123.123.123:443"
/>
</Grid>
</React.Fragment>
)}
<Grid item xs={12}>
@ -622,6 +642,22 @@ function Pull(props) {
onChange={props.onChange('general', 'use_wallclock_as_timestamps')}
/>
</Grid>
<Grid item xs={12}>
<Select type="select" label={<Trans>avoid_negative_ts</Trans>} value={settings.general.avoid_negative_ts} onChange={props.onChange('general', 'avoid_negative_ts')}>
<MenuItem value="make_non_negative">
make_non_negative
</MenuItem>
<MenuItem value="make_zero">
make_zero
</MenuItem>
<MenuItem value="auto">
auto (default)
</MenuItem>
<MenuItem value="disabled">
disabled
</MenuItem>
</Select>
</Grid>
</Grid>
</AccordionDetails>
</Accordion>