Skip to content

Commit 4060f43

Browse files
alexarjeclaude
andcommitted
Release 1.24.0: the grams put right, in number and in name
Also tags and ships 1.23.0, which had been versioned and changelogged but never tagged or published --- the consistency test's dead-link check is what noticed. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GFjgT8igZuQu4EPMvSqK6u
1 parent f2f718f commit 4060f43

4 files changed

Lines changed: 26 additions & 4 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ All notable changes to MGT-python will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8-
## [Unreleased]
8+
## [1.24.0] — 2026-08-29
99

1010
### Changed
1111
- **The grams are named by the position axis each keeps: x and y.** "Horizontal" and

‎CITATION.cff‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,5 +53,5 @@ keywords:
5353
- musical gestures
5454
license: GPL-3.0-or-later
5555
doi: "10.5281/zenodo.21965729"
56-
version: 1.23.0
56+
version: 1.24.0
5757
date-released: "2026-08-28"

‎docs/releases.md‎

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Release Notes
22

3-
The current stable release is **MGT-python 1.23.0**.
3+
The current stable release is **MGT-python 1.24.0**.
44

55
Install or upgrade from PyPI:
66

@@ -16,6 +16,28 @@ which is the single source of truth for release notes.
1616

1717
## Recent highlights
1818

19+
### 1.24.0
20+
21+
The grams put right, in number and in name.
22+
23+
Motion-vector displacements are corrected for the reference cadence: FFmpeg's `source`
24+
carries only the sign of a vector's reference, so a P-frame following a run of B-frames
25+
had reported its whole multi-frame displacement as one frame's — 3× to 4× over on
26+
B-heavy encodes. Every motion-vector number on such encodes changes; arrays saved by
27+
earlier versions should be re-derived.
28+
29+
The grams are drawn in the classic orientations and named by the position axis each
30+
keeps: the x-motiongram keeps horizontal position, shows sideways travel, and is the
31+
tall picture with time downward; the y-motiongram keeps vertical position and is the
32+
wide one. Every picture-named attribute keeps working with a warning until 2.0.
33+
34+
`multishot(animate=True)` writes the chronophotograph as a looping GIF of its own
35+
build-up, and `zoomable_page` gains an audio band — waveform and spectrogram on the
36+
shared clock — plus named, switchable video strips.
37+
38+
And `extract_tracks_parallel` no longer leaks one live ffmpeg per finished chunk; 51 of
39+
them once held 23 GB and took a 32 GB machine down mid-extraction.
40+
1941
### 1.23.0
2042

2143
Postures over time, and a capability that turned out not to be there.

‎musicalgestures/__init__.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# this attribute rather than carrying its own copy. Two static copies
55
# drift the moment a bump touches one of them, which is how ambiscape
66
# shipped three releases misreporting themselves and musiscape one.
7-
__version__ = "1.23.0"
7+
__version__ = "1.24.0"
88
from musicalgestures._input_test import mg_input_test
99
from musicalgestures._videoreader import mg_videoreader
1010
from musicalgestures._flow import Flow

0 commit comments

Comments
 (0)