Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
audio_track.h
1// SPDX-FileCopyrightText: © 2018-2020 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
4#ifndef __AUDIO_AUDIO_TRACK_H__
5#define __AUDIO_AUDIO_TRACK_H__
6
7#include "dsp/channel_track.h"
8#include "dsp/track.h"
9
10typedef struct Position Position;
11typedef struct _TrackWidget TrackWidget;
12typedef struct Channel Channel;
13typedef struct ZRegion AudioRegion;
14typedef struct AutomationTrack AutomationTrack;
15typedef struct Automatable Automatable;
16typedef struct StereoPorts StereoPorts;
17
18typedef struct Track AudioTrack;
19
20void
21audio_track_init (Track * track);
22
23void
24audio_track_setup (AudioTrack * self);
25
30void
31audio_track_fill_stereo_ports_from_clip (
32 Track * self,
33 StereoPorts * stereo_ports,
34 const long g_start_frames,
35 nframes_t nframes);
36
37#endif // __AUDIO_TRACK_H__
The backend for a timeline track.
uint32_t nframes_t
Frame count.
Definition types.h:35
A Channel is part of a Track (excluding Tracks that don't have Channels) and contains information rel...
Definition channel.h:61
A Position is made up of bars.beats.sixteenths.ticks.
Definition position.h:126
L & R port, for convenience.
Definition port.h:505
The TrackWidget is split into 3 parts.
Definition track.h:109
Track to be inserted into the Project's Tracklist.
Definition track.h:177
A region (clip) is an object on the timeline that contains either MidiNote's or AudioClip's.
Definition region.h:72