annotate edl.h @ 13168:ce046ef860da

EDL enhancement/fixes: *Some edl's code moved from mplayer.c to edl.c (mencoder will use the same functions) * slighty faster * removed MAX_EDL_ENTRIES limit (just reserve the memory we really need) * really treat edl_records as a linked list (coz it is) * edl now 'remembers' pending operations after a manual _seek_ * better way of handling Mute/Umute eliminates some nasty bugs when manual seeking (scrwed up mute/unmute order, no audio after seek, etc) * seeking while on -edl mode now _WORKS_ Patch by Reynaldo H. Verdejo Pinochet (reynaldo at opendot dot cl)
author rtognimp
date Sat, 28 Aug 2004 00:46:05 +0000
parents 41a21058e658
children 567875b88aab
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
13168
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
1 // EDL version 0.6
8531
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
2
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
3 #ifndef EDLH
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
4 #define EDLH
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
5
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
6 #define EDL_SKIP 0
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
7 #define EDL_MUTE 1
13168
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
8 #define EDL_ERROR -1
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
9 #define EDL_MUTE_START 1
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
10 #define EDL_MUTE_END 0
8531
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
11
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
12 struct edl_record {
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
13 float start_sec;
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
14 long start_frame;
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
15 float stop_sec;
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
16 long stop_frame;
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
17 float length_sec;
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
18 long length_frame;
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
19 short action;
13168
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
20 short mute_state;
8531
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
21 struct edl_record* next;
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
22 };
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
23
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
24 typedef struct edl_record* edl_record_ptr;
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
25
13168
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
26 char *edl_filename; // file to extract edl entries from (-edl)
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
27 char *edl_output_filename; // file to put edl entries in (-edlout)
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
28
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
29 int edl_check_mode(void); // we cannot do -edl and -edlout at the same time
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
30 int edl_count_entries(void); // returns total No of entries needed
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
31 int edl_parse_file(edl_record_ptr edl_records); // fills edl stack
ce046ef860da EDL enhancement/fixes:
rtognimp
parents: 9248
diff changeset
32
8531
1aa2c9b460af Merged EDL 0.5 patch - it's something like Quicktime's edit lists.
arpi
parents:
diff changeset
33 #endif