2026-02-27 09:55:36 -06:00
|
|
|
import type { SectionConfigOverrides } from "./types";
|
|
|
|
|
|
|
|
|
|
const audioTranscription: SectionConfigOverrides = {
|
|
|
|
|
base: {
|
|
|
|
|
sectionDocs: "/configuration/audio_detectors#audio-transcription",
|
2026-03-29 16:25:40 -05:00
|
|
|
messages: [
|
|
|
|
|
{
|
|
|
|
|
key: "audio-detection-disabled",
|
2026-09-04 08:09:44 -05:00
|
|
|
health: (ctx) =>
|
|
|
|
|
ctx.fullCameraConfig?.audio_transcription?.enabled === true,
|
2026-03-29 16:25:40 -05:00
|
|
|
messageKey: "configMessages.audioTranscription.audioDetectionDisabled",
|
|
|
|
|
severity: "warning",
|
|
|
|
|
condition: (ctx) => {
|
|
|
|
|
if (ctx.level === "camera" && ctx.fullCameraConfig) {
|
2026-05-07 08:53:07 -05:00
|
|
|
return (
|
|
|
|
|
!ctx.fullCameraConfig.ffmpeg?.inputs?.some((input) =>
|
|
|
|
|
input.roles?.includes("audio"),
|
|
|
|
|
) || ctx.fullCameraConfig.audio.enabled === false
|
|
|
|
|
);
|
2026-03-29 16:25:40 -05:00
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
],
|
2026-02-27 09:55:36 -06:00
|
|
|
restartRequired: [],
|
|
|
|
|
fieldOrder: ["enabled", "language", "device", "model_size"],
|
|
|
|
|
hiddenFields: ["enabled_in_config", "live_enabled"],
|
|
|
|
|
advancedFields: ["language", "device", "model_size"],
|
|
|
|
|
overrideFields: ["enabled", "live_enabled"],
|
2026-05-13 20:38:33 +08:00
|
|
|
uiSchema: {
|
|
|
|
|
model_size: {
|
|
|
|
|
"ui:options": { size: "xs", enumI18nPrefix: "modelSize" },
|
|
|
|
|
},
|
|
|
|
|
},
|
2026-02-27 09:55:36 -06:00
|
|
|
},
|
|
|
|
|
global: {
|
|
|
|
|
fieldOrder: ["enabled", "language", "device", "model_size"],
|
|
|
|
|
advancedFields: ["language", "device", "model_size"],
|
|
|
|
|
restartRequired: ["enabled", "language", "device", "model_size"],
|
|
|
|
|
},
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export default audioTranscription;
|