diff options
author | Wim Taymans <wim.taymans@collabora.co.uk> | 2009-09-22 22:12:58 +0200 |
---|---|---|
committer | Wim Taymans <wim@metal.(none)> | 2009-09-28 22:16:57 +0200 |
commit | ceb7d66e2582090317aa0cf33007885985ad12cb (patch) | |
tree | a2437c56239c0b6e040562883987de6c6c185563 /gst/avi/gstavidemux.h | |
parent | 8aa38308527301b48803823cb9c4db0404ac9cb5 (diff) |
avi: implement index scanning
Implement scanning of the file when we can parse the index.
Some refactoring of common code.
Cleanups and comments.
Remove some reimplemented code.
Remove index massage code and put a FIXME where we should do something
equivalent later.
Diffstat (limited to 'gst/avi/gstavidemux.h')
-rw-r--r-- | gst/avi/gstavidemux.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gst/avi/gstavidemux.h b/gst/avi/gstavidemux.h index ff4235ff..66537a6d 100644 --- a/gst/avi/gstavidemux.h +++ b/gst/avi/gstavidemux.h @@ -57,9 +57,9 @@ typedef struct { } GstAviIndexEntry; #define GST_AVI_KEYFRAME 1 -#define ENTRY_IS_KEYFRAME(e) (((e)->flags & GST_AVI_KEYFRAME) == GST_AVI_KEYFRAME) -#define ENTRY_SET_KEYFRAME(e) ((e)->flags |= GST_AVI_KEYFRAME) -#define ENTRY_UNSET_KEYFRAME(e) ((e)->flags &= ~(GST_AVI_KEYFRAME)) +#define ENTRY_IS_KEYFRAME(e) ((e)->flags == GST_AVI_KEYFRAME) +#define ENTRY_SET_KEYFRAME(e) ((e)->flags = GST_AVI_KEYFRAME) +#define ENTRY_UNSET_KEYFRAME(e) ((e)->flags = 0) typedef struct { /* index of this streamcontext */ @@ -149,6 +149,8 @@ typedef struct _GstAviDemux { guint64 offset; gboolean abort_buffering; + /* when we loaded the indexes */ + gboolean have_index; /* index offset in the file */ guint64 index_offset; |