diff --git a/frigate/http.py b/frigate/http.py
index a5f9834eb..1649ab55e 100644
--- a/frigate/http.py
+++ b/frigate/http.py
@@ -1296,12 +1296,12 @@ def ffprobe():
output.append(
{
"return_code": ffprobe.returncode,
- "stderr": json.loads(ffprobe.stderr.decode("unicode_escape").strip())
- if ffprobe.stderr.decode()
- else {},
+ "stderr": ffprobe.stderr.decode("unicode_escape").strip()
+ if ffprobe.returncode != 0
+ else "",
"stdout": json.loads(ffprobe.stdout.decode("unicode_escape").strip())
- if ffprobe.stdout.decode()
- else {},
+ if ffprobe.returncode == 0
+ else "",
}
)
diff --git a/web/src/components/Dialog.jsx b/web/src/components/Dialog.jsx
index ad4f57d72..6bf9e3105 100644
--- a/web/src/components/Dialog.jsx
+++ b/web/src/components/Dialog.jsx
@@ -21,7 +21,7 @@ export default function Dialog({ children, portalRootID = 'dialogs' }) {
>
diff --git a/web/src/routes/System.jsx b/web/src/routes/System.jsx
index e6b383114..8a5f2c28f 100644
--- a/web/src/routes/System.jsx
+++ b/web/src/routes/System.jsx
@@ -49,14 +49,14 @@ export default function System() {
});
if (response.status === 200) {
- setState({ ...state, showFfprobe: true, ffprobe: JSON.stringify(response.data, null, 2) });
+ setState({ ...state, showFfprobe: true, ffprobe: response.data });
} else {
setState({ ...state, showFfprobe: true, ffprobe: 'There was an error getting the ffprobe output.' });
}
};
const onCopyFfprobe = async () => {
- copy(JSON.stringify(state.ffprobe, null, 2));
+ copy(JSON.stringify(state.ffprobe).replace(/[\\\s]+/gi, ''));
setState({ ...state, ffprobe: '', showFfprobe: false });
};
@@ -68,14 +68,18 @@ export default function System() {
const response = await axios.get('vainfo');
if (response.status === 200) {
- setState({ ...state, showVainfo: true, vainfo: JSON.stringify(response.data, null, 2) });
+ setState({
+ ...state,
+ showVainfo: true,
+ vainfo: response.data,
+ });
} else {
setState({ ...state, showVainfo: true, vainfo: 'There was an error getting the vainfo output.' });
}
};
const onCopyVainfo = async () => {
- copy(JSON.stringify(state.vainfo, null, 2));
+ copy(JSON.stringify(state.vainfo).replace(/[\\\s]+/gi, ''));
setState({ ...state, vainfo: '', showVainfo: false });
};
@@ -107,9 +111,52 @@ export default function System() {
{state.showFfprobe && (