Merge branch 'work'

This commit is contained in:
Jan Schmidt 2009-02-27 12:03:23 +00:00
commit 93da31ef92
9 changed files with 94 additions and 13 deletions

View file

@ -6,6 +6,7 @@ Makefile.in
*-undocumented.txt
*-undeclared.txt
*-unused.txt
*.bak
tmpl
xml
@ -13,7 +14,7 @@ html
gst-plugins-bad-plugins-scan
gst-plugins-bad-plugins-scan.c
inspect-registry.
inspect-registry.*
html-build.stamp
html.stamp

View file

@ -96,6 +96,7 @@ EXTRA_HFILES = \
$(top_srcdir)/ext/celt/gstceltenc.h \
$(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/jack/gstjackaudiosrc.h \
$(top_srcdir)/ext/jack/gstjackaudiosink.h \

View file

@ -34,6 +34,7 @@
<xi:include href="xml/element-deinterlace.xml" />
<xi:include href="xml/element-dfbvideosink.xml" />
<xi:include href="xml/element-dtmfsrc.xml" />
<xi:include href="xml/element-dtsdec.xml" />
<xi:include href="xml/element-dvbsrc.xml" />
<xi:include href="xml/element-dvdspu.xml" />
<xi:include href="xml/element-festival.xml" />
@ -97,6 +98,7 @@
<xi:include href="xml/plugin-celt.xml" />
<xi:include href="xml/plugin-dccp.xml" />
<xi:include href="xml/plugin-dfbvideosink.xml" />
<xi:include href="xml/plugin-dirac.xml" />
<xi:include href="xml/plugin-dtmf.xml" />
<xi:include href="xml/plugin-dtsdec.xml" />
<xi:include href="xml/plugin-dvbsrc.xml" />

View file

@ -248,6 +248,20 @@ gst_dtmf_src_get_type
gst_dtmf_src_plugin_init
</SECTION>
<SECTION>
<FILE>element-dtsdec</FILE>
<TITLE>dtsdec</TITLE>
GstDtsDec
<SUBSECTION Standard>
GstDtsDecClass
gst_dtsdec_get_type
GST_TYPE_DTSDEC
GST_DTSDEC
GST_DTSDEC_CLASS
GST_IS_DTSDEC
GST_IS_DTSDEC_CLASS
</SECTION>
<SECTION>
<FILE>element-dvbsrc</FILE>
<TITLE>dvbsrc</TITLE>

View file

@ -0,0 +1,34 @@
<plugin>
<name>dirac</name>
<description>Dirac plugin</description>
<filename>../../ext/dirac/.libs/libgstdirac.so</filename>
<basename>libgstdirac.so</basename>
<version>0.10.10.1</version>
<license>LGPL</license>
<source>gst-plugins-bad</source>
<package>GStreamer Bad Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>
<name>diracenc</name>
<longname>Dirac Encoder</longname>
<class>Codec/Encoder/Video</class>
<description>Encode raw YUV video into Dirac stream</description>
<author>David Schleef &lt;ds@schleef.org&gt;</author>
<pads>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>video/x-raw-yuv, format=(fourcc){ I420, YUY2, UYVY, AYUV }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>video/x-dirac</details>
</caps>
</pads>
</element>
</elements>
</plugin>

View file

@ -231,7 +231,17 @@ gst_apexraop_connect (GstApExRAOP * con)
creq[GST_APEX_RAOP_SDP_DEFAULT_LENGTH],
hreq[GST_APEX_RAOP_HDR_DEFAULT_LENGTH], *req;
RSA *rsa;
guchar *mod, *exp, buf[4 + 8 + 16], rsakey[512];
guchar *mod, *exp, rsakey[512];
union gst_randbytes
{
struct asvals
{
gulong url_key;
guint64 conn_id;
guchar challenge[16];
} v;
guchar buf[4 + 8 + 16];
} randbuf;
gsize size;
struct sockaddr_in ioaddr;
socklen_t iolen;
@ -257,12 +267,9 @@ gst_apexraop_connect (GstApExRAOP * con)
sizeof (conn->ctrl_sd_in)) < 0)
return GST_RTSP_STS_DESTINATION_UNREACHABLE;
RAND_bytes (buf, sizeof (buf));
sprintf ((gchar *) conn->url_abspath, "%lu", *((gulong *) buf));
ac = g_base64_encode (buf + 12, 16);
g_strdel (ac, '=');
sprintf ((char *) conn->cid, "%08lx%08lx", *((gulong *) (buf + 4)),
*((gulong *) (buf + 8)));
RAND_bytes (randbuf.buf, sizeof (randbuf));
sprintf ((gchar *) conn->url_abspath, "%lu", randbuf.v.url_key);
sprintf ((char *) conn->cid, "%16" G_GINT64_MODIFIER "x", randbuf.v.conn_id);
RAND_bytes (conn->aes_ky, AES_BLOCK_SIZE);
RAND_bytes (conn->aes_iv, AES_BLOCK_SIZE);
@ -285,6 +292,9 @@ gst_apexraop_connect (GstApExRAOP * con)
getsockname (conn->ctrl_sd, (struct sockaddr *) &ioaddr, &iolen);
inet_ntop (AF_INET, &(ioaddr.sin_addr), inaddr, INET_ADDRSTRLEN);
ac = g_base64_encode (randbuf.v.challenge, 16);
g_strdel (ac, '=');
sprintf (creq,
"v=0\r\n"
"o=iTunes %s 0 IN IP4 %s\r\n"

View file

@ -48,6 +48,8 @@
GST_DEBUG_CATEGORY_STATIC (celtdec_debug);
#define GST_CAT_DEFAULT celtdec_debug
#define DEC_MAX_FRAME_SIZE 2000
static GstStaticPadTemplate celt_dec_src_factory =
GST_STATIC_PAD_TEMPLATE ("src",
GST_PAD_SRC,

View file

@ -41,8 +41,6 @@ G_BEGIN_DECLS
typedef struct _GstCeltDec GstCeltDec;
typedef struct _GstCeltDecClass GstCeltDecClass;
#define DEC_MAX_FRAME_SIZE 2000
struct _GstCeltDec {
GstElement element;

View file

@ -17,9 +17,20 @@
* Boston, MA 02111-1307, USA.
*/
/* TODO: - Port to libdca API instead of relying on the compat header.
* libdca is the successor of libdts:
* http://www.videolan.org/developers/libdca.html
/**
* SECTION:element-dtsdec
*
* Digital Theatre System (DTS) audio decoder
*
* <refsect2>
* <title>Example launch line</title>
* |[
* gst-launch dvdreadsrc title=1 ! mpegpsdemux ! dtsdec ! audioresample ! audioconvert ! alsasink
* ]| Play a DTS audio track from a dvd.
* |[
* gst-launch filesrc location=abc.dts ! dtsdec ! audioresample ! audioconvert ! alsasink
* ]| Decode a standalone file and play it.
* </refsect2>
*/
#ifdef HAVE_CONFIG_H
@ -162,6 +173,14 @@ gst_dtsdec_class_init (GstDtsDecClass * klass)
gstelement_class->change_state = gst_dtsdec_change_state;
/**
* GstDtsDec::drc
*
* Set to true to apply the recommended DTS dynamic range compression
* to the audio stream. Dynamic range compression makes loud sounds
* softer and soft sounds louder, so you can more easily listen
* to the stream without disturbing other people.
*/
g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_DRC,
g_param_spec_boolean ("drc", "Dynamic Range Compression",
"Use Dynamic Range Compression", FALSE, G_PARAM_READWRITE));