mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
expand tabs
Original commit message from CVS: expand tabs
This commit is contained in:
parent
3eceb5761b
commit
ffe763c043
27 changed files with 259 additions and 229 deletions
30
ChangeLog
30
ChangeLog
|
@ -1,3 +1,33 @@
|
|||
2005-12-06 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
|
||||
* ext/a52dec/gsta52dec.h:
|
||||
* ext/dvdread/dvdreadsrc.h:
|
||||
* ext/lame/gstlame.h:
|
||||
* ext/mad/gstid3tag.c:
|
||||
* ext/mad/gstmad.c: (gst_mad_update_info):
|
||||
* ext/mad/gstmad.h:
|
||||
* ext/mpeg2dec/gstmpeg2dec.h:
|
||||
* ext/sidplay/gstsiddec.h:
|
||||
* gst/ac3parse/gstac3parse.c:
|
||||
* gst/ac3parse/gstac3parse.h:
|
||||
* gst/asfdemux/gstasfdemux.c:
|
||||
* gst/asfdemux/gstasfdemux.h:
|
||||
* gst/iec958/ac3iec.h:
|
||||
* gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_chain):
|
||||
* gst/mpegaudioparse/gstmpegaudioparse.h:
|
||||
* gst/mpegstream/gstdvddemux.h:
|
||||
* gst/mpegstream/gstmpegclock.h:
|
||||
* gst/mpegstream/gstmpegdemux.h:
|
||||
* gst/mpegstream/gstmpegpacketize.h:
|
||||
* gst/mpegstream/gstmpegparse.c:
|
||||
* gst/mpegstream/gstmpegparse.h:
|
||||
* gst/mpegstream/gstrfc2250enc.c:
|
||||
* gst/mpegstream/gstrfc2250enc.h:
|
||||
* gst/realmedia/rmdemux.c:
|
||||
* gst/realmedia/rmdemux.h:
|
||||
* gst/synaesthesia/synaescope.c:
|
||||
expand tabs
|
||||
|
||||
=== release 0.10.0 ===
|
||||
|
||||
2005-12-05 <thomas (at) apestaart (dot) org>
|
||||
|
|
|
@ -40,28 +40,28 @@ typedef struct _GstA52Dec GstA52Dec;
|
|||
typedef struct _GstA52DecClass GstA52DecClass;
|
||||
|
||||
struct _GstA52Dec {
|
||||
GstElement element;
|
||||
GstElement element;
|
||||
|
||||
/* pads */
|
||||
GstPad *sinkpad,
|
||||
*srcpad;
|
||||
GstPad *sinkpad,
|
||||
*srcpad;
|
||||
|
||||
gboolean dvdmode;
|
||||
|
||||
int bit_rate;
|
||||
int sample_rate;
|
||||
int stream_channels;
|
||||
int request_channels;
|
||||
int using_channels;
|
||||
int bit_rate;
|
||||
int sample_rate;
|
||||
int stream_channels;
|
||||
int request_channels;
|
||||
int using_channels;
|
||||
|
||||
sample_t level;
|
||||
sample_t bias;
|
||||
gboolean dynamic_range_compression;
|
||||
sample_t *samples;
|
||||
a52_state_t *state;
|
||||
sample_t level;
|
||||
sample_t bias;
|
||||
gboolean dynamic_range_compression;
|
||||
sample_t *samples;
|
||||
a52_state_t *state;
|
||||
|
||||
GstBuffer *cache;
|
||||
GstClockTime time;
|
||||
GstBuffer *cache;
|
||||
GstClockTime time;
|
||||
};
|
||||
|
||||
struct _GstA52DecClass {
|
||||
|
|
|
@ -39,7 +39,7 @@ GstElementDetails dvdreadsrc_details;
|
|||
|
||||
/* NOTE: per-element flags start with 16 for now */
|
||||
typedef enum {
|
||||
DVDREADSRC_OPEN = (GST_ELEMENT_FLAG_LAST << 0),
|
||||
DVDREADSRC_OPEN = (GST_ELEMENT_FLAG_LAST << 0),
|
||||
|
||||
DVDREADSRC_FLAG_LAST = (GST_ELEMENT_FLAG_LAST << 2)
|
||||
} DVDReadSrcFlags;
|
||||
|
|
|
@ -42,9 +42,9 @@ extern "C" {
|
|||
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_LAME))
|
||||
|
||||
typedef enum {
|
||||
GST_LAME_OPEN = (GST_ELEMENT_FLAG_LAST << 0),
|
||||
GST_LAME_OPEN = (GST_ELEMENT_FLAG_LAST << 0),
|
||||
|
||||
GST_LAME_FLAG_LAST = (GST_ELEMENT_FLAG_LAST << 2)
|
||||
GST_LAME_FLAG_LAST = (GST_ELEMENT_FLAG_LAST << 2)
|
||||
} GstLameFlags;
|
||||
|
||||
typedef struct _GstLame GstLame;
|
||||
|
|
|
@ -401,9 +401,9 @@ gst_id3_tag_get_property (GObject * object, guint prop_id, GValue * value,
|
|||
}
|
||||
}
|
||||
|
||||
#define gst_id3_tag_set_state(tag,new_state) G_STMT_START { \
|
||||
GST_LOG_OBJECT (tag, "setting state to %s", #new_state ); \
|
||||
tag->state = new_state; \
|
||||
#define gst_id3_tag_set_state(tag,new_state) G_STMT_START { \
|
||||
GST_LOG_OBJECT (tag, "setting state to %s", #new_state ); \
|
||||
tag->state = new_state; \
|
||||
}G_STMT_END
|
||||
|
||||
static const GstQueryType *
|
||||
|
|
|
@ -931,12 +931,12 @@ gst_mad_update_info (GstMad * mad)
|
|||
struct mad_header *header = &mad->frame.header;
|
||||
gboolean changed = FALSE;
|
||||
|
||||
#define CHECK_HEADER(h1,str) \
|
||||
G_STMT_START{ \
|
||||
if (mad->header.h1 != header->h1 || mad->new_header) { \
|
||||
mad->header.h1 = header->h1; \
|
||||
changed = TRUE; \
|
||||
}; \
|
||||
#define CHECK_HEADER(h1,str) \
|
||||
G_STMT_START{ \
|
||||
if (mad->header.h1 != header->h1 || mad->new_header) { \
|
||||
mad->header.h1 = header->h1; \
|
||||
changed = TRUE; \
|
||||
}; \
|
||||
} G_STMT_END
|
||||
|
||||
/* update average bitrate */
|
||||
|
@ -1047,11 +1047,11 @@ gst_mad_check_restart (GstMad * mad)
|
|||
*/
|
||||
#define BE_32(x) GST_READ_UINT32_BE(x)
|
||||
|
||||
#define FOURCC_TAG( ch0, ch1, ch2, ch3 ) \
|
||||
( (long)(unsigned char)(ch3) | \
|
||||
( (long)(unsigned char)(ch2) << 8 ) | \
|
||||
( (long)(unsigned char)(ch1) << 16 ) | \
|
||||
( (long)(unsigned char)(ch0) << 24 ) )
|
||||
#define FOURCC_TAG( ch0, ch1, ch2, ch3 ) \
|
||||
( (long)(unsigned char)(ch3) | \
|
||||
( (long)(unsigned char)(ch2) << 8 ) | \
|
||||
( (long)(unsigned char)(ch1) << 16 ) | \
|
||||
( (long)(unsigned char)(ch0) << 24 ) )
|
||||
|
||||
/* Xing header stuff */
|
||||
#define XING_TAG FOURCC_TAG('X', 'i', 'n', 'g')
|
||||
|
|
|
@ -29,11 +29,11 @@
|
|||
G_BEGIN_DECLS
|
||||
|
||||
|
||||
GType gst_mad_get_type (void);
|
||||
GType gst_id3_tag_get_type (guint type);
|
||||
GType gst_mad_get_type (void);
|
||||
GType gst_id3_tag_get_type (guint type);
|
||||
|
||||
GstTagList* gst_mad_id3_to_tag_list (const struct id3_tag * tag);
|
||||
struct id3_tag * gst_mad_tag_list_to_id3_tag (GstTagList * list);
|
||||
GstTagList* gst_mad_id3_to_tag_list (const struct id3_tag * tag);
|
||||
struct id3_tag * gst_mad_tag_list_to_id3_tag (GstTagList * list);
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
|
|
|
@ -56,55 +56,55 @@ typedef enum
|
|||
|
||||
typedef enum
|
||||
{
|
||||
MPEG2DEC_DISC_NONE = 0,
|
||||
MPEG2DEC_DISC_NONE = 0,
|
||||
MPEG2DEC_DISC_NEW_PICTURE,
|
||||
MPEG2DEC_DISC_NEW_KEYFRAME
|
||||
} DiscontState;
|
||||
|
||||
struct _GstMpeg2dec {
|
||||
GstElement element;
|
||||
GstElement element;
|
||||
|
||||
/* pads */
|
||||
GstPad *sinkpad,
|
||||
*srcpad,
|
||||
*userdatapad;
|
||||
GstPad *sinkpad,
|
||||
*srcpad,
|
||||
*userdatapad;
|
||||
|
||||
mpeg2dec_t *decoder;
|
||||
mpeg2dec_t *decoder;
|
||||
const mpeg2_info_t *info;
|
||||
|
||||
gboolean closed;
|
||||
gboolean have_fbuf;
|
||||
gboolean closed;
|
||||
gboolean have_fbuf;
|
||||
|
||||
GstBuffer *buffers[GST_MPEG2DEC_NUM_BUFS];
|
||||
|
||||
DiscontState discont_state;
|
||||
DiscontState discont_state;
|
||||
|
||||
/* the timestamp of the next frame */
|
||||
GstClockTime next_time;
|
||||
gint64 segment_start;
|
||||
gint64 segment_end;
|
||||
gint64 segment_start;
|
||||
gint64 segment_end;
|
||||
|
||||
/* video state */
|
||||
Mpeg2decFormat format;
|
||||
gint width;
|
||||
gint height;
|
||||
gint decoded_width;
|
||||
gint decoded_height;
|
||||
gint pixel_width;
|
||||
gint pixel_height;
|
||||
gint frame_rate_code;
|
||||
gint64 total_frames;
|
||||
gint64 frame_period;
|
||||
gint width;
|
||||
gint height;
|
||||
gint decoded_width;
|
||||
gint decoded_height;
|
||||
gint pixel_width;
|
||||
gint pixel_height;
|
||||
gint frame_rate_code;
|
||||
gint64 total_frames;
|
||||
gint64 frame_period;
|
||||
|
||||
guint64 offset;
|
||||
gint fps_n;
|
||||
gint fps_d;
|
||||
gboolean need_sequence;
|
||||
gint fps_n;
|
||||
gint fps_d;
|
||||
gboolean need_sequence;
|
||||
|
||||
GstEvent *pending_event;
|
||||
GstEvent *pending_event;
|
||||
|
||||
GstIndex *index;
|
||||
gint index_id;
|
||||
GstIndex *index;
|
||||
gint index_id;
|
||||
};
|
||||
|
||||
struct _GstMpeg2decClass {
|
||||
|
|
|
@ -44,24 +44,24 @@ typedef struct _GstSidDec GstSidDec;
|
|||
typedef struct _GstSidDecClass GstSidDecClass;
|
||||
|
||||
struct _GstSidDec {
|
||||
GstElement element;
|
||||
GstElement element;
|
||||
|
||||
/* pads */
|
||||
GstPad *sinkpad,
|
||||
*srcpad;
|
||||
GstPad *sinkpad,
|
||||
*srcpad;
|
||||
|
||||
guchar *tune_buffer;
|
||||
gint tune_len;
|
||||
gint tune_number;
|
||||
guint64 total_bytes;
|
||||
guchar *tune_buffer;
|
||||
gint tune_len;
|
||||
gint tune_number;
|
||||
guint64 total_bytes;
|
||||
|
||||
emuEngine *engine;
|
||||
sidTune *tune;
|
||||
emuConfig *config;
|
||||
emuEngine *engine;
|
||||
sidTune *tune;
|
||||
emuConfig *config;
|
||||
|
||||
gulong blocksize;
|
||||
gulong blocksize;
|
||||
|
||||
GstCaps *metadata;
|
||||
GstCaps *metadata;
|
||||
};
|
||||
|
||||
struct _GstSidDecClass {
|
||||
|
@ -69,7 +69,7 @@ struct _GstSidDecClass {
|
|||
};
|
||||
|
||||
GType gst_siddec_get_type (void);
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GST_SIDDEC_H__ */
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
/* Element-Checklist-Version: 5 */
|
||||
|
||||
|
||||
#define PCM_BUFFER_SIZE (1152*4)
|
||||
#define PCM_BUFFER_SIZE (1152*4)
|
||||
|
||||
/*#define DEBUG_ENABLED*/
|
||||
#ifdef HAVE_CONFIG_H
|
||||
|
|
|
@ -49,9 +49,9 @@ struct _GstAc3Parse {
|
|||
|
||||
GstPad *sinkpad,*srcpad;
|
||||
|
||||
GstBuffer *partialbuf; /* previous buffer (if carryover) */
|
||||
guint lastframebytes; /* bytes in previous of last frame so far */
|
||||
guint lastframesize; /* total length of last frame */
|
||||
GstBuffer *partialbuf; /* previous buffer (if carryover) */
|
||||
guint lastframebytes; /* bytes in previous of last frame so far */
|
||||
guint lastframesize; /* total length of last frame */
|
||||
guint skip; /* number of frames to skip */
|
||||
|
||||
/* some stream parameters */
|
||||
|
|
|
@ -308,26 +308,26 @@ _read_var_length (GstASFDemux * asf_demux, guint8 type, guint32 * rsize)
|
|||
return ret;
|
||||
}
|
||||
|
||||
#define READ_UINT_BITS_FUNCTION(bits) \
|
||||
static gboolean \
|
||||
_read_uint ## bits (GstASFDemux *asf_demux, guint ## bits *ret) \
|
||||
{ \
|
||||
GstEvent *event; \
|
||||
guint32 remaining; \
|
||||
guint8* data; \
|
||||
\
|
||||
g_return_val_if_fail (ret != NULL, FALSE); \
|
||||
\
|
||||
do { \
|
||||
#define READ_UINT_BITS_FUNCTION(bits) \
|
||||
static gboolean \
|
||||
_read_uint ## bits (GstASFDemux *asf_demux, guint ## bits *ret) \
|
||||
{ \
|
||||
GstEvent *event; \
|
||||
guint32 remaining; \
|
||||
guint8* data; \
|
||||
\
|
||||
g_return_val_if_fail (ret != NULL, FALSE); \
|
||||
\
|
||||
do { \
|
||||
if (gst_bytestream_peek_bytes (asf_demux->bs, &data, bits / 8) == bits / 8) { \
|
||||
*ret = GST_READ_UINT ## bits ## _LE (data); \
|
||||
gst_bytestream_flush (asf_demux->bs, bits / 8); \
|
||||
return TRUE; \
|
||||
} \
|
||||
gst_bytestream_get_status (asf_demux->bs, &remaining, &event); \
|
||||
} while (gst_asf_demux_handle_sink_event (asf_demux, event, remaining)); \
|
||||
\
|
||||
return FALSE; \
|
||||
*ret = GST_READ_UINT ## bits ## _LE (data); \
|
||||
gst_bytestream_flush (asf_demux->bs, bits / 8); \
|
||||
return TRUE; \
|
||||
} \
|
||||
gst_bytestream_get_status (asf_demux->bs, &remaining, &event); \
|
||||
} while (gst_asf_demux_handle_sink_event (asf_demux, event, remaining)); \
|
||||
\
|
||||
return FALSE; \
|
||||
}
|
||||
|
||||
#define GST_READ_UINT8_LE(x) GST_READ_UINT8(x)
|
||||
|
|
|
@ -63,10 +63,10 @@ typedef enum {
|
|||
} GstAsfDemuxState;
|
||||
|
||||
struct _GstASFDemux {
|
||||
GstElement element;
|
||||
GstElement element;
|
||||
|
||||
/* pads */
|
||||
GstPad *sinkpad;
|
||||
GstPad *sinkpad;
|
||||
|
||||
GstByteStream *bs;
|
||||
|
||||
|
|
|
@ -57,11 +57,11 @@ struct _AC3IEC {
|
|||
GstPad *sink;
|
||||
GstPad *src;
|
||||
|
||||
GstClockTime cur_ts; /* Time stamp for the current
|
||||
GstClockTime cur_ts; /* Time stamp for the current
|
||||
frame. */
|
||||
GstClockTime next_ts; /* Time stamp for the next frame. */
|
||||
GstClockTime next_ts; /* Time stamp for the next frame. */
|
||||
|
||||
ac3_padder *padder; /* AC3 to SPDIF padder object. */
|
||||
ac3_padder *padder; /* AC3 to SPDIF padder object. */
|
||||
};
|
||||
|
||||
|
||||
|
@ -72,7 +72,7 @@ struct _AC3IECClass {
|
|||
};
|
||||
|
||||
|
||||
extern GType ac3iec_get_type (void);
|
||||
extern GType ac3iec_get_type (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -181,12 +181,12 @@ mp3_type_frame_length_from_header (guint32 header, guint * put_layer,
|
|||
* (0.024%) per try. This makes the function for calculating false positives
|
||||
* 1 - (1 - ((63 / 2 ^18) ^ GST_MP3_TYPEFIND_MIN_HEADERS)) ^ buffersize)
|
||||
* This has the following probabilities of false positives:
|
||||
* bufsize MIN_HEADERS
|
||||
* (bytes) 1 2 3 4
|
||||
* 4096 62.6% 0.02% 0% 0%
|
||||
* 16384 98% 0.09% 0% 0%
|
||||
* 1 MiB 100% 5.88% 0% 0%
|
||||
* 1 GiB 100% 100% 1.44% 0%
|
||||
* bufsize MIN_HEADERS
|
||||
* (bytes) 1 2 3 4
|
||||
* 4096 62.6% 0.02% 0% 0%
|
||||
* 16384 98% 0.09% 0% 0%
|
||||
* 1 MiB 100% 5.88% 0% 0%
|
||||
* 1 GiB 100% 100% 1.44% 0%
|
||||
* 1 TiB 100% 100% 100% 0.35%
|
||||
* This means that the current choice (3 headers by most of the time 4096 byte
|
||||
* buffers is pretty safe for now.
|
||||
|
@ -399,8 +399,8 @@ gst_mp3parse_chain (GstPad * pad, GstBuffer * buf)
|
|||
|
||||
/* mask the bits which are allowed to differ between frames */
|
||||
#define HDRMASK ~((0xF << 12) /* bitrate */ | \
|
||||
(0x1 << 9) /* padding */ | \
|
||||
(0x3 << 4)) /*mode extension */
|
||||
(0x1 << 9) /* padding */ | \
|
||||
(0x3 << 4)) /*mode extension */
|
||||
|
||||
if ((header2 & HDRMASK) != (header & HDRMASK)) { /* require 2 matching headers in a row */
|
||||
GST_DEBUG
|
||||
|
|
|
@ -45,9 +45,9 @@ struct _GstMPEGAudioParse {
|
|||
|
||||
GstPad *sinkpad,*srcpad;
|
||||
|
||||
guint64 last_ts;
|
||||
guint64 last_ts;
|
||||
|
||||
GstBuffer *partialbuf; /* previous buffer (if carryover) */
|
||||
GstBuffer *partialbuf; /* previous buffer (if carryover) */
|
||||
guint skip; /* number of frames to skip */
|
||||
guint bit_rate;
|
||||
gint channels, rate, layer;
|
||||
|
|
|
@ -47,7 +47,7 @@ enum {
|
|||
};
|
||||
|
||||
/* Supported number of streams. */
|
||||
#define GST_DVD_DEMUX_NUM_SUBPICTURE_STREAMS 32
|
||||
#define GST_DVD_DEMUX_NUM_SUBPICTURE_STREAMS 32
|
||||
#define GST_DVD_DEMUX_MAX_SUBPICTURE_DELAY 0
|
||||
|
||||
typedef struct _GstDVDLPCMStream GstDVDLPCMStream ;
|
||||
|
@ -76,8 +76,8 @@ enum {
|
|||
/* Extended structure to hold additional information for linear PCM
|
||||
streams. */
|
||||
struct _GstDVDLPCMStream {
|
||||
GstMPEGStream parent;
|
||||
guint32 sample_info; /* The type of linear PCM samples
|
||||
GstMPEGStream parent;
|
||||
guint32 sample_info; /* The type of linear PCM samples
|
||||
associated to this stream. The
|
||||
values are bit fields with the same
|
||||
format of the sample_info field in
|
||||
|
@ -89,28 +89,28 @@ struct _GstDVDLPCMStream {
|
|||
|
||||
|
||||
struct _GstDVDDemux {
|
||||
GstMPEGDemux parent;
|
||||
GstMPEGDemux parent;
|
||||
|
||||
GstPad *cur_video; /* Current video stream pad. */
|
||||
GstPad *cur_audio; /* Current audio stream pad. */
|
||||
GstPad *cur_subpicture; /* Current subpicture stream pad. */
|
||||
|
||||
gint cur_video_nr; /* Current video stream number. */
|
||||
gint cur_audio_nr; /* Current audio stream number. */
|
||||
gint cur_subpicture_nr; /* Current subpicture stream number. */
|
||||
gint cur_video_nr; /* Current video stream number. */
|
||||
gint cur_audio_nr; /* Current audio stream number. */
|
||||
gint cur_subpicture_nr; /* Current subpicture stream number. */
|
||||
|
||||
GstClockTime last_end_ptm; /* End presentation time of the last nav packet
|
||||
GstClockTime last_end_ptm; /* End presentation time of the last nav packet
|
||||
event received. */
|
||||
|
||||
GstClockTime discont_time; /* If different from GST_CLOCK_TIME_NONE, a
|
||||
GstClockTime discont_time; /* If different from GST_CLOCK_TIME_NONE, a
|
||||
discontinuous event should be sent with the
|
||||
given time, before sending the next data
|
||||
block.. */
|
||||
|
||||
gint mpeg_version; /* Version of the MPEG video stream */
|
||||
gint mpeg_version; /* Version of the MPEG video stream */
|
||||
|
||||
GstMPEGStream *subpicture_stream[GST_DVD_DEMUX_NUM_SUBPICTURE_STREAMS];
|
||||
/* Subpicture output streams. */
|
||||
/* Subpicture output streams. */
|
||||
|
||||
GstEvent *langcodes;
|
||||
|
||||
|
@ -127,16 +127,16 @@ struct _GstDVDDemuxClass {
|
|||
GstPadTemplate *cur_subpicture_template;
|
||||
|
||||
GstMPEGStream *
|
||||
(*get_subpicture_stream)(GstMPEGDemux *mpeg_demux,
|
||||
(*get_subpicture_stream)(GstMPEGDemux *mpeg_demux,
|
||||
guint8 stream_nr,
|
||||
gint type,
|
||||
const gpointer info);
|
||||
};
|
||||
|
||||
|
||||
GType gst_dvd_demux_get_type (void);
|
||||
GType gst_dvd_demux_get_type (void);
|
||||
|
||||
gboolean gst_dvd_demux_plugin_init (GstPlugin *plugin);
|
||||
gboolean gst_dvd_demux_plugin_init (GstPlugin *plugin);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -56,9 +56,9 @@ struct _GstMPEGClockClass {
|
|||
GstSystemClockClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_mpeg_clock_get_type (void);
|
||||
GstClock* gst_mpeg_clock_new (gchar *name, GstMPEGClockGetTimeFunc func,
|
||||
gpointer user_data);
|
||||
GType gst_mpeg_clock_get_type (void);
|
||||
GstClock* gst_mpeg_clock_new (gchar *name, GstMPEGClockGetTimeFunc func,
|
||||
gpointer user_data);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -47,9 +47,9 @@ enum {
|
|||
};
|
||||
|
||||
/* Supported number of streams. */
|
||||
#define GST_MPEG_DEMUX_NUM_VIDEO_STREAMS 16
|
||||
#define GST_MPEG_DEMUX_NUM_AUDIO_STREAMS 32
|
||||
#define GST_MPEG_DEMUX_NUM_PRIVATE_STREAMS 2
|
||||
#define GST_MPEG_DEMUX_NUM_VIDEO_STREAMS 16
|
||||
#define GST_MPEG_DEMUX_NUM_AUDIO_STREAMS 32
|
||||
#define GST_MPEG_DEMUX_NUM_PRIVATE_STREAMS 2
|
||||
|
||||
/* How to make stream type values. */
|
||||
#define GST_MPEG_DEMUX_STREAM_TYPE(kind, serial) \
|
||||
|
@ -88,11 +88,11 @@ typedef struct _GstMPEGDemuxClass GstMPEGDemuxClass;
|
|||
|
||||
/* Information associated to a single MPEG stream. */
|
||||
struct _GstMPEGStream {
|
||||
gint type;
|
||||
gint number;
|
||||
GstPad *pad;
|
||||
gint index_id;
|
||||
gint size_bound;
|
||||
gint type;
|
||||
gint number;
|
||||
GstPad *pad;
|
||||
gint index_id;
|
||||
gint size_bound;
|
||||
GstClockTime cur_ts;
|
||||
GstClockTimeDiff scr_offs;
|
||||
};
|
||||
|
@ -100,29 +100,29 @@ struct _GstMPEGStream {
|
|||
/* Extended structure to hold additional information for video
|
||||
streams. */
|
||||
struct _GstMPEGVideoStream {
|
||||
GstMPEGStream parent;
|
||||
gint mpeg_version;
|
||||
GstMPEGStream parent;
|
||||
gint mpeg_version;
|
||||
};
|
||||
|
||||
struct _GstMPEGDemux {
|
||||
GstMPEGParse parent;
|
||||
GstMPEGParse parent;
|
||||
|
||||
/* previous partial chunk and bytes remaining in it */
|
||||
gboolean in_flush;
|
||||
gboolean in_flush;
|
||||
|
||||
/* program stream header values */
|
||||
guint16 header_length;
|
||||
guint32 rate_bound;
|
||||
guint8 audio_bound;
|
||||
gboolean fixed;
|
||||
gboolean constrained;
|
||||
gboolean audio_lock;
|
||||
gboolean video_lock;
|
||||
guint8 video_bound;
|
||||
gboolean packet_rate_restriction;
|
||||
gint64 total_size_bound;
|
||||
guint16 header_length;
|
||||
guint32 rate_bound;
|
||||
guint8 audio_bound;
|
||||
gboolean fixed;
|
||||
gboolean constrained;
|
||||
gboolean audio_lock;
|
||||
gboolean video_lock;
|
||||
guint8 video_bound;
|
||||
gboolean packet_rate_restriction;
|
||||
gint64 total_size_bound;
|
||||
|
||||
GstIndex *index;
|
||||
GstIndex *index;
|
||||
|
||||
/* stream output */
|
||||
GstMPEGStream *video_stream[GST_MPEG_DEMUX_NUM_VIDEO_STREAMS];
|
||||
|
@ -134,11 +134,11 @@ struct _GstMPEGDemux {
|
|||
there for the benefit of subclasses. */
|
||||
|
||||
GstClockTime max_gap; /* Maximum timestamp difference to allow
|
||||
* between pads before using a filler to catch up
|
||||
*/
|
||||
* between pads before using a filler to catch up
|
||||
*/
|
||||
GstClockTime max_gap_tolerance; /* When catching a pad up, how far behind
|
||||
to make it
|
||||
*/
|
||||
to make it
|
||||
*/
|
||||
|
||||
GstClockTime max_ts; /* Highest timestamp of all pads */
|
||||
GstPad *max_pad; /* Pad with highest timestamp */
|
||||
|
@ -153,10 +153,10 @@ struct _GstMPEGDemuxClass {
|
|||
GstPadTemplate *audio_template;
|
||||
GstPadTemplate *private_template;
|
||||
|
||||
GstPad * (*new_output_pad) (GstMPEGDemux *mpeg_demux,
|
||||
GstPad * (*new_output_pad) (GstMPEGDemux *mpeg_demux,
|
||||
const gchar *name,
|
||||
GstPadTemplate *temp);
|
||||
void (*init_stream) (GstMPEGDemux *mpeg_demux,
|
||||
void (*init_stream) (GstMPEGDemux *mpeg_demux,
|
||||
gint type,
|
||||
GstMPEGStream *str,
|
||||
gint number,
|
||||
|
@ -164,22 +164,22 @@ struct _GstMPEGDemuxClass {
|
|||
GstPadTemplate *temp);
|
||||
|
||||
GstMPEGStream *
|
||||
(*get_video_stream) (GstMPEGDemux *mpeg_demux,
|
||||
(*get_video_stream) (GstMPEGDemux *mpeg_demux,
|
||||
guint8 stream_nr,
|
||||
gint type,
|
||||
const gpointer info);
|
||||
GstMPEGStream *
|
||||
(*get_audio_stream) (GstMPEGDemux *mpeg_demux,
|
||||
(*get_audio_stream) (GstMPEGDemux *mpeg_demux,
|
||||
guint8 stream_nr,
|
||||
gint type,
|
||||
const gpointer info);
|
||||
GstMPEGStream *
|
||||
(*get_private_stream) (GstMPEGDemux *mpeg_demux,
|
||||
(*get_private_stream) (GstMPEGDemux *mpeg_demux,
|
||||
guint8 stream_nr,
|
||||
gint type,
|
||||
const gpointer info);
|
||||
|
||||
GstFlowReturn (*send_subbuffer) (GstMPEGDemux *mpeg_demux,
|
||||
GstFlowReturn (*send_subbuffer) (GstMPEGDemux *mpeg_demux,
|
||||
GstMPEGStream *outstream,
|
||||
GstBuffer *buffer,
|
||||
GstClockTime timestamp,
|
||||
|
@ -187,24 +187,24 @@ struct _GstMPEGDemuxClass {
|
|||
guint size);
|
||||
|
||||
|
||||
GstFlowReturn (*process_private) (GstMPEGDemux *mpeg_demux,
|
||||
GstFlowReturn (*process_private) (GstMPEGDemux *mpeg_demux,
|
||||
GstBuffer *buffer,
|
||||
guint stream_nr,
|
||||
GstClockTime timestamp,
|
||||
guint headerlen, guint datalen);
|
||||
|
||||
void (*synchronise_pads) (GstMPEGDemux *mpeg_demux,
|
||||
void (*synchronise_pads) (GstMPEGDemux *mpeg_demux,
|
||||
GstClockTime threshold,
|
||||
GstClockTime new_ts);
|
||||
GstClockTime new_ts);
|
||||
|
||||
void (*sync_stream_to_time) (GstMPEGDemux *mpeg_demux,
|
||||
GstMPEGStream *stream,
|
||||
GstClockTime last_ts);
|
||||
void (*sync_stream_to_time) (GstMPEGDemux *mpeg_demux,
|
||||
GstMPEGStream *stream,
|
||||
GstClockTime last_ts);
|
||||
};
|
||||
|
||||
GType gst_mpeg_demux_get_type (void);
|
||||
GType gst_mpeg_demux_get_type (void);
|
||||
|
||||
gboolean gst_mpeg_demux_plugin_init (GstPlugin *plugin);
|
||||
gboolean gst_mpeg_demux_plugin_init (GstPlugin *plugin);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -26,24 +26,24 @@
|
|||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define PICTURE_START_CODE 0x00
|
||||
#define SLICE_MIN_START_CODE 0x01
|
||||
#define SLICE_MAX_START_CODE 0xaf
|
||||
#define USER_START_CODE 0xb2
|
||||
#define SEQUENCE_START_CODE 0xb3
|
||||
#define SEQUENCE_ERROR_START_CODE 0xb4
|
||||
#define EXT_START_CODE 0xb5
|
||||
#define SEQUENCE_END_START_CODE 0xb7
|
||||
#define GOP_START_CODE 0xb8
|
||||
#define PICTURE_START_CODE 0x00
|
||||
#define SLICE_MIN_START_CODE 0x01
|
||||
#define SLICE_MAX_START_CODE 0xaf
|
||||
#define USER_START_CODE 0xb2
|
||||
#define SEQUENCE_START_CODE 0xb3
|
||||
#define SEQUENCE_ERROR_START_CODE 0xb4
|
||||
#define EXT_START_CODE 0xb5
|
||||
#define SEQUENCE_END_START_CODE 0xb7
|
||||
#define GOP_START_CODE 0xb8
|
||||
|
||||
#define ISO11172_END_START_CODE 0xb9
|
||||
#define PACK_START_CODE 0xba
|
||||
#define SYS_HEADER_START_CODE 0xbb
|
||||
#define ISO11172_END_START_CODE 0xb9
|
||||
#define PACK_START_CODE 0xba
|
||||
#define SYS_HEADER_START_CODE 0xbb
|
||||
|
||||
typedef struct _GstMPEGPacketize GstMPEGPacketize;
|
||||
|
||||
#define GST_MPEG_PACKETIZE_ID(pack) ((pack)->id)
|
||||
#define GST_MPEG_PACKETIZE_IS_MPEG2(pack) ((pack)->MPEG2)
|
||||
#define GST_MPEG_PACKETIZE_ID(pack) ((pack)->id)
|
||||
#define GST_MPEG_PACKETIZE_IS_MPEG2(pack) ((pack)->MPEG2)
|
||||
|
||||
typedef enum {
|
||||
GST_MPEG_PACKETIZE_SYSTEM,
|
||||
|
|
|
@ -50,9 +50,9 @@ static GstElementDetails mpeg_parse_details = {
|
|||
"Erik Walthinsen <omega@cse.ogi.edu>\n" "Wim Taymans <wim.taymans@chello.be>"
|
||||
};
|
||||
|
||||
#define CLASS(o) GST_MPEG_PARSE_CLASS (G_OBJECT_GET_CLASS (o))
|
||||
#define CLASS(o) GST_MPEG_PARSE_CLASS (G_OBJECT_GET_CLASS (o))
|
||||
|
||||
#define DEFAULT_MAX_SCR_GAP 120000
|
||||
#define DEFAULT_MAX_SCR_GAP 120000
|
||||
|
||||
/* GstMPEGParse signals and args */
|
||||
enum
|
||||
|
|
|
@ -57,35 +57,35 @@ struct _GstMPEGParse
|
|||
GstMPEGPacketize *packetize;
|
||||
|
||||
/* Keep track of total rate using SCR and use hysteresis */
|
||||
guint64 first_scr; /* Earliest SCR value for reference */
|
||||
guint64 first_scr_pos; /* Byte position of reference SCR */
|
||||
guint64 last_scr; /* Latest SCR value for reference */
|
||||
guint64 last_scr_pos; /* Byte position of reference SCR */
|
||||
guint64 scr_rate; /* Remember the last rate for hysteresis */
|
||||
guint64 first_scr; /* Earliest SCR value for reference */
|
||||
guint64 first_scr_pos; /* Byte position of reference SCR */
|
||||
guint64 last_scr; /* Latest SCR value for reference */
|
||||
guint64 last_scr_pos; /* Byte position of reference SCR */
|
||||
guint64 scr_rate; /* Remember the last rate for hysteresis */
|
||||
|
||||
/* Compute a rolling average for SCR interpolation (for MPEG1) */
|
||||
guint64 avg_bitrate_time; /* Time total for local average bitrate */
|
||||
guint64 avg_bitrate_bytes; /* Bytes total for local average bitrate */
|
||||
guint64 avg_bitrate_time; /* Time total for local average bitrate */
|
||||
guint64 avg_bitrate_bytes; /* Bytes total for local average bitrate */
|
||||
|
||||
/* Pack header values */
|
||||
guint32 mux_rate; /* Mux rate in bytes/sec derived from Pack
|
||||
header */
|
||||
guint64 current_scr; /* Current SCR from the stream */
|
||||
guint64 next_scr; /* Expected next SCR */
|
||||
guint64 bytes_since_scr; /* Bytes since current_scr */
|
||||
guint32 mux_rate; /* Mux rate in bytes/sec derived from Pack
|
||||
header */
|
||||
guint64 current_scr; /* Current SCR from the stream */
|
||||
guint64 next_scr; /* Expected next SCR */
|
||||
guint64 bytes_since_scr; /* Bytes since current_scr */
|
||||
|
||||
GstClockTime current_ts; /* Current timestamp (i.e., SCR
|
||||
adjusted with the value of
|
||||
'adjust') */
|
||||
GstClockTime current_ts; /* Current timestamp (i.e., SCR
|
||||
adjusted with the value of
|
||||
'adjust') */
|
||||
|
||||
gint64 adjust; /* Value added to SCR values to
|
||||
produce buffer timestamps */
|
||||
gint max_scr_gap; /* The maximum allowed SCR gap without
|
||||
making a timestamp adjustment */
|
||||
gint64 adjust; /* Value added to SCR values to
|
||||
produce buffer timestamps */
|
||||
gint max_scr_gap; /* The maximum allowed SCR gap without
|
||||
making a timestamp adjustment */
|
||||
|
||||
gboolean newsegment_pending; /* If true, the element should send a
|
||||
NEWSEGMENT event as soon as there
|
||||
is SCR information available */
|
||||
gboolean newsegment_pending; /* If true, the element should send a
|
||||
NEWSEGMENT event as soon as there
|
||||
is SCR information available */
|
||||
|
||||
gboolean scr_pending;
|
||||
|
||||
|
@ -110,18 +110,18 @@ struct _GstMPEGParseClass
|
|||
|
||||
/* Optional method to send out the data */
|
||||
GstFlowReturn (*send_buffer) (GstMPEGParse * parse,
|
||||
GstBuffer * buffer, GstClockTime time);
|
||||
GstBuffer * buffer, GstClockTime time);
|
||||
gboolean (*process_event) (GstMPEGParse * parse,
|
||||
GstEvent * event, GstClockTime time);
|
||||
GstEvent * event, GstClockTime time);
|
||||
gboolean (*send_newsegment)(GstMPEGParse * parse, gdouble rate,
|
||||
GstClockTime start_time,
|
||||
GstClockTime stop_time);
|
||||
GstClockTime start_time,
|
||||
GstClockTime stop_time);
|
||||
gboolean (*send_event) (GstMPEGParse * parse, GstEvent *event,
|
||||
GstClockTime time);
|
||||
GstClockTime time);
|
||||
|
||||
/* Signals */
|
||||
void (*reached_offset) (GstMPEGParse *parse,
|
||||
GstClockTime timeval);
|
||||
GstClockTime timeval);
|
||||
};
|
||||
|
||||
GType gst_mpeg_parse_get_type (void);
|
||||
|
|
|
@ -32,7 +32,7 @@ static GstElementDetails rfc2250_enc_details = {
|
|||
"Wim Taymans <wim.taymans@chello.be>"
|
||||
};
|
||||
|
||||
#define CLASS(o) GST_RFC2250_ENC_CLASS (G_OBJECT_GET_CLASS (o))
|
||||
#define CLASS(o) GST_RFC2250_ENC_CLASS (G_OBJECT_GET_CLASS (o))
|
||||
|
||||
/* GstRFC2250Enc signals and args */
|
||||
enum
|
||||
|
|
|
@ -41,10 +41,10 @@ G_BEGIN_DECLS
|
|||
#define GST_RFC2250_ENC_IS_MPEG2(parse) (GST_MPEG_PACKETIZE_IS_MPEG2 (GST_RFC2250_ENC (parse)->packetize))
|
||||
|
||||
typedef enum {
|
||||
ENC_HAVE_SEQ = (1 << 0),
|
||||
ENC_HAVE_GOP = (1 << 1),
|
||||
ENC_HAVE_PIC = (1 << 2),
|
||||
ENC_HAVE_DATA = (1 << 3),
|
||||
ENC_HAVE_SEQ = (1 << 0),
|
||||
ENC_HAVE_GOP = (1 << 1),
|
||||
ENC_HAVE_PIC = (1 << 2),
|
||||
ENC_HAVE_DATA = (1 << 3),
|
||||
} GstEncFlags;
|
||||
|
||||
typedef struct _GstRFC2250Enc GstRFC2250Enc;
|
||||
|
@ -72,7 +72,7 @@ struct _GstRFC2250EncClass {
|
|||
|
||||
GType gst_rfc2250_enc_get_type(void);
|
||||
|
||||
gboolean gst_rfc2250_enc_plugin_init (GstPlugin *plugin);
|
||||
gboolean gst_rfc2250_enc_plugin_init (GstPlugin *plugin);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -29,9 +29,9 @@
|
|||
#include <ctype.h>
|
||||
#include <zlib.h>
|
||||
|
||||
#define RMDEMUX_GUINT32_GET(a) GST_READ_UINT32_BE(a)
|
||||
#define RMDEMUX_GUINT16_GET(a) GST_READ_UINT16_BE(a)
|
||||
#define RMDEMUX_FOURCC_GET(a) GST_READ_UINT32_LE(a)
|
||||
#define RMDEMUX_GUINT32_GET(a) GST_READ_UINT32_BE(a)
|
||||
#define RMDEMUX_GUINT16_GET(a) GST_READ_UINT16_BE(a)
|
||||
#define RMDEMUX_FOURCC_GET(a) GST_READ_UINT32_LE(a)
|
||||
#define HEADER_SIZE 10
|
||||
#define DATA_SIZE 8
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ extern "C" {
|
|||
#define GST_IS_RMDEMUX_CLASS(obj) \
|
||||
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_RMDEMUX))
|
||||
|
||||
#define GST_RMDEMUX_MAX_STREAMS 8
|
||||
#define GST_RMDEMUX_MAX_STREAMS 8
|
||||
|
||||
typedef enum
|
||||
{
|
||||
|
|
|
@ -81,14 +81,14 @@ while (running) { \
|
|||
guint val; \
|
||||
gint val2; \
|
||||
unsigned char *outptr = output; \
|
||||
int w; \
|
||||
int w; \
|
||||
\
|
||||
synaescope_coreGo(); \
|
||||
\
|
||||
outptr = output; \
|
||||
for (w=0; w < syn_width * syn_height; w++) { \
|
||||
bits[w] = colEq[(outptr[0] >> 4) + (outptr[1] & 0xf0)]; \
|
||||
outptr += 2; \
|
||||
bits[w] = colEq[(outptr[0] >> 4) + (outptr[1] & 0xf0)]; \
|
||||
outptr += 2; \
|
||||
} \
|
||||
\
|
||||
GDK_THREADS_ENTER(); \
|
||||
|
|
Loading…
Reference in a new issue