EDL support.
More...
EDL support.
Most media files contain one or more A/V streams. In addition however, there can be additional instructions, how the media should be played back. Basically you can have "logical" streams, where the EDL tells how they are composed from phyiscal streams.
To use EDLs with gmerlin, note the following:
- If you do nothing, the streams are decoded as they are found in the file
- If a media file contains an EDL, it is returned by the get_edl() method of the input plugin.
- The EDL references streams either in the file you opened, or in external files.
- Some files contain only the EDL (with external references) but no actual media streams. In this case, the get_num_tracks() method of the input plugin will return 0.
- The gmerlin library contains a builtin EDL decoder plugin, which opens the elementary streams and decodes the EDL as if it was a simple file. It can be used by calling bg_input_plugin_load. It will fire up an EDL decoder for files, which contain only EDL data and no media. For other files, the behaviour is controlled by the prefer_edl argument.
Forward declaration for the EDL.
Create an empty EDL.
- Returns
- A newly allocated EDL
Append a track to the EDL.
- Parameters
-
- Returns
- The new track
Append an audio stream to an EDL track.
- Parameters
-
- Returns
- The new stream
Append a video stream to an EDL track.
- Parameters
-
- Returns
- The new stream
Append a text subtitle stream to an EDL track.
- Parameters
-
- Returns
- The new stream
Append an overlay subtitle stream to an EDL track.
- Parameters
-
- Returns
- The new stream
Append a segment to an EDL stream.
- Parameters
-
- Returns
- The new segment
Copy an entire EDL.
- Parameters
-
- Returns
- Copy of the EDL
Destroy an EDL and free all memory.
- Parameters
-
Dump an EDL to stderr.
- Parameters
-
Mainly used for debugging
void bg_edl_save |
( |
const bg_edl_t * |
e, |
|
|
const char * |
filename |
|
) |
| |
Save an EDL to an xml file.
- Parameters
-
e | An EDL |
filename | Name of the file |
bg_edl_t* bg_edl_load |
( |
const char * |
filename | ) |
|
Load an EDL from an xml file.
- Parameters
-
- Returns
- The EDL or NULL.
void bg_edl_append_track_info |
( |
bg_edl_t * |
e, |
|
|
const bg_track_info_t * |
info, |
|
|
const char * |
url, |
|
|
int |
index, |
|
|
int |
num_tracks, |
|
|
const char * |
name |
|
) |
| |
Append a bg_track_info_t to the EDL.
- Parameters
-
e | An EDL |
info | A track info (see bg_track_info_t) |
url | The location of the track |
index | The index of the track in the location |
num_tracks | The total number of the tracks in the location |
name | An optional name. |
This function takes a track info (e.g. from an opened input plugin) and creates an EDL track, which corresponds to that track.
If name is NULL, the track name will be constructed from the filename.