> For the complete documentation index, see [llms.txt](https://docs.imerit.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.imerit.net/labeling/labeling-editor-interface/video-labeling-editor.md).

# Video Labeling Editor

Overview of the Video Labeling Editor in Ango Hub

Ango Hub provides a labeling editor with which video files can be annotated.

{% hint style="info" %}
This article will exclusively go over Ango Hub’s video labeling interface. Features common to all labeling editors are instead [explained here](/labeling/labeling-editor-interface.md).
{% endhint %}

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FqPuujFrWVAT7niKFeri0%2Floreshot-20251029-103327%402x.png?alt=media&amp;token=0918d2aa-f8dd-4550-8d2d-e626becd1b5c" alt=""><figcaption></figcaption></figure>

## Overview <a href="#image-interface-elements" id="image-interface-elements"></a>

### Loading annotations

When opening a video task with saved annotations, you may see **Downloading annotations** followed by **Preparing the timeline**. Wait for the loading card to disappear before selecting, editing, or saving annotations; the editor is temporarily locked while they load.

### Supported File Types

The video labeling editor supports video assets with the following file extensions:

* .mp4
* .webm
* .mov
* .mkv

{% hint style="warning" %}
Because `.mov` playback support can vary by operating system and browser, Ango Hub cannot guarantee that every `.mov` file will play correctly on every device. When possible, prefer `.mp4` files encoded with H.264.
{% endhint %}

### Supported Labeling Tools

The video labeling editor supports following labeling tools:

**Tools**

* Bounding Box
* Rotated Bounding Box
* Polygon
* Polyline
* Segmentation
* Point
* Circle
* Skeleton

**Classifications**

* Radio
* Checkbox
* Single-Select Dropdown
* Multi-Select Dropdown
* Single-Select Tree
* Multi-Select Tree
* Text

**Relations**

* Single Relation
* Group Relation

### Playback Bar <a href="#zoom-buttons" id="zoom-buttons"></a>

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FrGdQcep2XgmyGUQwtGRe%2Fimage.png?alt=media&amp;token=c5599289-9543-4605-92b8-7a8f97e6bbf9" alt=""><figcaption></figcaption></figure>

The back and forward arrows allow you to move backwards and forwards one frame at a time, or to the beginning/end of the video. The Play ![](https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FtTM9ElPNkql7qLIEo0S5%2Fimage.png?alt=media\&token=b3fe5c81-e20e-4de8-bfdd-3307cdf62c37) button starts and stops playback. The slider allows you to move between frames by clicking on the playhead and dragging it to find the frame you need.

Turn on *Loop* from the playback controls to restart the video automatically whenever it reaches the end. You can also press G to turn Loop on or off. The Loop button is highlighted while looping is enabled.

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2Fgit-blob-9536d0c4fd1217387f0df99cbf31a236cc7afe64%2Fvideo-editor-loop-control.png?alt=media" alt="Video playback controls with the Loop button and G keyboard shortcut"><figcaption><p>Video Loop control</p></figcaption></figure>

{% hint style="info" %}
When dragging with the slider, the frame selected will only be loaded when you release the left mouse button.
{% endhint %}

You may also navigate to a specific frame by typing its number and pressing Enter or clicking outside of the text field:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2Fe32gxfujFU5kQRHSeEZF%2Fimage.png?alt=media&amp;token=1f3ad37c-c994-4a15-83fe-4c5337493c81" alt="" width="114"><figcaption></figcaption></figure>

The volume button allows you to change the volume of the audio when playing the file back. The "1x" button allows you to change the playback speed. Playback speed can be set from 0.1x to 10x, in 0.1x increments.

Your playback speed and volume remain selected when you move to another video asset using the navigation arrows, *Submit*, or *Skip*.

#### Video annotation counts <a href="#video-annotation-counts" id="video-annotation-counts"></a>

Hover over the *Video annotation counts* button in the top-right toolbar to see the following totals for the current video:

* **Total annotations** counts every frame where an object is visible, including keyframes and interpolated frames.
* **Total keyframe annotations** counts the visible keyframes across all objects.
* **Total number of annotated objects** counts the objects annotated in the video.

The totals update automatically when you add, edit, or remove annotations, change an object's frame range, or mark frames as out of view. Frames marked as out of view are excluded from the annotation and keyframe totals.

To the right, there is a three-dot menu. Clicking it will make the following options appear:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FMh8508gFpsVUwqZMp3pA%2Fimage.png?alt=media&amp;token=64785da5-01db-4928-a823-391d84062242" alt="" width="374"><figcaption></figcaption></figure>

**Annotation length** determines the default segment length when creating an annotation on the video.

**Jump size** lets you customize how many frames to jump backward or forward when using the Shift + Z/C keyboard shortcuts.

#### Videos with Variable Frame Rate <a href="#buffering" id="buffering"></a>

{% hint style="danger" %}
Ango Hub can import and open videos with variable frame rate, but **frame-level annotation on Variable Frame Rate (VFR) videos is not supported**.
{% endhint %}

See [Variable Frame Rate (VFR) Video Compatibility](/data/data-in-ango-hub/variable-frame-rate-videos.md) for details and recommendations.

In videos with variable frame rate (VFR), the following warning is displayed:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2Ffb3hloaz2scSEILFrNts%2Floreshot-20260407-093315%402x.png?alt=media&amp;token=650e70b4-b472-4f6b-94c0-e64a1434bfff" alt="" width="375"><figcaption></figcaption></figure>

#### Buffering <a href="#buffering" id="buffering"></a>

Ango Hub does not load the entire video in memory right from the start, as that would be computationally expensive, delay loading, and would use unnecessary memory. Instead, Hub loads it chunk by chunk, buffering it.

You can see how much of the video has been downloaded (buffered) by looking at the playback bar as below:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2Fr8P69kB1YtpNX3vd7yL9%2Fimage.png?alt=media&amp;token=38a52bc4-c759-47e4-96ee-a8c26721554a" alt=""><figcaption></figcaption></figure>

If your download speed is not sufficiently high to smoothly play the video, a warning will appear:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FB623Pb2SkOn6Gasiy3a1%2Fimage.png?alt=media&amp;token=effd9d54-50a8-4598-a39b-851e2dbcb579" alt="" width="563"><figcaption></figcaption></figure>

### Timeline <a href="#how-to-annotate-images" id="how-to-annotate-images"></a>

The timeline view allows you to see the annotations throughout the video in a visual way.

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FFYeHMTKSIAcCZ1IbALsV%2Fimage.png?alt=media&amp;token=38390353-f122-4aa1-81d1-ba228fecace6" alt=""><figcaption></figcaption></figure>

When you create a new annotation, a new row will be added to the timeline view. You can click on the row to select its annotation, or click on the annotation to select its row:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2Frm6T0SBY25Bn0n6zLP4D%2FKapture%202025-02-24%20at%2015.46.08.gif?alt=media&amp;token=f2479dc2-a14c-492a-8808-b4e1ed1aadc2" alt=""><figcaption></figcaption></figure>

Objects belonging to the same class are automatically grouped and collapsed. To see each object, click on the arrow:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2Fh1Sb7VzP0tvQ1s0rqFVJ%2FKapture%202025-02-24%20at%2015.57.12.gif?alt=media&amp;token=874d3855-98f9-4b62-a903-3c16da8fb11e" alt="" width="514"><figcaption></figcaption></figure>

Next to each object's class name, the first few characters of its unique Object ID will be visible. Hover over the characters to display and be able to copy to your clipboard the object's ID:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FTCiwybqbapA10e6NhiWs%2Fimage.png?alt=media&amp;token=ef53d586-6ff8-46e6-b916-3205e0ff2376" alt="" width="375"><figcaption></figcaption></figure>

You can change each object row's order in the timeline by dragging and dropping it using its handle:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FLpcKDRxXwtRKyiHYJ4my%2Fvideo-reorder.gif?alt=media&amp;token=9cfa82d9-1ff4-4f76-a5ef-4fb9dec5e71b" alt="" width="375"><figcaption></figcaption></figure>

#### Managing timeline tracks <a href="#managing-timeline-tracks" id="managing-timeline-tracks"></a>

Each object row in the timeline has a lock button and a three-dot menu with additional track actions:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2Fgit-blob-d362a6db24affe1f37260280bbcb4029454646cb%2Fvideo-timeline-track-actions.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

The lock button locks or unlocks the object track directly from the timeline row.

In the three-dot menu, **Move to top** moves the track to the top of its current class group, and **Move to bottom** moves it to the bottom of its current class group.

**Completed** marks the track green and moves it to the bottom of the object list, helping annotators keep finished tracks separate from tracks that still need work.

The **Track color** swatches let you color-code a track. To return to the track's class color, click **Reset to default color** above the swatches, or click the currently selected swatch again. Locked tracks cannot have their color changed.

Frame-specific classification rows also support move and color actions, but do not show the lock button.

#### Adding a keyframe <a href="#how-to-annotate-images" id="how-to-annotate-images"></a>

When you move the object, or change the answer in a frame-specific classification, a keyframe is added to the row, indicated by a white rhombus on the line:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2F8D6D6qgGHWS5vPU9EqrI%2FKapture%202025-02-24%20at%2015.59.12.gif?alt=media&amp;token=4237899f-6151-41db-9dc7-3e7b2cb802f2" alt=""><figcaption></figcaption></figure>

You may also add a keyframe without editing the object, by clicking on the segment, to the frame where you would like to add the frame, and then on the "Add Keyframe" button <img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FguJlWwLkTraUNZsXXRvC%2Fimage.png?alt=media&amp;token=dfb144b7-e70f-4478-b4dc-6ae025722491" alt="" data-size="line">.

#### Removing a keyframe <a href="#how-to-annotate-images" id="how-to-annotate-images"></a>

To remove the keyframe, navigate to the frame where the keyframe is located, and click on the row or the annotation of which you'd like to delete the keyframe. A *Remove Keyframe* button will appear. Click on it to remove the keyframe:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FE1bZprhdJXkOm8HWXCWb%2Fimage.png?alt=media&amp;token=b1a408ed-41b9-4a67-901b-c3f74edaa9f3" alt=""><figcaption></figcaption></figure>

#### Marking objects and classifications out of view <a href="#out-of-view" id="out-of-view"></a>

Select an object or frame-specific classification in the timeline to mark individual frames or a range of frames as out of view. Out-of-view ranges are shaded on that annotation's timeline row and are preserved when you save and reopen the task.

**A single frame**

Navigate to the frame you want to change, then click **Toggle current frame out of view** or press **W**. Only the current frame is marked out of view; the frames before and after it are unchanged. Use the same action again on that frame to bring it back into view.

You can also use **W** inside an existing out-of-view range to bring just that frame back into view. To mark a range, use one of the methods below.

**Using the start and end actions**

Navigate to the first frame where the annotation is out of view, then click **Set as start of out of view** or press **Q**.

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FI4c0X248qqCbnYPVBVih%2Fimage.png?alt=media&amp;token=18342d98-5939-4aff-8a8f-2b04944fe315" alt=""><figcaption></figcaption></figure>

Navigate to the last frame where the annotation is out of view, then click **Set as end of out of view** or press **E**. The annotation is back in view on the following frame:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FB0gvl4z3ZmSQ78qPscj1%2Fimage.png?alt=media&amp;token=65c6f9b3-1867-4c0a-9475-b98304d1c61e" alt=""><figcaption></figcaption></figure>

An out-of-view object is hidden from the video and the **Objects** list. You can still select it or open its context menu from the timeline, for example to bring it back into view.

Nested classifications for an out-of-view object remain available in its timeline context menu.

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FQuClPRLjRGgrHFeN30Y1%2Fimage.png?alt=media&amp;token=4ad56f61-ac43-457c-aa52-789de8198e1e" alt=""><figcaption></figcaption></figure>

**Using the interval button**

1. Navigate to the frame where you'd like the out of view segment to start.
2. Select the object or frame-specific classification in the timeline.
3. Click on the <img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2Fc76QotFSWfON0hOMs741%2Floreshot-20251216-143529%402x.png?alt=media&amp;token=5da52a79-8b22-4d2a-bb9f-d5b9c8c5d88c" alt="" data-size="line"> icon to start the out of view segment.
4. Navigate to frame where you'd like for your out of view segment to end.
5. Click again on the same button. All frames in that annotation in the interval will be marked as out of view.

You can also press **Alt+Q** to start the interval and **Alt+E** to end it. Starting on an out-of-view frame lets you mark an interval back in view instead.

**Frame-specific classifications**

On an out-of-view frame, the classification's existing answer stays visible in its panel, but you cannot change or delete it, or add another answer instance. Move to an in-view frame to edit it again.

When exporting with **Only Key Frames** disabled, the classification has no answer on its out-of-view frames. With **Only Key Frames** enabled, stored keyframes are included, even if they fall inside an out-of-view range. See [Export Options](/data/importing-and-exporting-annotations/exporting-annotations.md#export-options).

#### Making annotations appear for shorter/longer <a href="#how-to-annotate-images" id="how-to-annotate-images"></a>

There are two ways.

The first way is to click and drag on the handles on the left/right side of the segment to shrink/extend the annotation duration:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2F7KWGEzOYkZD6aZpg1WUz%2FKapture%202025-02-24%20at%2016.14.25.gif?alt=media&amp;token=8b0662d1-d9c2-4f4a-8075-2a0a3fefca72" alt=""><figcaption></figcaption></figure>

The second way is to click on the segment, then to navigate to the frame where you'd like the segment to start or end, and click on the "Set Annotation Start" (or "Set Annotation End") button:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2F7uJZGVveNVQzT2jTQh5m%2Fimage.png?alt=media&amp;token=8da70fec-3d20-4ceb-9d3c-6b021009201e" alt="" width="303"><figcaption></figcaption></figure>

#### Giving Annotations Names <a href="#how-to-annotate-images" id="how-to-annotate-images"></a>

You may give each annotation its own name by clicking on it and pressing "D" on your keyboard. Alternatively, you may right-click on it, click on the three-dot menu, and click on "Update Description".

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FSqYslZ1MrCv3zxSnRXd5%2Fimage.png?alt=media&amp;token=0065e712-94db-4a42-ab1e-7221fcb1a984" alt=""><figcaption></figcaption></figure>

Once you update an annotation's description, it will appear on the timeline:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FTpITFlgxAiIBN7J3PWMA%2Fimage.png?alt=media&amp;token=049e7a41-55b7-4aa9-a2ac-277654c5a876" alt="" width="375"><figcaption></figcaption></figure>

#### Split and Merge Segments <a href="#how-to-annotate-images" id="how-to-annotate-images"></a>

To split a segment into two separate segments, navigate to the frame where you'd like the segments to split and click on the "Split" button that appears:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2F3Jt001lxFWlAvCR8oglt%2FKapture%202025-03-06%20at%2013.28.35.gif?alt=media&amp;token=ed2467c5-79b1-4cfd-949c-fda6beb54332" alt=""><figcaption></figcaption></figure>

To merge two segments, click on the first segment, then Shift + click on the second segment. Then, click on the "Merge" button that appears.

#### Removing Segment Keyframes over an Interval <a href="#how-to-annotate-images" id="how-to-annotate-images"></a>

When a segment is selected, hovering over the <img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FqRaJWuxKvjucLeVXaLJM%2Fimage.png?alt=media&amp;token=5a8b1e6a-d016-43e8-9d62-7cb4c7d5836c" alt="" data-size="line"> icon will cause this dialog to appear:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FGh4UnghY8akvf9E5WJvm%2Fimage.png?alt=media&amp;token=f1477f00-ccd9-44c4-af76-616887eebee3" alt="" width="563"><figcaption></figcaption></figure>

Pick the frame interval where you would like to remove the keyframes in the selected segment and click on "Remove".

## How to Annotate Videos <a href="#how-to-annotate-images" id="how-to-annotate-images"></a>

The following are the labeling tools supported on videos:

* [Bounding Box](/labeling/labeling-tools/tools/bounding-box.md)
* [Rotated Bounding Box](/labeling/labeling-tools/tools/rotated-bounding-box.md)
* [Polygon](/labeling/labeling-tools/tools/polygon.md)
* [Polyline](/labeling/labeling-tools/tools/polyline.md)
* [Segmentation](/labeling/labeling-tools/tools/segmentation.md)
* [Point](/labeling/labeling-tools/tools/point.md)
* [Circle](/labeling/labeling-tools/tools/circle.md)
* [Skeleton](/labeling/labeling-tools/tools/skeleton.md)
* [Entity](/labeling/labeling-tools/tools/entity.md) (only in Waveform View)

From the *Tools* panel on the left sidebar, select a supported labeling tool. Then, follow the instructions found on each tool's docs page, linked to above.

If no tools are present in the project, only answer the questions in the *Classifications* panel.

### Labeling Properties Specific to Videos

#### Frame Interpolation

Between keyframes, objects are automatically linearly interpolated. So for example, if you create a keyframe on frame 1 for an object on the top-left corner of the video, and in frame 100 of the same object being in the bottom-right corner of the video, Ango Hub will automatically fill in the contents of frames between 1-100 with interpolation, having the object smoothly move from one corner to the next.

{% hint style="info" %}
Interpolation is currently only available for the Bounding Box, Polygon, Segmentation, and Point labeling tools.
{% endhint %}

#### Frame-Specific Classifications <a href="#nested-questions-and-classifications" id="nested-questions-and-classifications"></a>

When creating classifications such as [radio](/labeling/labeling-tools/classification-tools/radio.md), [dropdown](/labeling/labeling-tools/classification-tools/single-dropdown.md), and others, project managers may choose to make those classifications general (e.g., one response per video) or frame-specific (e.g. one response per frame.)

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2F2vlwm7UScjkdHJuHUNkY%2Fimage.png?alt=media&amp;token=b842811c-7fc6-4c82-b246-9ac2b35ea0c7" alt=""><figcaption></figcaption></figure>

If the classification has been marked as "frame-specific", then it will appear in the timeline and it will behave like a tool-based object with keyframes.

Select its timeline row to use the [out-of-view actions](#out-of-view), including **W** for a single frame and **Q** / **E** for a range. These actions apply to frame-specific classifications, rather than classifications answered once for the whole video.

## Annotating Audio Entities in Videos (Waveform View) <a href="#keyboard-shortcuts" id="keyboard-shortcuts"></a>

{% hint style="info" %}
Certain video formats might not have Waveform View available.
{% endhint %}

You can switch to Waveform View by pressing this button:

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2F93pkbP9rFz5HaB7gnzII%2Floreshot-20251029-102641%402x.png?alt=media&amp;token=36950f4c-8e93-44f2-8c14-aed1914e9f28" alt="" width="375"><figcaption></figcaption></figure>

In Waveform View, the timeline will be replaced with the video's sound waveform. All tools other than Entity will be disabled. Annotating audio in this view is equal to doing so in the [audio labeling editor](/labeling/labeling-editor-interface/audio-labeling-editor.md). Please consult the documentation page on the audio labeling editor for more information.

For video assets, Waveform View shows the current frame and total frame count under the time display. The frame readout uses the same 1-based frame numbering convention as the video editor's frame box.

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FeoXi7w0T6bmrxxEoGZp1%2Floreshot-20251029-104646%402x.png?alt=media&amp;token=9e5bacdf-db33-4709-9692-279621cfaab5" alt=""><figcaption></figcaption></figure>

You can switch back to the video labeling editor at any time by pressing on the same button again.

If the waveform appears as a flat line, but you were expecting a rich sound wave, please click on the *Show Soundwave* button.

<figure><img src="https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTcOUG6rfWxqGM0N4db2P%2Fuploads%2FRbAeGCYg8SRUYsIARspW%2Floreshot-20260121-123619%402x.png?alt=media&amp;token=e7331832-0859-429d-9301-1434e645266b" alt="" width="188"><figcaption></figcaption></figure>

### Keyboard Shortcuts <a href="#keyboard-shortcuts" id="keyboard-shortcuts"></a>

A full list of keyboard shortcuts is available by clicking on the *Keyboard* button on the right side of the top bar:

![](https://3895963154-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Mj9Q2CMggO8ujraHZeP%2F-Mk6GrDAPMxdxM3QCl1T%2F-Mk6H9EHe0BFD31bVpqb%2Fimage.png?alt=media\&token=367cd4e9-9481-4de8-82c3-9baab0f0421d)

### Further reading

{% content-ref url="/pages/-MjiniaaX8Bc-1CsxFDT" %}
[Audio Labeling Editor](/labeling/labeling-editor-interface/audio-labeling-editor.md)
{% endcontent-ref %}

{% content-ref url="/pages/-Mjifco2debe91gXbTS1" %}
[Labeling Editor Interface](/labeling/labeling-editor-interface.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.imerit.net/labeling/labeling-editor-interface/video-labeling-editor.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
