fix(export): skip redundant AAC re-encode during final mux#293
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Closing this draft to keep the export queue focused on the better-validated edited-track follow-up in #297. The copy-source fast path still looks directionally useful, but I do not have enough end-to-end validation to keep it open as a separate PR right now. |
Summary
copy-sourcepath and the source audio is already AAC-compatibleRoot Cause
The final FFmpeg mux path always re-encoded audio to AAC, even when the export was simply reattaching an unedited source audio track that was already AAC-compatible for MP4. That extra transcode work made the FFmpeg subprocess the long pole near 99% finalization.
Validation
node .\\node_modules\\typescript\\bin\\tsc --noEmitnode .\\node_modules\\vitest\\vitest.mjs run electron/ipc/nativeVideoExport.test.tsnode .\\node_modules\\@biomejs\\biome\\bin\\biome check electron/electron-env.d.ts electron/preload.ts electron/ipc/nativeVideoExport.ts electron/ipc/export/native-video.ts src/lib/exporter/modernVideoExporter.ts src/lib/exporter/videoExporter.ts electron/ipc/nativeVideoExport.test.tsrecording-1776619033302.mp4:-c:a copy: average202.42 ms-c:a aac -b:a 192k: average634.17 msIssues