diff --git a/gnommo/renderer.py b/gnommo/renderer.py index fb3d089..60176c2 100644 --- a/gnommo/renderer.py +++ b/gnommo/renderer.py @@ -1252,9 +1252,16 @@ def build_filter_complex( _, first_video_source, _ = plan.narration_videos[0] use_channels = first_video_source.use_audio_channels if use_channels == "auto": - narration_path = _resolve_video_path( - videos_dir, first_video_source, shared_assets_dir, project_path - ) + # Probe the real narration audio to pick left/right/both. In concat + # mode that's the first processed segment; otherwise the single + # narration input. (plan carries the dirs — this function doesn't.) + if narration_concat and plan.narration_segments: + narration_path = plan.narration_segments[0].source_path + else: + narration_path = _resolve_video_path( + plan.videos_dir, first_video_source, + plan.shared_assets_dir, plan.project_path, + ) use_channels = _resolve_auto_channel(narration_path) channel_filter = _build_audio_channel_filter(use_channels) narration_volume = first_video_source.volume