Mercurial > libedl
annotate include/edl.h @ 3:bd99b6549eb4
*: expand in readme and rename src/main to src/edl
| author | Paper <mrpapersonic@gmail.com> |
|---|---|
| date | Sun, 24 Dec 2023 20:22:54 -0500 |
| parents | d00bc412900e |
| children | c2408abb258a |
| rev | line source |
|---|---|
|
2
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
1 #ifndef __edl__edl_h |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
2 #define __edl__edl_h |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
3 |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
4 #ifdef __cplusplus |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
5 extern "C" { |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
6 #endif |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
7 |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
8 #include <stdbool.h> /* C99 required */ |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
9 #include <stddef.h> |
| 0 | 10 |
| 11 typedef enum { | |
|
2
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
12 MEDIATYPE_VIDEO, |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
13 MEDIATYPE_AUDIO |
| 0 | 14 } MediaType; |
| 15 | |
| 16 typedef struct { | |
| 17 int id; | |
| 18 int track; | |
| 19 double start_time; | |
| 20 double length; | |
| 21 double play_rate; | |
| 22 bool locked; | |
| 23 bool normalized; | |
| 24 int stretch_method; | |
| 25 bool looped; | |
| 26 bool on_ruler; | |
| 27 MediaType media_type; | |
|
2
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
28 char* filename; |
| 0 | 29 int stream; |
| 30 double stream_start; | |
| 31 double stream_length; | |
| 32 double fade_time_in; | |
| 33 double fade_time_out; | |
| 34 double sustain_gain; | |
| 35 int curve_in; | |
| 36 double gain_in; | |
| 37 int curve_out; | |
| 38 double gain_out; | |
| 39 int layer; | |
| 40 int color; | |
| 41 int curve_in_r; | |
| 42 int curve_out_r; | |
| 43 double play_pitch; | |
| 44 bool lock_pitch; | |
| 45 int first_channel; | |
| 46 int channels; | |
| 47 } EDL_line; | |
| 48 | |
| 49 typedef struct { | |
|
2
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
50 EDL_line* arr; |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
51 int capacity; |
| 0 | 52 int size; |
|
2
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
53 } EDL_file; |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
54 |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
55 EDL_file EDL_parse(const char* text, size_t length); |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
56 void EDL_free(EDL_file file); |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
57 |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
58 #ifdef __cplusplus |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
59 } |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
60 #endif |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
61 |
|
d00bc412900e
*: fix up lots of stuff and make the thing actually usable
Paper <mrpapersonic@gmail.com>
parents:
0
diff
changeset
|
62 #endif |
