Differences between revisions 2 and 4 (spanning 2 versions)
Revision 2 as of 2014-07-09 10:16:12
Size: 1448
Editor: lu_zero
Revision 4 as of 2015-03-22 14:27:50
Size: 1378
Editor: lu_zero
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:

You may find it developed on a [[http://github.com/lu-zero/libav/tree/group|topic branch]]
Line 41: Line 39:
CategoryBlueprint CategoryBlueprint CategoryBlueprintActive

This page is documenting a work in progress feature do not assume it is available on the mainline branch.


A number of containers express the concept of group of equivalent streams, it cannot be mapped correctly using the concept of Program since even if it signals a group of streams as well, it normally states the group has to be played together.

A MOV signals that only one of the streams belonging to the same group has to be played at the same time.

API Design

A group id field will be introduced to AVStream, matching the stream id semantics, thus providing facilities to manipulate and select groups in avconv.

# To ungroup all the audio tracks.
avconv -i input -c copy -groupid a:-1 output

# Groups can be used a stream specifiers 
avconv -i input -c copy -map g:1 output

Shall we use -1 for no-group, 0 for default grouping and from 1 count the groups? Or start counting the groups from 0 ?


The group id support mainly requires an additional integer field in AVStream.

An abstraction struct matching AVProgram might be not necessary.

CategoryBlueprint CategoryBlueprintActive