Skip to content

merge release 26.1 -> main (audio tutorial) - #2066

Open
RuellePaul wants to merge 18 commits into
mainfrom
release/26.1
Open

RuellePaul wants to merge 18 commits into
mainfrom
release/26.1

Conversation

@RuellePaul

Copy link
Copy Markdown
Contributor

No description provided.

paulruelle and others added 5 commits August 18, 2026 09:53
Walks through the full life cycle of an audio transcription project:
designing an interface with a segment-level transcription job and
asset-level jobs, importing recordings, importing speaker-attributed
predictions, reading the labeling interface, and exporting the labels
back (including as a SubRip subtitle file).

Documents the audio-specific parts of the label format: the `speakers`
block, the segment fields (`mid`, `startTime`/`endTime` in seconds,
`text`, `speakerId`), and how speaker identifiers behave on export.
Drop the install/instantiation boilerplate, the asset-loading aside, the
dedicated interface walkthrough section (the labeling screenshot now sits
right after the prediction import), the speaker-id caveat with its
grouping snippet, and the SubRip conversion. Renumber the remaining
sections accordingly.
…-a-sdk-tutorial-for-upcoming-audio-launch

feat(LAB-4590): create a sdk tutorial for upcoming audio launch
@RuellePaul RuellePaul self-assigned this Aug 21, 2026
@review-notebook-app

Copy link
Copy Markdown

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

Add a pixel_labeling flag to create_project for geospatial projects, where the
image is annotated exactly as captured by the sensor and geographic
coordinates come from a customer-hosted pixel-to-geo service. It is applied
through the project geospatial settings, which update_properties_in_project
now exposes, and can only be set while the project has no asset.

The Kili export unnormalizes those labels into image pixels, and GeoJSON is
refused for them since Kili holds no trustworthy geolocation to export.
…load test

pyright rejects passing ProjectDict where a plain dict is expected, and the
update_properties_in_project payload assertion has to account for the new
geospatialSettings key.
The check ran after createProject, leaving an orphan project behind, and always
raised when copying an existing project since input_type is then unset.

Pose estimation points and nested job annotations are now unnormalized too, and
geospatialSettings is omitted rather than sent as null so update_properties_in_project
keeps working against deployments that do not know the field.
Pose estimation is not among the geospatial tools, sub-jobs are limited to
classification and transcription, and `vertices` belongs to the annotation API
rather than the json response. Only boundingPoly, polyline and point remain.

Spells out the accepted geospatial_settings keys and their values.
The unnormalization overwrote `normalizedVertices` with pixel values, so a
consumer reading that key got thousands where it expected fractions.

Mirror what an image project does instead: leave `normalizedVertices`
normalized and add `vertices`, `pointPixels` and `polylinePixels`.

Keeps the helper in sync with the export service.
Pass pixelLabeling through the create mutation, which now carries the field,
instead of creating the project and then updating its geospatial settings.

update_properties_in_project loses the geospatial_settings argument it had
gained: it was only ever there to reach labelingCRSCode, and reaching it is
exactly what must not be possible once the project exists.
The dimensions were taken from the first layer that carried any. An asset can
hold a reference image of another size beside the one being labeled, and
unnormalizing against that would move every annotation without a word.

Take the first layer, which the labeling grid is built from, and export the
fractions untouched when it has no dimensions -- the existing degraded path --
rather than sliding to a layer whose grid the annotations never used.

Keeps the helper in sync with the export service.

This branch has not been deployed

No deployments
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.

5 participants