Skip to content

Commit c095192

Browse files
committed
fix: v1.9.13 — complete ffmpeg path resolution (23 bare subprocess calls)
Every subprocess call that invoked "ffmpeg" as a bare string now uses get_ffmpeg_path() for bundled install compatibility: Routes (13 fixes): - audio.py: waveform extraction - system.py: ffmpeg version check - timeline.py: marker export - video_core.py: 7 calls (concat, merge, trim, pip, preview-frame, stabilize) - video_editing.py: 3 calls (reframe, cropdetect, face-reframe audio merge) Core modules (10 fixes): - audio.py: 2 PCM extraction calls - audio_suite.py: 2 loudness/waveform calls - highlights.py: frame extraction for vision - loudness_match.py: 4 loudnorm measure/normalize calls - scene_detect.py: threshold detection Combined with batch 37 (14 ffprobe) and batch 39 (3 ffprobe): the entire codebase now resolves ffmpeg/ffprobe via cached path helpers.
1 parent 31a106a commit c095192

29 files changed

Lines changed: 69 additions & 46 deletions

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
22

3+
## [1.9.13] - 2026-03-27
4+
5+
### Fixed (Batch 45 — Complete ffmpeg/ffprobe Path Resolution)
6+
- **23 bare `"ffmpeg"` in subprocess calls** — 13 in route files (`audio.py`, `system.py`, `timeline.py`, `video_core.py` x7, `video_editing.py` x3) and 10 in core modules (`audio.py` x2, `audio_suite.py` x2, `highlights.py`, `loudness_match.py` x4, `scene_detect.py`). All replaced with `get_ffmpeg_path()`. On bundled installs where FFmpeg is not in system PATH, every one of these would crash with "command not found".
7+
38
## [1.9.12] - 2026-03-27
49

510
### Fixed (Batch 44 — Dependencies & Hardcoded Ports)

CLAUDE.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@
180180
- Lint: `ruff check opencut/` — codebase is fully clean, pre-commit enforces on every commit
181181

182182
## Version
183-
- Current: **v1.9.12**
183+
- Current: **v1.9.13**
184184
- All version strings: `pyproject.toml`, `__init__.py`, `CSXS/manifest.xml` (ExtensionBundleVersion + Version), `com.opencut.uxp/manifest.json`, `com.opencut.uxp/main.js` (VERSION const), `index.html` version display, README badge, `package.json`
185185
- Use `python scripts/sync_version.py --set X.Y.Z` to update all 19 targets at once (including UXP files and package.json)
186186
- Use `python scripts/sync_version.py --check` in CI to verify all targets match
@@ -919,6 +919,10 @@ enhance = ["resemble-enhance>=0.0.1"]
919919
- **10 duplicate class attributes in HTML** — 10 elements had two `class=` attributes; HTML parser silently ignores the second, losing spacing utilities (mt-xs, mt-sm, mb-sm, mt-md). All merged into single attributes.
920920
- **pip install permission denied**`safe_pip_install()` failed on Windows when both normal and `--user` installs hit Errno 13 (Microsoft Store Python, OneDrive-synced user dirs, restrictive ACLs). Added `--target ~/.opencut/packages` as third fallback strategy. server.py adds `~/.opencut/packages` to `sys.path` at startup.
921921

922+
## v1.9.13 Batch 45 (Complete ffmpeg Path Resolution)
923+
- **23 bare `"ffmpeg"` in subprocess calls** — 13 in routes + 10 in core modules. ALL replaced with `get_ffmpeg_path()`. Bundled installs now work for every FFmpeg operation.
924+
- Combined with batch 37's 14 ffprobe fixes: **every** subprocess call across the entire codebase now resolves FFmpeg/ffprobe via the cached path helper.
925+
922926
## v1.9.12 Batch 44 (Dependencies & Ports)
923927
- **psutil** added to core deps (was optional but used by /system/status).
924928
- **numpy** upper bound `<2` removed (dist already ships 2.x).

Install.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ Write-Host " \___/| .__/ \___|_| |_|\____\__,_|\__|" -ForegroundColor Cyan
155155
Write-Host " |_| " -ForegroundColor Cyan
156156
Write-Host ""
157157
Write-Host " Open Source Video Editing Automation" -ForegroundColor DarkGray
158-
Write-Host " Installer v1.9.12" -ForegroundColor DarkGray
158+
Write-Host " Installer v1.9.13" -ForegroundColor DarkGray
159159

160160
$isAdmin = Test-IsAdmin
161161
if ($isAdmin) {

OpenCut.iss

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
; Fully self-contained installer — bundles server exe, ffmpeg, and CEP extension
33

44
#define MyAppName "OpenCut"
5-
#define MyAppVersion "1.9.12"
5+
#define MyAppVersion "1.9.13"
66
#define MyAppPublisher "SysAdminDoc"
77
#define MyAppURL "https://github.com/SysAdminDoc/OpenCut"
88

extension/com.opencut.panel/CSXS/manifest.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
<ExtensionManifest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
33
Version="7.0"
44
ExtensionBundleId="com.opencut.panel"
5-
ExtensionBundleVersion="1.9.12"
5+
ExtensionBundleVersion="1.9.13"
66
ExtensionBundleName="OpenCut">
77

88
<ExtensionList>
9-
<Extension Id="com.opencut.panel.main" Version="1.9.12" />
9+
<Extension Id="com.opencut.panel.main" Version="1.9.13" />
1010
</ExtensionList>
1111

1212
<ExecutionEnvironment>

extension/com.opencut.panel/client/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3262,7 +3262,7 @@ <h1 class="content-title" id="contentTitle">Cut & Clean</h1>
32623262
<div class="card-header"><div class="card-title" data-i18n="settings.about">About OpenCut</div></div>
32633263
<div class="settings-row">
32643264
<span class="settings-label">Version</span>
3265-
<span class="settings-value">1.9.12</span>
3265+
<span class="settings-value">1.9.13</span>
32663266
</div>
32673267
<div class="about-links">
32683268
<a href="https://github.com/SysAdminDoc/opencut" class="about-link" target="_blank">GitHub</a>

extension/com.opencut.panel/client/main.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* ============================================================
2-
OpenCut CEP Panel - Main Controller v1.9.12
2+
OpenCut CEP Panel - Main Controller v1.9.13
33
6-Tab Professional Toolkit
44
============================================================ */
55
(function () {

extension/com.opencut.panel/client/style.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* ============================================================
2-
OpenCut CEP Panel v1.9.12 - ULTRA PREMIUM EDITION
2+
OpenCut CEP Panel v1.9.13 - ULTRA PREMIUM EDITION
33
Next-Generation AI Editing Suite for Adobe Premiere Pro
44
============================================================ */
55

extension/com.opencut.panel/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "opencut-panel",
3-
"version": "1.9.12",
3+
"version": "1.9.13",
44
"private": true,
55
"description": "OpenCut CEP Panel for Adobe Premiere Pro",
66
"scripts": {

extension/com.opencut.uxp/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<path d="M4 2.5a3 3 0 00-1.76 5.43L7.33 11l-5.09 3.07A3 3 0 104.8 19.5a3 3 0 001.76-5.43L8.93 12.6 16.5 17V5L8.93 9.4 6.56 7.93A3 3 0 004 2.5z" fill="var(--accent)"/>
1717
</svg>
1818
<span class="oc-logo">OpenCut</span>
19-
<span class="oc-version">v1.9.12</span>
19+
<span class="oc-version">v1.9.13</span>
2020
</div>
2121
<div class="oc-header-right">
2222
<div class="oc-connection" id="connectionStatus" title="Backend connection status">

0 commit comments

Comments
 (0)