()
| 96 | } |
| 97 | |
| 98 | function checkFFprobe(): EnvironmentCheckOutcome { |
| 99 | const missingConfigured = configuredMissingDetail(FFPROBE_PATH_ENV); |
| 100 | if (missingConfigured) { |
| 101 | return { |
| 102 | name: "FFprobe", |
| 103 | ok: false, |
| 104 | level: "error", |
| 105 | title: "FFprobe not found", |
| 106 | detail: missingConfigured, |
| 107 | hint: getFFmpegInstallHint(), |
| 108 | }; |
| 109 | } |
| 110 | |
| 111 | const path = findFFprobe(); |
| 112 | if (path) { |
| 113 | return { name: "FFprobe", ok: true, level: "ok", detail: readToolVersion(path), path }; |
| 114 | } |
| 115 | |
| 116 | return { |
| 117 | name: "FFprobe", |
| 118 | ok: false, |
| 119 | level: "error", |
| 120 | title: "FFprobe not found", |
| 121 | detail: |
| 122 | "FFprobe is required to probe media assets. It ships with FFmpeg but was not found on PATH.", |
| 123 | hint: getFFmpegInstallHint(), |
| 124 | }; |
| 125 | } |
| 126 | |
| 127 | /** |
| 128 | * A Chrome binary can exist on disk yet be unlaunchable because its system |
no test coverage detected