fix: fiabilité des sauvegardes, export des prises de doublage, perf - #59
Merged
Conversation
Correctifs issus d'un audit complet de l'app : Fiabilité / perte de données : - migration des prises WAV de %TEMP% vers <projet>_recordings à l'enregistrement du projet (elles pouvaient être purgées par Windows) - confirmation avant de perdre des modifications non enregistrées (fermeture de la fenêtre, Nouveau projet, Ouvrir un projet) - sauvegarde du .rsp atomique (fichier .tmp puis substitution) - menu Versions : nom du projet affiché par sauvegarde (elles étaient toutes mélangées) et rechargement de la vidéo associée à la restauration Fonctionnel : - les prises de doublage actives sont désormais incluses dans l'export vidéo (adelay + amix, gain de la piste Voix du mixeur, apad pour ne plus tronquer l'audio à la fin de la dernière prise) - import SRT : accepte aussi le point comme séparateur des millisecondes (certains outils l'utilisent au lieu de la virgule) — les temps ne retombent plus silencieusement à 0 - export SRT/VTT : arrondi correct des millisecondes (troncature binaire pouvait décaler d'1 ms) - le combo FPS reflète le FPS du projet ouvert (restait figé sur 25) - les blocs verrouillés ne bougent/se suppriment plus via Ctrl+flèches et Suppr (seule la souris respectait le verrou) - seek clavier en pause : l'horloge est figée sur la cible (plus de retour arrière transitoire pendant le seek asynchrone) Performance : - HistoryPanel et BlockEditorPanel coalescent leurs rafraîchissements (jusqu'à 60/s pendant un drag) et les diffèrent quand masqués — BlockEditorPanel faisait des File.Exists disque sur le thread UI - RhythmoBandControl : suppression des allocations par frame dans la boucle de rendu (tableau de graduations, HashSet de virtualisation) Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Résumé
Audit complet de l'app suivi de correctifs, classés par priorité.
Fiabilité / perte de données
%TEMP%vers<projet>_recordingsà l'enregistrement du projet (elles pouvaient être purgées par Windows entre-temps)..rspatomique (fichier.tmppuis substitution) — un crash en pleine écriture ne corrompt plus le projet.Fonctionnel
adelay+amix, gain de la piste Voix du mixeur,apadpour ne plus tronquer l'audio à la fin de la dernière prise) — c'était la promesse du modèle de données, jamais implémentée côté export.Performance
HistoryPaneletBlockEditorPanelcoalescent leurs rafraîchissements (jusqu'à 60/s pendant un drag) et les diffèrent quand masqués —BlockEditorPanelfaisait desFile.Existsdisque sur le thread UI.RhythmoBandControl: suppression des allocations par frame dans la boucle de rendu.Test plan
dotnet build RhythmoSync.Desktop.sln— succès, 0 avertissementdotnet test src/RhythmoSync.Core.Tests— 102/102 (dont 3 nouveaux tests couvrant l'import SRT à point et la sauvegarde atomique)🤖 Generated with Claude Code