mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 00:36:51 +00:00
parent
31d3ec392f
commit
e3081a71ba
13 changed files with 2 additions and 3017 deletions
|
@ -45,6 +45,7 @@ CRUFT_FILES = \
|
|||
$(top_builddir)/gst/amrparse/.libs/*.{so,dll,DLL,dylib} \
|
||||
$(top_builddir)/gst/flacparse/.libs/*.{so,dll,DLL,dylib} \
|
||||
$(top_builddir)/gst/shapewipe/.libs/*.{so,dll,DLL,dylib}
|
||||
$(top_builddir)/ext/ivorbis/.libs/*.{so,dll,DLL,dylib}
|
||||
|
||||
CRUFT_DIRS = \
|
||||
$(top_srcdir)/gst/aacparse \
|
||||
|
@ -52,6 +53,7 @@ CRUFT_DIRS = \
|
|||
$(top_srcdir)/gst/flacparse \
|
||||
$(top_srcdir)/gst/shapewipe \
|
||||
$(top_srcdir)/tests/examples/shapewipe
|
||||
$(top_srcdir)/ext/ivorbis
|
||||
|
||||
include $(top_srcdir)/common/cruft.mak
|
||||
|
||||
|
|
21
configure.ac
21
configure.ac
|
@ -872,25 +872,6 @@ AG_GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
|
|||
AC_SUBST(GSM_LIBS)
|
||||
])
|
||||
|
||||
dnl *** ivorbis ***
|
||||
dnl AM_PATH_IVORBIS only takes two options
|
||||
translit(dnm, m, l) AM_CONDITIONAL(USE_IVORBIS, true)
|
||||
AG_GST_CHECK_FEATURE(IVORBIS, [integer vorbis plug-in], ivorbisdec, [
|
||||
IVORBIS_LIBS=
|
||||
IVORBIS_CFLAGS=
|
||||
AC_CHECK_LIB(vorbisidec, vorbis_block_init,
|
||||
[IVORBIS_LIBS=-lvorbisidec
|
||||
HAVE_IVORBIS=yes
|
||||
case $host in
|
||||
arm-*-*)
|
||||
IVORBIS_CFLAGS="-D_ARM_ASSEM_ $IVORBIS_CFLAGS"
|
||||
esac
|
||||
],
|
||||
HAVE_IVORBIS=no)
|
||||
AC_SUBST(IVORBIS_LIBS)
|
||||
AC_SUBST(IVORBIS_CFLAGS)
|
||||
])
|
||||
|
||||
dnl *** Jack ***
|
||||
translit(dnm, m, l) AM_CONDITIONAL(USE_JACK, true)
|
||||
AG_GST_CHECK_FEATURE(JACK, Jack, jack, [
|
||||
|
@ -1533,7 +1514,6 @@ AM_CONDITIONAL(USE_FAAC, false)
|
|||
AM_CONDITIONAL(USE_FAAD, false)
|
||||
AM_CONDITIONAL(USE_FBDEV, false)
|
||||
AM_CONDITIONAL(USE_GSM, false)
|
||||
AM_CONDITIONAL(USE_IVORBIS, false)
|
||||
AM_CONDITIONAL(USE_JACK, false)
|
||||
AM_CONDITIONAL(USE_JP2K, false)
|
||||
AM_CONDITIONAL(USE_KATE, false)
|
||||
|
@ -1739,7 +1719,6 @@ ext/faac/Makefile
|
|||
ext/faad/Makefile
|
||||
ext/flite/Makefile
|
||||
ext/gsm/Makefile
|
||||
ext/ivorbis/Makefile
|
||||
ext/jack/Makefile
|
||||
ext/jp2k/Makefile
|
||||
ext/kate/Makefile
|
||||
|
|
|
@ -96,7 +96,6 @@ EXTRA_HFILES = \
|
|||
$(top_srcdir)/ext/dc1394/gstdc1394.h \
|
||||
$(top_srcdir)/ext/directfb/dfbvideosink.h \
|
||||
$(top_srcdir)/ext/dts/gstdtsdec.h \
|
||||
$(top_srcdir)/ext/ivorbis/vorbisdec.h \
|
||||
$(top_srcdir)/ext/faac/gstfaac.h \
|
||||
$(top_srcdir)/ext/faad/gstfaad.h \
|
||||
$(top_srcdir)/ext/jack/gstjackaudiosrc.h \
|
||||
|
|
|
@ -48,7 +48,6 @@
|
|||
<xi:include href="xml/element-flacparse.xml" />
|
||||
<xi:include href="xml/element-fpsdisplaysink.xml" />
|
||||
<xi:include href="xml/element-input-selector.xml" />
|
||||
<xi:include href="xml/element-ivorbisdec.xml" />
|
||||
<xi:include href="xml/element-jackaudiosrc.xml" />
|
||||
<xi:include href="xml/element-jackaudiosink.xml" />
|
||||
<xi:include href="xml/element-jpegparse.xml" />
|
||||
|
|
|
@ -498,20 +498,6 @@ GST_INPUT_SELECTOR_UNLOCK
|
|||
GST_INPUT_SELECTOR_WAIT
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<FILE>element-ivorbisdec</FILE>
|
||||
<TITLE>ivorbisdec</TITLE>
|
||||
GstIVorbisDec
|
||||
<SUBSECTION Standard>
|
||||
GstIVorbisDecClass
|
||||
GST_IVORBIS_DEC
|
||||
GST_IVORBIS_DEC_CLASS
|
||||
GST_IS_IVORBIS_DEC
|
||||
GST_IS_IVORBIS_DEC_CLASS
|
||||
GST_TYPE_IVORBIS_DEC
|
||||
gst_ivorbis_dec_get_type
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<FILE>element-jackaudiosrc</FILE>
|
||||
<TITLE>jackaudiosrc</TITLE>
|
||||
|
|
|
@ -1,58 +0,0 @@
|
|||
<plugin>
|
||||
<name>tremor</name>
|
||||
<description>OGG Vorbis Tremor plugins element</description>
|
||||
<filename>../../ext/ivorbis/.libs/libgstivorbis.so</filename>
|
||||
<basename>libgstivorbis.so</basename>
|
||||
<version>0.10.6.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-bad</source>
|
||||
<package>GStreamer Bad Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>ivorbisdec</name>
|
||||
<longname>Vorbis audio decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>decode raw vorbis streams to integer audio</description>
|
||||
<author>Benjamin Otte <in7y118@public.uni-hamburg.de>
|
||||
Chris Lord <chris@openedhand.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 6 ], endianness=(int)1234, width=(int)32, depth=(int)16, signed=(boolean)true</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-vorbis</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>tremor</name>
|
||||
<longname>Ogg Vorbis audio decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>Decodes OGG Vorbis audio using the Tremor vorbisfile API</description>
|
||||
<author>Monty <monty@xiph.org>
|
||||
Wim Taymans <wim.taymans@chello.be>
|
||||
Amaury Jacquot <sxpert@esitcom.org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/ogg</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw-float, depth=(int)32, endianness=(int)1234, rate=(int)[ 11025, 48000 ], channels=(int)2; audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)[ 11025, 48000 ], channels=(int)[ 1, 2 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin>
|
|
@ -142,12 +142,6 @@ endif
|
|||
HERMES_DIR=
|
||||
# endif
|
||||
|
||||
if USE_IVORBIS
|
||||
IVORBIS_DIR=ivorbis
|
||||
else
|
||||
IVORBIS_DIR=
|
||||
endif
|
||||
|
||||
if USE_JACK
|
||||
JACK_DIR=jack
|
||||
else
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
plugin_LTLIBRARIES = libgstivorbis.la
|
||||
|
||||
libgstivorbis_la_SOURCES = vorbis.c vorbisfile.c vorbisdec.c
|
||||
libgstivorbis_la_CFLAGS = $(GST_CFLAGS) $(IVORBIS_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS)
|
||||
libgstivorbis_la_LIBADD = $(IVORBIS_LIBS) \
|
||||
$(GST_BASE_LIBS) \
|
||||
$(GST_PLUGINS_BASE_LIBS) \
|
||||
-lgstaudio-@GST_MAJORMINOR@ \
|
||||
-lgsttag-@GST_MAJORMINOR@
|
||||
libgstivorbis_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
||||
libgstivorbis_la_LIBTOOLFLAGS = --tag=disable-static
|
||||
|
||||
noinst_HEADERS = vorbisdec.h vorbisenc.h
|
|
@ -1,53 +0,0 @@
|
|||
/* GStreamer
|
||||
* Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Library General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include <gst/gst.h>
|
||||
#include <tremor/ivorbiscodec.h>
|
||||
#include "vorbisdec.h"
|
||||
|
||||
GST_DEBUG_CATEGORY (vorbisdec_debug);
|
||||
|
||||
extern GType ivorbisfile_get_type (void);
|
||||
|
||||
static gboolean
|
||||
plugin_init (GstPlugin * plugin)
|
||||
{
|
||||
if (!gst_element_register (plugin, "tremor", GST_RANK_SECONDARY,
|
||||
ivorbisfile_get_type ()))
|
||||
return FALSE;
|
||||
|
||||
if (!gst_element_register (plugin, "ivorbisdec", GST_RANK_SECONDARY,
|
||||
gst_ivorbis_dec_get_type ()))
|
||||
return FALSE;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (vorbisdec_debug, "ivorbisdec", 0,
|
||||
"vorbis decoding element (integer decoder)");
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
|
||||
GST_VERSION_MINOR,
|
||||
"tremor",
|
||||
"OGG Vorbis Tremor plugins element",
|
||||
plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)
|
File diff suppressed because it is too large
Load diff
|
@ -1,89 +0,0 @@
|
|||
/* -*- c-basic-offset: 2 -*-
|
||||
* GStreamer
|
||||
* Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
|
||||
*
|
||||
* Tremor modifications <2006>:
|
||||
* Chris Lord, OpenedHand Ltd. <chris@openedhand.com>, http://www.o-hand.com/
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Library General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __GST_IVORBIS_DEC_H__
|
||||
#define __GST_IVORBIS_DEC_H__
|
||||
|
||||
|
||||
#include <gst/gst.h>
|
||||
#include <tremor/ivorbiscodec.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_IVORBIS_DEC \
|
||||
(gst_ivorbis_dec_get_type())
|
||||
#define GST_IVORBIS_DEC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_IVORBIS_DEC,GstIVorbisDec))
|
||||
#define GST_IVORBIS_DEC_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_IVORBIS_DEC,GstIVorbisDecClass))
|
||||
#define GST_IS_IVORBIS_DEC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_IVORBIS_DEC))
|
||||
#define GST_IS_IVORBIS_DEC_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_IVORBIS_DEC))
|
||||
|
||||
typedef struct _GstIVorbisDec GstIVorbisDec;
|
||||
typedef struct _GstIVorbisDecClass GstIVorbisDecClass;
|
||||
|
||||
/**
|
||||
* GstIVorbisDec:
|
||||
*
|
||||
* Opaque data structure.
|
||||
*/
|
||||
struct _GstIVorbisDec {
|
||||
GstElement element;
|
||||
|
||||
/* < private > */
|
||||
GstPad * sinkpad;
|
||||
GstPad * srcpad;
|
||||
|
||||
vorbis_dsp_state vd;
|
||||
vorbis_info vi;
|
||||
vorbis_comment vc;
|
||||
vorbis_block vb;
|
||||
guint64 granulepos;
|
||||
|
||||
gboolean initialized;
|
||||
guint width;
|
||||
|
||||
GList *queued;
|
||||
|
||||
GstSegment segment;
|
||||
gboolean discont;
|
||||
|
||||
GstClockTime cur_timestamp; /* only used with non-ogg container formats */
|
||||
GstClockTime prev_timestamp; /* only used with non-ogg container formats */
|
||||
|
||||
GList *pendingevents;
|
||||
GstTagList *taglist;
|
||||
};
|
||||
|
||||
struct _GstIVorbisDecClass {
|
||||
GstElementClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_ivorbis_dec_get_type(void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GST_IVORBIS_DEC_H__ */
|
|
@ -1,100 +0,0 @@
|
|||
/* GStreamer
|
||||
* Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Library General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __VORBISENC_H__
|
||||
#define __VORBISENC_H__
|
||||
|
||||
|
||||
#include <gst/gst.h>
|
||||
|
||||
#include <tremor/ivorbiscodec.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#define GST_TYPE_VORBISENC \
|
||||
(vorbisenc_get_type())
|
||||
#define GST_VORBISENC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_VORBISENC,VorbisEnc))
|
||||
#define GST_VORBISENC_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_VORBISENC,VorbisEncClass))
|
||||
#define GST_IS_VORBISENC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_VORBISENC))
|
||||
#define GST_IS_VORBISENC_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_VORBISENC))
|
||||
|
||||
typedef struct _VorbisEnc VorbisEnc;
|
||||
typedef struct _VorbisEncClass VorbisEncClass;
|
||||
|
||||
struct _VorbisEnc {
|
||||
GstElement element;
|
||||
|
||||
GstPad *sinkpad,
|
||||
*srcpad;
|
||||
|
||||
ogg_stream_state os; /* take physical pages, weld into a logical
|
||||
stream of packets */
|
||||
ogg_page og; /* one Ogg bitstream page. Vorbis packets are inside */
|
||||
ogg_packet op; /* one raw packet of data for decode */
|
||||
|
||||
vorbis_info vi; /* struct that stores all the static vorbis bitstream
|
||||
settings */
|
||||
vorbis_comment vc; /* struct that stores all the user comments */
|
||||
|
||||
vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
|
||||
vorbis_block vb; /* local working space for packet->PCM decode */
|
||||
|
||||
gboolean eos;
|
||||
|
||||
gboolean managed;
|
||||
gint bitrate;
|
||||
gint min_bitrate;
|
||||
gint max_bitrate;
|
||||
gfloat quality;
|
||||
gboolean quality_set;
|
||||
gint serial;
|
||||
|
||||
gint channels;
|
||||
gint frequency;
|
||||
|
||||
guint64 samples_in;
|
||||
guint64 bytes_out;
|
||||
|
||||
GstCaps *metadata;
|
||||
|
||||
gboolean setup;
|
||||
gboolean flush_header;
|
||||
gchar *last_message;
|
||||
};
|
||||
|
||||
struct _VorbisEncClass {
|
||||
GstElementClass parent_class;
|
||||
};
|
||||
|
||||
GType vorbisenc_get_type(void);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
|
||||
#endif /* __VORBISENC_H__ */
|
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue