Skip to content

feat: décompte 3-2-1 visible avant l'enregistrement d'une prise - #54

Merged
DZTic merged 5 commits into
mainfrom
feat/recording-and-timeline-nav
Jun 29, 2026
Merged

feat: décompte 3-2-1 visible avant l'enregistrement d'une prise#54
DZTic merged 5 commits into
mainfrom
feat/recording-and-timeline-nav

Conversation

@DZTic

@DZTic DZTic commented Jun 29, 2026

Copy link
Copy Markdown
Owner

Suite de #53 (qui n'avait été mergée qu'avec le 1er commit). Ajoute le décompte d'enregistrement, absent de main.

Décompte avant enregistrement

  • Overlay de compte à rebours centré sur la vidéo : cercle ambre 3 → 2 → 1, puis ● REC rouge au début du bloc.
  • Vrai 3 s : on attend que le saut de pré-roll se pose (armement) avant de démarrer, pour que le décompte parte bien de 3.
  • Garanti même au tout début : si le bloc est à moins de 3 s du début, on maintient le curseur en pause au début pendant les secondes manquantes, puis la lecture rejoint le bloc — décompte complet quand même.
  • Le bloc défile visiblement vers la ligne de synchro pendant les 3 s : la bande est alimentée par un temps virtuel (de « début − 3 s », souvent négatif, jusqu'au bloc), même sans vidéo avant lui. Le timecode reste sur le temps vidéo réel.

Vérification

  • dotnet build Release : OK (0/0).
  • Validé en usage : bloc à t≈0,2 s arrive bien depuis la droite pendant le 3-2-1.

🤖 Generated with Claude Code

DZTic and others added 5 commits June 28, 2026 22:23
Deux fonctionnalités :

1. Déplacements sur la timeline
   - molette = défilement temporel, Ctrl+molette = zoom centré sur le curseur
     (helper partagé TimelineWheel, branché sur la bande et la forme d'onde) ;
   - Home/Fin = début/fin, ↑/↓ = réplique précédente/suivante.

2. Enregistrement de prises de doublage par bloc
   - capture micro WASAPI via NAudio (MicRecorder), WAV 16-bit ;
   - pré-roll de 3 s servant de décompte : la lecture repart 3 s avant le bloc,
     l'audio n'est conservé qu'à partir du début du bloc (trim calé sur l'horloge) ;
   - lecture des prises positionnées à block.StartTime (TakeMixer), volume suivant
     la piste « Voix », virtualisation des players ;
   - champ DialogueBlock.AudioFile (rétro-compatible, omis du JSON si null) ;
   - UI : section Enregistrement dans le panneau d'édition (sélecteur de micro,
     bouton ●/■, écouter/supprimer la prise) ; raccourci R, Espace stoppe la prise.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Le pré-roll de 3 s existait mais rien ne le signalait : on ajoute un overlay
de compte à rebours centré sur la vidéo. Pendant que le curseur approche du
bloc, l'overlay ambre affiche les secondes restantes (3, 2, 1) ; au début du
bloc il bascule en « ● REC » rouge et la conservation de l'audio démarre.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Le décompte démarrait depuis la position courante du curseur car la lecture
était lancée avant que le MediaElement n'ait appliqué le saut vers « début − 3 s ».
On ajoute une phase d'armement : on attend que le saut se pose (tolérance 0,15 s,
garde-fou 1,5 s) avant de lancer la lecture. Le curseur part alors pile à 3 s du
bloc et le décompte fait un vrai 3 → 2 → 1.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Quand le bloc est à moins de 3 s du début, il n'y a pas assez de vidéo avant lui
pour un vrai pré-roll. On garantit désormais un décompte complet en deux temps :
maintien du curseur en pause au début pendant les secondes manquantes (horloge
murale), puis lecture qui rejoint le bloc (horloge vidéo). Le décompte fait
toujours 3 → 2 → 1, et l'enregistrement démarre pile au début du bloc.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…début)

Pour un bloc proche du début, le curseur restait figé pendant le décompte : le
bloc, déjà collé à la ligne de synchro, ne « venait » pas. On alimente désormais
la bande avec un temps virtuel allant de « début − 3 s » (souvent négatif) jusqu'au
bloc : le bloc défile visiblement vers la ligne rouge sur les 3 s entières, même
sans vidéo avant lui. Le timecode reste sur le temps vidéo réel.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@DZTic
DZTic merged commit 473b1f9 into main Jun 29, 2026
@DZTic
DZTic deleted the feat/recording-and-timeline-nav branch June 30, 2026 09:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant