23 Commits
Author SHA1 Message Date
NetterSilverandClaude Opus 5.5 8bf939182e Only materialise kept frames when filling an H.264 frame_num gap (#2995)
Fixes #2779

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 10:15:54 -04:00
NetterSilverandClaude Haiku 5.5 b8821192e6 Keep WebVTT cues whose identifier is STYLE or REGION (#3088)
Found while testing crates/captions/src/vtt.rs:86

Co-authored-by: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-24 10:15:46 -04:00
NetterSilverandClaude Haiku 5.5 ba4bf46b28 Don't treat pieces with different settings as through edits (#3072)
Found while testing crates/edit/src/through.rs:21 (is_through_edit) and :61-102 (join_through_edits_where)

Co-authored-by: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-24 10:15:42 -04:00
NetterSilverandClaude Haiku 5.5 cda58a2b1d Read the a of a.m. and attached am as the letter name A
Found while testing crates/tts-text/src/normalize.rs:416 (parse_time am/pm suffix) and :947 (parse_wordish a.m. branch); consumed by crates/tts-text/src/phonemize.rs:398 (is_single_letter)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 18:39:43 +02:00
NetterSilverandClaude Opus 5.5 47e5f63ded Keep file URL hosts that only start with "localhost"
Found while testing crates/interchange/src/common.rs:68

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 08:14:56 +00:00
NetterSilverandClaude Opus 5.5 033caf30ff Speak the minus sign of negative currency amounts in TTS normalizer
Found while testing crates/tts-text/src/normalize.rs:78-97 (normalize, '-' / currency arms)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 08:08:27 +00:00
NetterSilverandClaude Opus 5.5 b692d0262e Reject TTML offset times that have no integer digits
Found while testing crates/captions/src/ttml.rs:358 (parse_time, offset-time branch) and :310 (decimal_ticks)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 07:47:55 +00:00
NetterSilverandClaude Haiku 5.5 58b58440eb Reject signed fields inside multi-field timecodes
Found while testing crates/time/src/lib.rs:483 (parse_timecode, multi-field branch)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 03:43:17 +02:00
NetterSilverandClaude Haiku 5.5 643371f6dd Reject signed fields in SCC timecode parser
Found while testing crates/captions/src/scc.rs:37 (parse_timecode)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 02:21:18 +02:00
NetterSilverandClaude Haiku 5.5 2736a1831e Keep WebVTT cues whose identifier starts with NOTE
Found while testing crates/captions/src/vtt.rs:75 (parse, NOTE block check)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21 02:11:19 +02:00
NetterSilverandClaude Haiku 5.5 1bda219da0 Reject non-hex characters in colour hex parsing
Found while testing crates/color/src/lib.rs:298-302 (parse_hex); used by crates/engine/src/commands.rs:3615 (json_to_param, Color params)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 17:17:23 +00:00
NetterSilverandClaude Haiku 5.5 ae313a8801 Escape tab/newline/CR in XML attribute values
Found while testing crates/interchange/src/xml.rs:7 (escape, used by start_tag for attributes)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 14:58:22 +02:00
NetterSilverandClaude Haiku 5.5 405619b417 Fix "-0.000" in Seconds time display for tiny negative times
Found while testing crates/time/src/lib.rs:423 (format_time, TimeDisplay::Seconds)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:18:13 +00:00
NetterSilverandClaude Haiku 5.5 9a93d175a4 Fix AudioSamples time display for negative times
Found while testing crates/time/src/lib.rs:418 (format_time, TimeDisplay::AudioSamples)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 11:27:22 +00:00
NetterSilverandClaude Haiku 5.5 e9f4a9ff6b Preserve per-channel shaper domain in .cube round trip
Found while testing crates/color/src/lut.rs:290 (Lut::to_cube, the `both` branch)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 10:42:03 +00:00
NetterSilverandClaude Haiku 5.5 fb5b2dc40a Refuse numbers separated by spaces or a unit in number fields
Found while testing crates/ui-egui/src/calc.rs:34-41 (eval)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-17 09:36:49 +02:00
NetterSilverandClaude Haiku 5.5 d0750c1dc4 Fix TTS reading of prices with more than two decimal digits
Found while testing crates/tts-text/src/normalize.rs:352 (parse_amount, used by parse_money at :266)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 20:11:34 +02:00
NetterSilverandClaude Haiku 5.5 d4a69262e1 Reject non-numeric --seconds and --scale in CLI render
Found while testing apps/filmcraft-cli/src/main.rs:468

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 01:29:53 +00:00
NetterSilverandClaude Haiku 5.5 c08f3bff15 Reject .3dl LUTs whose input mesh is larger than 256 entries
Found while testing crates/color/src/lut.rs:371

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 17:23:12 +00:00
NetterSilverandClaude Haiku 5.5 208465eeff Order auto-saves by real time so rotation keeps the newest
Found while testing crates/format/src/autosave.rs:74 (list_auto_saves / rotate, called from write_auto_save at :102)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-14 22:45:02 +02:00
NetterSilver a6a7f95579 Docs: update the progress docs for this change 2026-10-12 18:36:19 +02:00
NetterSilver 4a75bc05fa Add my contributor entry 2026-10-12 12:11:07 +02:00
NetterSilver eb3afad326 Transform shutter: use the sequence frame rate on adjustment layers (#1088)
Adjustment layers render their effects without an FxEnv, so Transform's
shutter fell back to 24 fps. In a 60 fps sequence a 360° shutter then
spanned 2.5 frames, blurring one frame before the move starts and one
after it ends. FxCtx now carries the sequence frame rate, set wherever a
sequence is known, and Transform uses it.
2026-10-12 12:11:03 +02:00