Add gst-plugins-good0.10 package

This commit is contained in:
Alexpux
2014-01-24 21:44:53 +04:00
parent 4c8fb409d8
commit 175f08aa4c
5 changed files with 642 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
--- gst-plugins-good-1.2.0/configure.ac.orig 2013-09-24 12:14:50.000000000 +0000
+++ gst-plugins-good-1.2.0/configure.ac 2013-10-02 11:20:00.320123500 +0000
@@ -644,7 +644,9 @@
ac_cppflags_save="$CPPFLAGS"
CFLAGS="$CFLAGS $X_CFLAGS"
CPPFLAGS="$CPPFLAGS $X_CFLAGS"
- AC_CHECK_HEADER(X11/Xlib.h, HAVE_X="yes", HAVE_X="no")
+ HAVE_X="yes"
+ AC_CHECK_HEADER(X11/Xlib.h, [], HAVE_X="no")
+ AC_CHECK_LIB(X11, XOpenDisplay, [], HAVE_X="no", $X_LIBS $X_PRE_LIBS $X_EXTRA_LIBS)
if test "x$HAVE_X" = "xno"
then

View File

@@ -0,0 +1,11 @@
--- gst-plugins-good-1.0.6/tests/check/Makefile.am.orig 2013-04-10 09:12:03 +0400
+++ gst-plugins-good-1.0.6/tests/check/Makefile.am 2013-04-10 09:14:04 +0400
@@ -10,7 +10,7 @@
$(REGISTRY_ENVIRONMENT) \
GST_PLUGIN_SYSTEM_PATH= \
GST_PLUGIN_PATH=$(top_builddir)/gst:$(top_builddir)/ext:$(top_builddir)/sys:$(GSTPB_PLUGINS_DIR):$(GST_PLUGINS_DIR) \
- GST_PLUGIN_LOADING_WHITELIST="gstreamer@$(GST_PLUGINS_DIR):gst-plugins-base@$(GSTPB_PLUGINS_DIR):gst-plugins-good@$(top_builddir)" \
+ GST_PLUGIN_LOADING_WHITELIST="gstreamer@$(GST_PLUGINS_DIR):gst-plugins-base@$(GSTPB_PLUGINS_DIR):gst-plugins-good@$(subst /,\\,$(top_builddir))" \
GST_STATE_IGNORE_ELEMENTS="aasink autoaudiosrc autoaudiosink autovideosrc autovideosink \
cacasink cairotextoverlay gconfaudiosrc gconfvideosrc gconfaudiosink gconfvideosink \
halaudiosrc halaudiosink jackaudiosrc jackaudiosink \

View File

@@ -0,0 +1,75 @@
# Maintainer: Alexey Pavlov <alexpux@gmail.com>
_realname=gst-plugins-good
_mingw_suff=mingw-w64-${CARCH}
pkgname="${_mingw_suff}-${_realname}0.10"
pkgver=0.10.31
pkgrel=1
pkgdesc="GStreamer Multimedia Framework Base Plugins (mingw-w64)"
arch=('any')
url="http://gstreamer.freedesktop.org/"
license=("LGPL")
makedepends=("${_mingw_suff}-gcc"
"${_mingw_suff}-pkg-config"
"${_mingw_suff}-gstreamer0.10"
"gtk-doc"
"${_mingw_suff}-python2"
"${_mingw_suff}-speex"
)
depends=(
"${_mingw_suff}-cairo"
"${_mingw_suff}-gdk-pixbuf2"
"${_mingw_suff}-gst-plugins-base0.10"
"${_mingw_suff}-libcaca"
"${_mingw_suff}-libsoup"
"${_mingw_suff}-libvpx"
"${_mingw_suff}-taglib"
"${_mingw_suff}-wavpack"
)
options=(!libtool strip staticlibs)
source=(${url}/src/${_realname}/${_realname}-${pkgver}.tar.xz
test-rtp-payloading.patch
mingw64-gst-plugins-good-waveform-git.patch
0001-fix-X-detection.mingw.patch
0002-fix-test-running.mingw.patch)
md5sums=('555845ceab722e517040bab57f9ace95'
'6781763eb752d57f3d111a41905d25bd'
'86fbe1b55536e71bdb0474e6e41f83c8'
'89b320a3a5d5585801eef1b8e0489483'
'2416482a6ee486dd4d00acd90f4d7e86')
prepare() {
cd ${srcdir}/${_realname}-${pkgver}
sed -i '/AC_PATH_XTRA/d' configure.ac
sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' configure.ac
patch -Np1 -i ${srcdir}/test-rtp-payloading.patch
patch -Np0 -i ${srcdir}/mingw64-gst-plugins-good-waveform-git.patch
patch -p1 -i ${srcdir}/0001-fix-X-detection.mingw.patch
patch -p1 -i ${srcdir}/0002-fix-test-running.mingw.patch
NOCONFIGURE=1 ./autogen.sh
}
build() {
mkdir -p "${srcdir}/build-${MINGW_CHOST}"
[[ -d "${srcdir}/build-${MINGW_CHOST}" ]] && rm -rf "${srcdir}/build-${MINGW_CHOST}"
cp -r "${srcdir}/${_realname}-${pkgver}" "${srcdir}/build-${MINGW_CHOST}"
cd "${srcdir}/build-${MINGW_CHOST}"
./configure \
--prefix=${MINGW_PREFIX} \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--disable-static \
--enable-shared \
--enable-silent-rules \
--enable-experimental \
--disable-gtk-doc
make
}
package() {
cd "${srcdir}/build-${MINGW_CHOST}"
make -j1 DESTDIR="$pkgdir" install
find "${pkgdir}${MINGW_PREFIX}" -name '*.def' -o -name '*.exp' | xargs -rtl1 rm
rm -f ${pkgdir}${MINGW_PREFIX}/lib/gstreamer-*/*.a
}

View File

@@ -0,0 +1,121 @@
--- configure.ac 0.10.31
+++ configure.ac git
@@ -444,6 +444,12 @@
AC_SUBST(HAVE_DIRECTSOUND)
])
+dnl *** Win32 WaveOut ***
+translit(dnm, m, l) AM_CONDITIONAL(USE_WAVEFORM, true)
+AG_GST_CHECK_FEATURE(WAVEFORM, [Win32 WaveForm], waveformsink, [
+ AC_CHECK_HEADER(mmsystem.h, HAVE_WAVEFORM="yes", HAVE_WAVEFORM="no", [#include <windows.h>])
+])
+
dnl *** OSS audio *** (Linux, *BSD)
translit(dnm, m, l) AM_CONDITIONAL(USE_OSS, true)
AG_GST_CHECK_FEATURE(OSS, [OSS audio], ossaudio, [
@@ -1046,6 +1052,7 @@
AM_CONDITIONAL(USE_SPEEX, false)
AM_CONDITIONAL(USE_SUNAUDIO, false)
AM_CONDITIONAL(USE_TAGLIB, false)
+AM_CONDITIONAL(USE_WAVEFORM, false)
AM_CONDITIONAL(USE_WAVPACK, false)
AM_CONDITIONAL(USE_X, false)
AM_CONDITIONAL(USE_XSHM, false)
--- sys/Makefile.am 0.10.31
+++ sys/Makefile.am git
@@ -23,6 +23,12 @@
DIRECTSOUND_DIR=
endif
+if USE_WAVEFORM
+WAVEFORM_DIR=waveform
+else
+WAVEFORM_DIR=
+endif
+
if USE_SUNAUDIO
SUNAUDIO_DIR=sunaudio
else
@@ -77,7 +83,7 @@
XIMAGE_DIR=
endif
-SUBDIRS=$(DIRECTSOUND_DIR) $(OSS_DIR) $(OSS4_DIR) $(OSX_AUDIO_DIR) $(OSX_VIDEO_DIR) $(SUNAUDIO_DIR) $(V4L2_DIR) $(XIMAGE_DIR)
+SUBDIRS=$(DIRECTSOUND_DIR) $(WAVEFORM_DIR) $(OSS_DIR) $(OSS4_DIR) $(OSX_AUDIO_DIR) $(OSX_VIDEO_DIR) $(SUNAUDIO_DIR) $(V4L2_DIR) $(XIMAGE_DIR)
DIST_SUBDIRS=directsound oss oss4 osxaudio osxvideo sunaudio v4l2 waveform ximage
--- sys/waveform/gstwaveformsink.c 0.10.31
+++ sys/waveform/gstwaveformsink.c git
@@ -49,10 +49,6 @@
GST_DEBUG_CATEGORY_STATIC (waveformsink_debug);
-static void gst_waveform_sink_base_init (gpointer g_class);
-static void gst_waveform_sink_class_init (GstWaveFormSinkClass * klass);
-static void gst_waveform_sink_init (GstWaveFormSink * wfsink,
- GstWaveFormSinkClass * g_class);
static void gst_waveform_sink_finalise (GObject * object);
static void gst_waveform_sink_set_property (GObject * object,
guint prop_id, const GValue * value, GParamSpec * pspec);
@@ -154,7 +150,7 @@
gst_waveform_sink_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec)
{
- GstWaveFormSink *wfsink = GST_WAVEFORM_SINK (object);
+ /* GstWaveFormSink *wfsink = GST_WAVEFORM_SINK (object); */
switch (prop_id) {
default:
@@ -167,7 +163,7 @@
gst_waveform_sink_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec)
{
- GstWaveFormSink *wfsink = GST_WAVEFORM_SINK (object);
+ /* GstWaveFormSink *wfsink = GST_WAVEFORM_SINK (object); */
switch (prop_id) {
default:
@@ -348,7 +344,7 @@
static gboolean
gst_waveform_sink_open (GstAudioSink * asink)
{
- GstWaveFormSink *wfsink = GST_WAVEFORM_SINK (asink);
+ /* GstWaveFormSink *wfsink = GST_WAVEFORM_SINK (asink); */
/* nothing to do here as the device needs to be opened with the format we will use */
@@ -448,7 +444,7 @@
static gboolean
gst_waveform_sink_close (GstAudioSink * asink)
{
- GstWaveFormSink *wfsink = GST_WAVEFORM_SINK (asink);
+ /* GstWaveFormSink *wfsink = GST_WAVEFORM_SINK (asink); */
return TRUE;
}
--- sys/waveform/Makefile.am 0.10.31
+++ sys/waveform/Makefile.am git
@@ -1,19 +1,15 @@
plugin_LTLIBRARIES = libgstwaveformsink.la
-# FIXME: Replace DIRECTSOUND CFLAGS+LIBS with waveform related ones and fix
-# the configure.ac + sys/Makefile.am to get this stuff building in MingW
-# For now, it's just disted for use in the VS builds.
-
libgstwaveformsink_la_SOURCES = gstwaveformsink.c gstwaveformplugin.c
libgstwaveformsink_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) \
- $(GST_PLUGINS_BASE_CFLAGS) $(DIRECTSOUND_CFLAGS)
+ $(GST_PLUGINS_BASE_CFLAGS)
libgstwaveformsink_la_LIBADD = \
$(GST_PLUGINS_BASE_LIBS) \
-lgstaudio-$(GST_MAJORMINOR) -lgstinterfaces-$(GST_MAJORMINOR) \
$(GST_BASE_LIBS) \
$(GST_LIBS) \
- $(DIRECTSOUND_LIBS)
-libgstwaveformsink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(DIRECTSOUND_LDFLAGS)
+ -lwinmm
+libgstwaveformsink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
libgstwaveformsink_la_LIBTOOLFLAGS = --tag=disable-static
noinst_HEADERS = gstwaveformsink.h

View File

@@ -0,0 +1,422 @@
From dca42d4767adff3578e5d5990604766735ec1f9b Mon Sep 17 00:00:00 2001
From: Tim-Philipp Müller <tim.muller@collabora.co.uk>
Date: Fri, 10 Feb 2012 13:44:43 +0000
Subject: tests: clean up rtp-payloading test a little
Feed data into the pipeline using appsrc instead of fdsrc and
a pipe. Store unsigned byte values in guint8 instead of char.
Getting rid of the capsfilter also helps to avoid 'format is
not fully specified' warnings when pushing "video/x-h264" data
into rtph264pay with fully specified h264 caps in the sink template.
---
diff --git a/tests/check/elements/rtp-payloading.c b/tests/check/elements/rtp-payloading.c
index b2160f4..7b4985b 100644
--- a/tests/check/elements/rtp-payloading.c
+++ b/tests/check/elements/rtp-payloading.c
@@ -31,13 +31,11 @@
typedef struct
{
GstElement *pipeline;
- GstElement *fdsrc;
- GstElement *capsfilter;
+ GstElement *appsrc;
GstElement *rtppay;
GstElement *rtpdepay;
GstElement *fakesink;
- int fd[2];
- const char *frame_data;
+ const guint8 *frame_data;
int frame_data_size;
int frame_count;
} rtp_pipeline;
@@ -140,13 +138,11 @@ rtp_bus_callback (GstBus * bus, GstMessage * message, gpointer data)
* The user must free the RTP pipeline when it's not used anymore.
*/
static rtp_pipeline *
-rtp_pipeline_create (const char *frame_data, int frame_data_size,
+rtp_pipeline_create (const guint8 * frame_data, int frame_data_size,
int frame_count, const char *filtercaps, const char *pay, const char *depay)
{
gchar *pipeline_name;
-
rtp_pipeline *p;
-
GstCaps *caps;
/* Check parameters. */
@@ -165,60 +161,39 @@ rtp_pipeline_create (const char *frame_data, int frame_data_size,
pipeline_name = g_strdup_printf ("%s-%s-pipeline", pay, depay);
p->pipeline = gst_pipeline_new (pipeline_name);
g_free (pipeline_name);
- p->fdsrc = gst_element_factory_make ("fdsrc", NULL);
- p->capsfilter = gst_element_factory_make ("capsfilter", NULL);
+ p->appsrc = gst_element_factory_make ("appsrc", NULL);
p->rtppay = gst_element_factory_make (pay, NULL);
p->rtpdepay = gst_element_factory_make (depay, NULL);
p->fakesink = gst_element_factory_make ("fakesink", NULL);
/* One or more elements are not created successfully or failed to create p? */
- if (!p->pipeline || !p->fdsrc || !p->capsfilter || !p->rtppay || !p->rtpdepay
- || !p->fakesink || pipe (p->fd) == -1) {
+ if (!p->pipeline || !p->appsrc || !p->rtppay || !p->rtpdepay || !p->fakesink) {
/* Release created elements. */
RELEASE_ELEMENT (p->pipeline);
- RELEASE_ELEMENT (p->fdsrc);
- RELEASE_ELEMENT (p->capsfilter);
+ RELEASE_ELEMENT (p->appsrc);
RELEASE_ELEMENT (p->rtppay);
RELEASE_ELEMENT (p->rtpdepay);
RELEASE_ELEMENT (p->fakesink);
- /* Close pipe. */
- if (p->fd[0]) {
- close (p->fd[0]);
- }
-
- if (p->fd[1]) {
- close (p->fd[1]);
- }
-
/* Release allocated memory. */
free (p);
return NULL;
}
- /* Set fdsrc properties. */
- g_object_set (p->fdsrc, "fd", p->fd[0], NULL);
- g_object_set (p->fdsrc, "do-timestamp", TRUE, NULL);
- g_object_set (p->fdsrc, "blocksize", p->frame_data_size, NULL);
- g_object_set (p->fdsrc, "num-buffers", p->frame_count * LOOP_COUNT, NULL);
-
- /* Set caps filters. */
+ /* Set src properties. */
caps = gst_caps_from_string (filtercaps);
-
- g_object_set (p->capsfilter, "caps", caps, NULL);
+ g_object_set (p->appsrc, "do-timestamp", TRUE, "caps", caps, NULL);
gst_caps_unref (caps);
/* Add elements to the pipeline. */
- gst_bin_add (GST_BIN (p->pipeline), p->fdsrc);
- gst_bin_add (GST_BIN (p->pipeline), p->capsfilter);
+ gst_bin_add (GST_BIN (p->pipeline), p->appsrc);
gst_bin_add (GST_BIN (p->pipeline), p->rtppay);
gst_bin_add (GST_BIN (p->pipeline), p->rtpdepay);
gst_bin_add (GST_BIN (p->pipeline), p->fakesink);
/* Link elements. */
- gst_element_link (p->fdsrc, p->capsfilter);
- gst_element_link (p->capsfilter, p->rtppay);
+ gst_element_link (p->appsrc, p->rtppay);
gst_element_link (p->rtppay, p->rtpdepay);
gst_element_link (p->rtpdepay, p->fakesink);
@@ -240,15 +215,6 @@ rtp_pipeline_destroy (rtp_pipeline * p)
/* Release pipeline. */
RELEASE_ELEMENT (p->pipeline);
- /* Close pipe. */
- if (p->fd[0]) {
- close (p->fd[0]);
- }
-
- if (p->fd[1]) {
- close (p->fd[1]);
- }
-
/* Release allocated memory. */
free (p);
}
@@ -260,11 +226,10 @@ rtp_pipeline_destroy (rtp_pipeline * p)
static void
rtp_pipeline_run (rtp_pipeline * p)
{
+ GstFlowReturn flow_ret;
GMainLoop *mainloop = NULL;
-
GstBus *bus;
-
- gint i;
+ gint i, j;
/* Check parameters. */
if (p == NULL) {
@@ -286,22 +251,28 @@ rtp_pipeline_run (rtp_pipeline * p)
/* Set pipeline to PLAYING. */
gst_element_set_state (p->pipeline, GST_STATE_PLAYING);
- /* TODO: Writing may need some changes... */
-
+ /* Push data into the pipeline */
for (i = 0; i < LOOP_COUNT; i++) {
- const char *frame_data_pointer = p->frame_data;
- int res;
- int frame_count = p->frame_count;
-
- /* Write in to the pipe. */
- while (frame_count > 0) {
- res = write (p->fd[1], frame_data_pointer, p->frame_data_size);
- fail_unless_equals_int (res, p->frame_data_size);
- frame_data_pointer += p->frame_data_size;
- frame_count--;
+ const guint8 *data = p->frame_data;
+
+ for (j = 0; j < p->frame_count; j++) {
+ GstBuffer *buf;
+
+ buf = gst_buffer_new ();
+ GST_BUFFER_DATA (buf) = (guint8 *) data;
+ GST_BUFFER_SIZE (buf) = p->frame_data_size;
+ GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLAG_READONLY);
+
+ g_signal_emit_by_name (p->appsrc, "push-buffer", buf, &flow_ret);
+ fail_unless_equals_int (flow_ret, GST_FLOW_OK);
+ data += p->frame_data_size;
+
+ gst_buffer_unref (buf);
}
}
+ g_signal_emit_by_name (p->appsrc, "end-of-stream", &flow_ret);
+
/* Run mainloop. */
g_main_loop_run (mainloop);
@@ -350,8 +321,8 @@ rtp_pipeline_enable_lists (rtp_pipeline * p, guint mtu_size)
* @use_lists enable buffer lists
*/
static void
-rtp_pipeline_test (const char *frame_data, int frame_data_size, int frame_count,
- const char *filtercaps, const char *pay, const char *depay,
+rtp_pipeline_test (const guint8 * frame_data, int frame_data_size,
+ int frame_count, const char *filtercaps, const char *pay, const char *depay,
guint bytes_sent, guint mtu_size, gboolean use_lists)
{
/* Create RTP pipeline. */
@@ -380,7 +351,7 @@ rtp_pipeline_test (const char *frame_data, int frame_data_size, int frame_count,
}
}
-static char rtp_ilbc_frame_data[] =
+static const guint8 rtp_ilbc_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -397,7 +368,7 @@ GST_START_TEST (rtp_ilbc)
}
GST_END_TEST;
-static char rtp_gsm_frame_data[] =
+static const guint8 rtp_gsm_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -414,7 +385,7 @@ GST_START_TEST (rtp_gsm)
}
GST_END_TEST;
-static char rtp_amr_frame_data[] =
+static const guint8 rtp_amr_frame_data[] =
{ 0x3c, 0x24, 0x03, 0xb3, 0x48, 0x10, 0x68, 0x46, 0x6c, 0xec, 0x03,
0x7a, 0x37, 0x16, 0x41, 0x41, 0xc0, 0x00, 0x0d, 0xcd, 0x12, 0xed,
0xad, 0x80, 0x00, 0x00, 0x11, 0x31, 0x00, 0x00, 0x0d, 0xa0
@@ -432,7 +403,7 @@ GST_START_TEST (rtp_amr)
}
GST_END_TEST;
-static char rtp_pcma_frame_data[] =
+static const guint8 rtp_pcma_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -449,7 +420,7 @@ GST_START_TEST (rtp_pcma)
}
GST_END_TEST;
-static char rtp_pcmu_frame_data[] =
+static const guint8 rtp_pcmu_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -466,7 +437,7 @@ GST_START_TEST (rtp_pcmu)
}
GST_END_TEST;
-static char rtp_mpa_frame_data[] =
+static const guint8 rtp_mpa_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -483,7 +454,7 @@ GST_START_TEST (rtp_mpa)
}
GST_END_TEST;
-static char rtp_h263_frame_data[] =
+static const guint8 rtp_h263_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -495,12 +466,12 @@ static int rtp_h263_frame_count = 1;
GST_START_TEST (rtp_h263)
{
rtp_pipeline_test (rtp_h263_frame_data, rtp_h263_frame_data_size,
- rtp_h263_frame_count, "video/x-h263,variant=itu,h263version=h263",
+ rtp_h263_frame_count, "video/x-h263,variant=(string)itu,h263version=h263",
"rtph263pay", "rtph263depay", 0, 0, FALSE);
}
GST_END_TEST;
-static char rtp_h263p_frame_data[] =
+static const guint8 rtp_h263p_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -512,12 +483,12 @@ static int rtp_h263p_frame_count = 1;
GST_START_TEST (rtp_h263p)
{
rtp_pipeline_test (rtp_h263p_frame_data, rtp_h263p_frame_data_size,
- rtp_h263p_frame_count, "video/x-h263,variant=itu", "rtph263ppay",
+ rtp_h263p_frame_count, "video/x-h263,variant=(string)itu", "rtph263ppay",
"rtph263pdepay", 0, 0, FALSE);
}
GST_END_TEST;
-static char rtp_h264_frame_data[] =
+static const guint8 rtp_h264_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -528,13 +499,14 @@ static int rtp_h264_frame_count = 1;
GST_START_TEST (rtp_h264)
{
+ /* FIXME 0.11: fully specify h264 caps (and make payloader check) */
rtp_pipeline_test (rtp_h264_frame_data, rtp_h264_frame_data_size,
rtp_h264_frame_count, "video/x-h264", "rtph264pay", "rtph264depay",
0, 0, FALSE);
}
GST_END_TEST;
-static char rtp_h264_list_lt_mtu_frame_data[] =
+static const guint8 rtp_h264_list_lt_mtu_frame_data[] =
/* not packetized, next NAL starts with 0001 */
{ 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
@@ -552,6 +524,7 @@ static int rtp_h264_list_lt_mtu_mtu_size = 1024;
GST_START_TEST (rtp_h264_list_lt_mtu)
{
+ /* FIXME 0.11: fully specify h264 caps (and make payloader check) */
rtp_pipeline_test (rtp_h264_list_lt_mtu_frame_data,
rtp_h264_list_lt_mtu_frame_data_size, rtp_h264_list_lt_mtu_frame_count,
"video/x-h264", "rtph264pay", "rtph264depay",
@@ -559,7 +532,7 @@ GST_START_TEST (rtp_h264_list_lt_mtu)
}
GST_END_TEST;
-static char rtp_h264_list_gt_mtu_frame_data[] =
+static const guint8 rtp_h264_list_gt_mtu_frame_data[] =
/* not packetized, next NAL starts with 0001 */
{ 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -580,6 +553,7 @@ static int rtp_h264_list_gt_mtu_mty_size = 28;
GST_START_TEST (rtp_h264_list_gt_mtu)
{
+ /* FIXME 0.11: fully specify h264 caps (and make payloader check) */
rtp_pipeline_test (rtp_h264_list_gt_mtu_frame_data,
rtp_h264_list_gt_mtu_frame_data_size, rtp_h264_list_gt_mtu_frame_count,
"video/x-h264", "rtph264pay", "rtph264depay",
@@ -587,7 +561,7 @@ GST_START_TEST (rtp_h264_list_gt_mtu)
}
GST_END_TEST;
-static char rtp_L16_frame_data[] =
+static const guint8 rtp_L16_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -605,7 +579,7 @@ GST_START_TEST (rtp_L16)
}
GST_END_TEST;
-static char rtp_mp2t_frame_data[] =
+static const guint8 rtp_mp2t_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -622,7 +596,7 @@ GST_START_TEST (rtp_mp2t)
}
GST_END_TEST;
-static char rtp_mp4v_frame_data[] =
+static const guint8 rtp_mp4v_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -639,7 +613,7 @@ GST_START_TEST (rtp_mp4v)
}
GST_END_TEST;
-static char rtp_mp4v_list_frame_data[] =
+static const guint8 rtp_mp4v_list_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -659,7 +633,7 @@ GST_START_TEST (rtp_mp4v_list)
}
GST_END_TEST;
-static char rtp_mp4g_frame_data[] =
+static const guint8 rtp_mp4g_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -677,7 +651,7 @@ GST_START_TEST (rtp_mp4g)
}
GST_END_TEST;
-static char rtp_theora_frame_data[] =
+static const guint8 rtp_theora_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -694,7 +668,7 @@ GST_START_TEST (rtp_theora)
}
GST_END_TEST;
-static char rtp_vorbis_frame_data[] =
+static const guint8 rtp_vorbis_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
@@ -711,7 +685,7 @@ GST_START_TEST (rtp_vorbis)
}
GST_END_TEST;
-static char rtp_jpeg_frame_data[] =
+static const guint8 rtp_jpeg_frame_data[] =
{ /* SOF */ 0xFF, 0xC0, 0x00, 0x11, 0x08, 0x00, 0x08, 0x00, 0x08,
0x03, 0x00, 0x21, 0x08, 0x01, 0x11, 0x08, 0x02, 0x11, 0x08,
/* DQT */ 0xFF, 0xDB, 0x00, 0x43, 0x08,
@@ -738,7 +712,7 @@ GST_START_TEST (rtp_jpeg)
}
GST_END_TEST;
-static char rtp_jpeg_list_frame_data[] =
+static const guint8 rtp_jpeg_list_frame_data[] =
{ /* SOF */ 0xFF, 0xC0, 0x00, 0x11, 0x08, 0x00, 0x08, 0x00, 0x08,
0x03, 0x00, 0x21, 0x08, 0x01, 0x11, 0x08, 0x02, 0x11, 0x08,
/* DQT */ 0xFF, 0xDB, 0x00, 0x43, 0x08,
@@ -767,7 +741,7 @@ GST_START_TEST (rtp_jpeg_list)
}
GST_END_TEST;
-static char rtp_g729_frame_data[] =
+static const guint8 rtp_g729_frame_data[] =
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
--
cgit v0.9.0.2-2-gbebe