gavl
Data Structures | Functions

Chapter list

Chapter list. More...

Data Structures

struct  gavl_chapter_list_t
 Chapter list. More...

Functions

GAVL_PUBLIC gavl_chapter_list_tgavl_chapter_list_create (int num_chapters)
 Create chapter list.
GAVL_PUBLIC gavl_chapter_list_tgavl_chapter_list_copy (const gavl_chapter_list_t *list)
 Copy chapter list.
GAVL_PUBLIC void gavl_chapter_list_destroy (gavl_chapter_list_t *list)
 Destroy chapter list.
GAVL_PUBLIC void gavl_chapter_list_insert (gavl_chapter_list_t *list, int index, int64_t time, const char *name)
 Insert a chapter into a chapter list.
GAVL_PUBLIC void gavl_chapter_list_delete (gavl_chapter_list_t *list, int index)
 Delete a chapter from a chapter list.
GAVL_PUBLIC int gavl_chapter_list_get_current (gavl_chapter_list_t *list, gavl_time_t time)
 Get current chapter.
GAVL_PUBLIC int gavl_chapter_list_changed (gavl_chapter_list_t *list, gavl_time_t time, int *current_chapter)
 Get current chapter.
GAVL_PUBLIC void gavl_chapter_list_dump (const gavl_chapter_list_t *list)
 Dump a chapter list to stderr.

Detailed Description

Chapter list.

Chapters in gavl are simply seekpoints with (optionally) associated names.

Since 1.5.0


Function Documentation

GAVL_PUBLIC gavl_chapter_list_t* gavl_chapter_list_create ( int  num_chapters)

Create chapter list.

Parameters:
num_chaptersInitial number of chapters
GAVL_PUBLIC gavl_chapter_list_t* gavl_chapter_list_copy ( const gavl_chapter_list_t list)

Copy chapter list.

Parameters:
listChapter list
GAVL_PUBLIC void gavl_chapter_list_destroy ( gavl_chapter_list_t list)

Destroy chapter list.

Parameters:
listA chapter list
GAVL_PUBLIC void gavl_chapter_list_insert ( gavl_chapter_list_t list,
int  index,
int64_t  time,
const char *  name 
)

Insert a chapter into a chapter list.

Parameters:
listA chapter list
indexPosition (starting with 0) where the new chapter will be placed
timeStart time of the chapter
nameChapter name (or NULL)
GAVL_PUBLIC void gavl_chapter_list_delete ( gavl_chapter_list_t list,
int  index 
)

Delete a chapter from a chapter list.

Parameters:
listA chapter list
indexPosition (starting with 0) of the chapter to delete
GAVL_PUBLIC int gavl_chapter_list_get_current ( gavl_chapter_list_t list,
gavl_time_t  time 
)

Get current chapter.

Parameters:
listA chapter list
timePlayback time
Returns:
The current chapter index

Use this function after seeking to signal a chapter change

GAVL_PUBLIC int gavl_chapter_list_changed ( gavl_chapter_list_t list,
gavl_time_t  time,
int *  current_chapter 
)

Get current chapter.

Parameters:
listA chapter list
timePlayback time
current_chapterReturns the current chapter
Returns:
1 if the chapter changed, 0 else

Use this function during linear playback to signal a chapter change

GAVL_PUBLIC void gavl_chapter_list_dump ( const gavl_chapter_list_t list)

Dump a chapter list to stderr.

Parameters:
listA chapter list

Use this for debugging