mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 12:11:13 +00:00
ext/cdparanoia/: Partially ported cdparanoia now that basesrc can support a plugin like this..
Original commit message from CVS: * ext/cdparanoia/Makefile.am: * ext/cdparanoia/gstcdparanoia.c: (gst_paranoia_mode_get_type), (gst_paranoia_endian_get_type), (_do_init), (cdparanoia_class_init), (cdparanoia_init), (cdparanoia_set_property), (cdparanoia_get_property), (cdparanoia_do_seek), (cdparanoia_is_seekable), (cdparanoia_create), (cdparanoia_start), (cdparanoia_stop), (cdparanoia_convert), (cdparanoia_get_query_types), (cdparanoia_query), (cdparanoia_set_index), (cdparanoia_uri_set_uri): * ext/cdparanoia/gstcdparanoia.h: Partially ported cdparanoia now that basesrc can support a plugin like this..
This commit is contained in:
parent
c758847445
commit
d02b57f7e0
4 changed files with 350 additions and 456 deletions
16
ChangeLog
16
ChangeLog
|
@ -1,3 +1,19 @@
|
||||||
|
2005-12-12 Wim Taymans <wim@fluendo.com>
|
||||||
|
|
||||||
|
* ext/cdparanoia/Makefile.am:
|
||||||
|
* ext/cdparanoia/gstcdparanoia.c: (gst_paranoia_mode_get_type),
|
||||||
|
(gst_paranoia_endian_get_type), (_do_init),
|
||||||
|
(cdparanoia_class_init), (cdparanoia_init),
|
||||||
|
(cdparanoia_set_property), (cdparanoia_get_property),
|
||||||
|
(cdparanoia_do_seek), (cdparanoia_is_seekable),
|
||||||
|
(cdparanoia_create), (cdparanoia_start), (cdparanoia_stop),
|
||||||
|
(cdparanoia_convert), (cdparanoia_get_query_types),
|
||||||
|
(cdparanoia_query), (cdparanoia_set_index),
|
||||||
|
(cdparanoia_uri_set_uri):
|
||||||
|
* ext/cdparanoia/gstcdparanoia.h:
|
||||||
|
Partially ported cdparanoia now that basesrc can support a
|
||||||
|
plugin like this..
|
||||||
|
|
||||||
2005-12-12 Wim Taymans <wim@fluendo.com>
|
2005-12-12 Wim Taymans <wim@fluendo.com>
|
||||||
|
|
||||||
* tests/examples/seek/scrubby.c: (main):
|
* tests/examples/seek/scrubby.c: (main):
|
||||||
|
|
|
@ -3,6 +3,6 @@ plugin_LTLIBRARIES = libgstcdparanoia.la
|
||||||
libgstcdparanoia_la_SOURCES = gstcdparanoia.c
|
libgstcdparanoia_la_SOURCES = gstcdparanoia.c
|
||||||
libgstcdparanoia_la_CFLAGS = $(GST_CFLAGS)
|
libgstcdparanoia_la_CFLAGS = $(GST_CFLAGS)
|
||||||
libgstcdparanoia_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
libgstcdparanoia_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
||||||
libgstcdparanoia_la_LIBADD = $(CDPARANOIA_LIBS) $(GST_LIBS)
|
libgstcdparanoia_la_LIBADD = $(CDPARANOIA_LIBS) $(GST_LIBS) $(GST_BASE_LIBS)
|
||||||
|
|
||||||
noinst_HEADERS = gstcdparanoia.h
|
noinst_HEADERS = gstcdparanoia.h
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -24,10 +24,9 @@
|
||||||
|
|
||||||
#include <glib.h>
|
#include <glib.h>
|
||||||
#include <gst/gst.h>
|
#include <gst/gst.h>
|
||||||
|
#include <gst/base/gstpushsrc.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
G_BEGIN_DECLS
|
||||||
extern "C" {
|
|
||||||
#endif /* __cplusplus */
|
|
||||||
|
|
||||||
#define size16 gint16
|
#define size16 gint16
|
||||||
#define size32 gint32
|
#define size32 gint32
|
||||||
|
@ -39,8 +38,6 @@ extern "C" {
|
||||||
#include <cdda_interface.h>
|
#include <cdda_interface.h>
|
||||||
#include <cdda_paranoia.h>
|
#include <cdda_paranoia.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*#define CDPARANOIA_BASEOFFSET 0xf1d2 */
|
/*#define CDPARANOIA_BASEOFFSET 0xf1d2 */
|
||||||
#define CDPARANOIA_BASEOFFSET 0x0
|
#define CDPARANOIA_BASEOFFSET 0x0
|
||||||
|
@ -56,20 +53,18 @@ extern "C" {
|
||||||
#define GST_IS_CDPARANOIA_CLASS(obj) \
|
#define GST_IS_CDPARANOIA_CLASS(obj) \
|
||||||
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_CDPARANOIA))
|
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_CDPARANOIA))
|
||||||
|
|
||||||
/* NOTE: per-element flags start with 16 for now */
|
|
||||||
typedef enum {
|
|
||||||
CDPARANOIA_OPEN = (GST_ELEMENT_FLAG_LAST << 0),
|
|
||||||
|
|
||||||
CDPARANOIA_FLAG_LAST = (GST_ELEMENT_FLAG_LAST << 2),
|
|
||||||
} CDParanoiaFlags;
|
|
||||||
|
|
||||||
typedef struct _CDParanoia CDParanoia;
|
typedef struct _CDParanoia CDParanoia;
|
||||||
typedef struct _CDParanoiaClass CDParanoiaClass;
|
typedef struct _CDParanoiaClass CDParanoiaClass;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* CDParanoia:
|
||||||
|
*
|
||||||
|
* Opaque #CDParanoia structure
|
||||||
|
*/
|
||||||
struct _CDParanoia {
|
struct _CDParanoia {
|
||||||
GstElement element;
|
GstPushSrc pushsrc;
|
||||||
/* pads */
|
|
||||||
GstPad *srcpad;
|
/*< private >*/
|
||||||
|
|
||||||
/* Index */
|
/* Index */
|
||||||
GstIndex *index;
|
GstIndex *index;
|
||||||
|
@ -100,29 +95,28 @@ struct _CDParanoia {
|
||||||
gint first_sector;
|
gint first_sector;
|
||||||
gint last_sector;
|
gint last_sector;
|
||||||
|
|
||||||
/* hacks by Gordon Irving */
|
|
||||||
gchar discid[20];
|
gchar discid[20];
|
||||||
gint64 offsets[MAXTRK];
|
gint64 offsets[MAXTRK];
|
||||||
gint64 total_seconds;
|
gint64 total_seconds;
|
||||||
|
|
||||||
gint prev_sec;
|
/*< private >*/
|
||||||
gboolean discont_sent;
|
gpointer _gst_reserved[GST_PADDING];
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _CDParanoiaClass {
|
struct _CDParanoiaClass {
|
||||||
GstElementClass parent_class;
|
GstPushSrcClass parent_class;
|
||||||
|
|
||||||
/* signal callbacks */
|
/* signal callbacks */
|
||||||
void (*smilie_change) (CDParanoia *cdparanoia, gchar *smilie);
|
void (*smilie_change) (CDParanoia *cdparanoia, gchar *smilie);
|
||||||
void (*transport_error) (CDParanoia *cdparanoia, gint offset);
|
void (*transport_error) (CDParanoia *cdparanoia, gint offset);
|
||||||
void (*uncorrected_error) (CDParanoia *cdparanoia, gint offset);
|
void (*uncorrected_error) (CDParanoia *cdparanoia, gint offset);
|
||||||
|
|
||||||
|
/*< private >*/
|
||||||
|
gpointer _gst_reserved[GST_PADDING];
|
||||||
};
|
};
|
||||||
|
|
||||||
GType cdparanoia_get_type(void);
|
GType cdparanoia_get_type(void);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
G_END_DECLS
|
||||||
}
|
|
||||||
#endif /* __cplusplus */
|
|
||||||
|
|
||||||
|
|
||||||
#endif /* __CDPARANOIA_H__ */
|
#endif /* __CDPARANOIA_H__ */
|
||||||
|
|
Loading…
Reference in a new issue