FFmpeg
Classes | Macros | Typedefs | Enumerations | Variables
matroskadec.c File Reference

Matroska file demuxer. More...

#include "config.h"
#include <inttypes.h>
#include <stdio.h>
#include "libavutil/avstring.h"
#include "libavutil/base64.h"
#include "libavutil/dict.h"
#include "libavutil/intfloat.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/lzo.h"
#include "libavutil/mastering_display_metadata.h"
#include "libavutil/mathematics.h"
#include "libavutil/opt.h"
#include "libavutil/time_internal.h"
#include "libavutil/spherical.h"
#include "libavcodec/bytestream.h"
#include "libavcodec/flac.h"
#include "libavcodec/mpeg4audio.h"
#include "avformat.h"
#include "avio_internal.h"
#include "internal.h"
#include "isom.h"
#include "matroska.h"
#include "oggdec.h"
#include "riff.h"
#include "rmsipr.h"
#include "qtpalette.h"

Classes

struct  EbmlSyntax
 
struct  EbmlList
 
struct  EbmlBin
 
struct  Ebml
 
struct  MatroskaTrackCompression
 
struct  MatroskaTrackEncryption
 
struct  MatroskaTrackEncoding
 
struct  MatroskaMasteringMeta
 
struct  MatroskaTrackVideoColor
 
struct  MatroskaTrackVideoProjection
 
struct  MatroskaTrackVideo
 
struct  MatroskaTrackAudio
 
struct  MatroskaTrackPlane
 
struct  MatroskaTrackOperation
 
struct  MatroskaTrack
 
struct  MatroskaAttachment
 
struct  MatroskaChapter
 
struct  MatroskaIndexPos
 
struct  MatroskaIndex
 
struct  MatroskaTag
 
struct  MatroskaTagTarget
 
struct  MatroskaTags
 
struct  MatroskaSeekhead
 
struct  MatroskaLevel
 
struct  MatroskaCluster
 
struct  MatroskaLevel1Element
 
struct  MatroskaDemuxContext
 
struct  MatroskaBlock
 
struct  CueDesc
 

Macros

#define OFFSET(x)   offsetof(MatroskaDemuxContext, x)
 

Typedefs

typedef const struct EbmlSyntax EbmlSyntax
 
typedef struct EbmlList EbmlList
 
typedef struct EbmlBin EbmlBin
 
typedef struct Ebml Ebml
 
typedef struct MatroskaTrackCompression MatroskaTrackCompression
 
typedef struct MatroskaTrackEncryption MatroskaTrackEncryption
 
typedef struct MatroskaTrackEncoding MatroskaTrackEncoding
 
typedef struct MatroskaMasteringMeta MatroskaMasteringMeta
 
typedef struct MatroskaTrackVideoColor MatroskaTrackVideoColor
 
typedef struct MatroskaTrackVideoProjection MatroskaTrackVideoProjection
 
typedef struct MatroskaTrackVideo MatroskaTrackVideo
 
typedef struct MatroskaTrackAudio MatroskaTrackAudio
 
typedef struct MatroskaTrackPlane MatroskaTrackPlane
 
typedef struct MatroskaTrackOperation MatroskaTrackOperation
 
typedef struct MatroskaTrack MatroskaTrack
 
typedef struct MatroskaAttachment MatroskaAttachment
 
typedef struct MatroskaChapter MatroskaChapter
 
typedef struct MatroskaIndexPos MatroskaIndexPos
 
typedef struct MatroskaIndex MatroskaIndex
 
typedef struct MatroskaTag MatroskaTag
 
typedef struct MatroskaTagTarget MatroskaTagTarget
 
typedef struct MatroskaTags MatroskaTags
 
typedef struct MatroskaSeekhead MatroskaSeekhead
 
typedef struct MatroskaLevel MatroskaLevel
 
typedef struct MatroskaCluster MatroskaCluster
 
typedef struct MatroskaLevel1Element MatroskaLevel1Element
 
typedef struct MatroskaDemuxContext MatroskaDemuxContext
 
typedef struct MatroskaBlock MatroskaBlock
 

Enumerations

enum  EbmlType {
  EBML_NONE, EBML_UINT, EBML_FLOAT, EBML_STR,
  EBML_UTF8, EBML_BIN, EBML_NEST, EBML_LEVEL1,
  EBML_PASS, EBML_STOP, EBML_SINT, EBML_TYPE_COUNT
}
 

Variables

AVInputFormat ff_matroska_demuxer
 
AVInputFormat ff_webm_dash_manifest_demuxer
 

Detailed Description

Matroska file demuxer.

Author
Ronald Bultje rbult.nosp@m.je@r.nosp@m.onald.nosp@m..bit.nosp@m.freak.nosp@m..net
with a little help from Moritz Bunkus morit.nosp@m.z@bu.nosp@m.nkus..nosp@m.org
totally reworked by Aurelien Jacobs aurel.nosp@m.@gnu.nosp@m.age.o.nosp@m.rg
See also
specs available on the Matroska project page: http://www.matroska.org/

Variable Documentation

§ ff_matroska_demuxer

AVInputFormat ff_matroska_demuxer
Initial value:
= {
.name = "matroska,webm",
.long_name = NULL_IF_CONFIG_SMALL("Matroska / WebM"),
.extensions = "mkv,mk3d,mka,mks",
.priv_data_size = sizeof(MatroskaDemuxContext),
.read_probe = matroska_probe,
.read_header = matroska_read_header,
.read_packet = matroska_read_packet,
.read_close = matroska_read_close,
.read_seek = matroska_read_seek,
.mime_type = "audio/webm,audio/x-matroska,video/webm,video/x-matroska"
}
Definition: matroskadec.c:316
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186

§ ff_webm_dash_manifest_demuxer

AVInputFormat ff_webm_dash_manifest_demuxer
Initial value:
= {
.name = "webm_dash_manifest",
.long_name = NULL_IF_CONFIG_SMALL("WebM DASH Manifest"),
.priv_data_size = sizeof(MatroskaDemuxContext),
.read_header = webm_dash_manifest_read_header,
.read_packet = webm_dash_manifest_read_packet,
.read_close = matroska_read_close,
.priv_class = &webm_dash_class,
}
Definition: matroskadec.c:316
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186