mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-07 07:58:51 +00:00
tests: port some more to 1.0
This commit is contained in:
parent
06ac28eb81
commit
a1dc042bd8
4 changed files with 71 additions and 85 deletions
|
@ -233,7 +233,7 @@ GST_START_TEST (test_audio_pad)
|
||||||
"could not set to playing");
|
"could not set to playing");
|
||||||
|
|
||||||
/* corresponds to I420 buffer for the size mentioned in the caps */
|
/* corresponds to I420 buffer for the size mentioned in the caps */
|
||||||
inbuffer = gst_buffer_new ();
|
inbuffer = gst_buffer_new_and_alloc (sizeof (mp2_data));
|
||||||
gst_buffer_fill (inbuffer, 0, mp2_data, sizeof (mp2_data));
|
gst_buffer_fill (inbuffer, 0, mp2_data, sizeof (mp2_data));
|
||||||
caps = gst_caps_from_string (AUDIO_CAPS_STRING);
|
caps = gst_caps_from_string (AUDIO_CAPS_STRING);
|
||||||
gst_pad_set_caps (mysrcpad, caps);
|
gst_pad_set_caps (mysrcpad, caps);
|
||||||
|
|
|
@ -24,6 +24,18 @@
|
||||||
|
|
||||||
#include <gst/check/gstcheck.h>
|
#include <gst/check/gstcheck.h>
|
||||||
|
|
||||||
|
#if G_BYTE_ORDER == G_BIG_ENDIAN
|
||||||
|
#define AFORMAT "S16BE"
|
||||||
|
#else
|
||||||
|
#define AFORMAT "S16LE"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define AUDIO_CAPS_STRING "audio/x-raw, " \
|
||||||
|
"format = (string) " AFORMAT ", "\
|
||||||
|
"layout = (string) interleaved, " \
|
||||||
|
"rate = (int) 48000, " \
|
||||||
|
"channels = (int) 1 "
|
||||||
|
|
||||||
static const guint8 opus_ogg_id_header[19] = {
|
static const guint8 opus_ogg_id_header[19] = {
|
||||||
0x4f, 0x70, 0x75, 0x73, 0x48, 0x65, 0x61, 0x64, 0x00, 0x02, 0x00, 0x00, 0x00,
|
0x4f, 0x70, 0x75, 0x73, 0x48, 0x65, 0x61, 0x64, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||||
|
@ -60,8 +72,8 @@ setup_opusdec (void)
|
||||||
|
|
||||||
GST_DEBUG ("setup_opusdec");
|
GST_DEBUG ("setup_opusdec");
|
||||||
opusdec = gst_check_setup_element ("opusdec");
|
opusdec = gst_check_setup_element ("opusdec");
|
||||||
mydecsrcpad = gst_check_setup_src_pad (opusdec, &srctemplate, NULL);
|
mydecsrcpad = gst_check_setup_src_pad (opusdec, &srctemplate);
|
||||||
mydecsinkpad = gst_check_setup_sink_pad (opusdec, &sinktemplate, NULL);
|
mydecsinkpad = gst_check_setup_sink_pad (opusdec, &sinktemplate);
|
||||||
gst_pad_set_active (mydecsrcpad, TRUE);
|
gst_pad_set_active (mydecsrcpad, TRUE);
|
||||||
gst_pad_set_active (mydecsinkpad, TRUE);
|
gst_pad_set_active (mydecsinkpad, TRUE);
|
||||||
|
|
||||||
|
@ -88,8 +100,8 @@ setup_opusenc (void)
|
||||||
|
|
||||||
GST_DEBUG ("setup_opusenc");
|
GST_DEBUG ("setup_opusenc");
|
||||||
opusenc = gst_check_setup_element ("opusenc");
|
opusenc = gst_check_setup_element ("opusenc");
|
||||||
myencsrcpad = gst_check_setup_src_pad (opusenc, &srctemplate, NULL);
|
myencsrcpad = gst_check_setup_src_pad (opusenc, &srctemplate);
|
||||||
myencsinkpad = gst_check_setup_sink_pad (opusenc, &sinktemplate, NULL);
|
myencsinkpad = gst_check_setup_sink_pad (opusenc, &sinktemplate);
|
||||||
gst_pad_set_active (myencsrcpad, TRUE);
|
gst_pad_set_active (myencsrcpad, TRUE);
|
||||||
gst_pad_set_active (myencsinkpad, TRUE);
|
gst_pad_set_active (myencsinkpad, TRUE);
|
||||||
|
|
||||||
|
@ -121,7 +133,7 @@ check_buffers (guint expected)
|
||||||
for (i = 0; i < num_buffers; ++i) {
|
for (i = 0; i < num_buffers; ++i) {
|
||||||
outbuffer = GST_BUFFER (buffers->data);
|
outbuffer = GST_BUFFER (buffers->data);
|
||||||
fail_if (outbuffer == NULL);
|
fail_if (outbuffer == NULL);
|
||||||
fail_if (GST_BUFFER_SIZE (outbuffer) == 0);
|
fail_if (gst_buffer_get_size (outbuffer) == 0);
|
||||||
|
|
||||||
buffers = g_list_remove (buffers, outbuffer);
|
buffers = g_list_remove (buffers, outbuffer);
|
||||||
|
|
||||||
|
@ -142,7 +154,7 @@ GST_START_TEST (test_opus_id_header)
|
||||||
"could not set to playing");
|
"could not set to playing");
|
||||||
|
|
||||||
inbuffer = gst_buffer_new_and_alloc (sizeof (opus_ogg_id_header));
|
inbuffer = gst_buffer_new_and_alloc (sizeof (opus_ogg_id_header));
|
||||||
memcpy (GST_BUFFER_DATA (inbuffer), opus_ogg_id_header,
|
gst_buffer_fill (inbuffer, 0, opus_ogg_id_header,
|
||||||
sizeof (opus_ogg_id_header));
|
sizeof (opus_ogg_id_header));
|
||||||
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
||||||
gst_buffer_ref (inbuffer);
|
gst_buffer_ref (inbuffer);
|
||||||
|
@ -208,8 +220,6 @@ GST_START_TEST (test_opus_encode_samples)
|
||||||
GstElement *opusenc;
|
GstElement *opusenc;
|
||||||
GstBuffer *inbuffer;
|
GstBuffer *inbuffer;
|
||||||
GstCaps *caps;
|
GstCaps *caps;
|
||||||
guint16 *samples;
|
|
||||||
unsigned int n;
|
|
||||||
|
|
||||||
opusenc = setup_opusenc ();
|
opusenc = setup_opusenc ();
|
||||||
|
|
||||||
|
@ -218,19 +228,15 @@ GST_START_TEST (test_opus_encode_samples)
|
||||||
"could not set to playing");
|
"could not set to playing");
|
||||||
|
|
||||||
inbuffer = gst_buffer_new_and_alloc (nsamples * 2);
|
inbuffer = gst_buffer_new_and_alloc (nsamples * 2);
|
||||||
samples = (guint16 *) GST_BUFFER_DATA (inbuffer);
|
gst_buffer_memset (inbuffer, 0, 0, nsamples * 2);
|
||||||
for (n = 0; n < nsamples; ++n) {
|
|
||||||
samples[n] = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
GST_BUFFER_TIMESTAMP (inbuffer) = GST_BUFFER_OFFSET (inbuffer) = 0;
|
GST_BUFFER_TIMESTAMP (inbuffer) = GST_BUFFER_OFFSET (inbuffer) = 0;
|
||||||
GST_BUFFER_DURATION (inbuffer) = GST_CLOCK_TIME_NONE;
|
GST_BUFFER_DURATION (inbuffer) = GST_CLOCK_TIME_NONE;
|
||||||
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
||||||
|
|
||||||
caps =
|
caps = gst_caps_from_string (AUDIO_CAPS_STRING);
|
||||||
gst_caps_from_string ("audio/x-raw,format=S16LE,rate=48000,channels=1");
|
|
||||||
fail_unless (caps != NULL);
|
fail_unless (caps != NULL);
|
||||||
gst_buffer_set_caps (inbuffer, caps);
|
gst_pad_set_caps (myencsrcpad, caps);
|
||||||
gst_caps_unref (caps);
|
gst_caps_unref (caps);
|
||||||
gst_buffer_ref (inbuffer);
|
gst_buffer_ref (inbuffer);
|
||||||
|
|
||||||
|
@ -264,8 +270,7 @@ GST_START_TEST (test_opus_encode_properties)
|
||||||
GstElement *opusenc;
|
GstElement *opusenc;
|
||||||
GstBuffer *inbuffer;
|
GstBuffer *inbuffer;
|
||||||
GstCaps *caps;
|
GstCaps *caps;
|
||||||
guint16 *samples;
|
unsigned int step;
|
||||||
unsigned int n, step;
|
|
||||||
static const struct
|
static const struct
|
||||||
{
|
{
|
||||||
const char *param;
|
const char *param;
|
||||||
|
@ -299,22 +304,19 @@ GST_START_TEST (test_opus_encode_properties)
|
||||||
GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS,
|
GST_STATE_PLAYING) == GST_STATE_CHANGE_SUCCESS,
|
||||||
"could not set to playing");
|
"could not set to playing");
|
||||||
|
|
||||||
caps =
|
caps = gst_caps_from_string (AUDIO_CAPS_STRING);
|
||||||
gst_caps_from_string ("audio/x-raw,format=S16LE,rate=48000,channels=1");
|
|
||||||
fail_unless (caps != NULL);
|
fail_unless (caps != NULL);
|
||||||
|
|
||||||
|
gst_pad_set_caps (myencsrcpad, caps);
|
||||||
|
|
||||||
for (step = 0; step < steps; ++step) {
|
for (step = 0; step < steps; ++step) {
|
||||||
inbuffer = gst_buffer_new_and_alloc (nsamples * 2);
|
inbuffer = gst_buffer_new_and_alloc (nsamples * 2);
|
||||||
samples = (guint16 *) GST_BUFFER_DATA (inbuffer);
|
gst_buffer_memset (inbuffer, 0, 0, nsamples * 2);
|
||||||
for (n = 0; n < nsamples; ++n) {
|
|
||||||
samples[n] = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
GST_BUFFER_TIMESTAMP (inbuffer) = GST_BUFFER_OFFSET (inbuffer) = 0;
|
GST_BUFFER_TIMESTAMP (inbuffer) = GST_BUFFER_OFFSET (inbuffer) = 0;
|
||||||
GST_BUFFER_DURATION (inbuffer) = GST_CLOCK_TIME_NONE;
|
GST_BUFFER_DURATION (inbuffer) = GST_CLOCK_TIME_NONE;
|
||||||
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
||||||
|
|
||||||
gst_buffer_set_caps (inbuffer, caps);
|
|
||||||
gst_buffer_ref (inbuffer);
|
gst_buffer_ref (inbuffer);
|
||||||
|
|
||||||
/* pushing gives away my reference ... */
|
/* pushing gives away my reference ... */
|
||||||
|
|
|
@ -23,20 +23,19 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
#include <gst/check/gstcheck.h>
|
#include <gst/check/gstcheck.h>
|
||||||
#include <gst/audio/multichannel.h>
|
#include <gst/audio/audio.h>
|
||||||
|
|
||||||
/* For ease of programming we use globals to keep refs for our floating
|
/* For ease of programming we use globals to keep refs for our floating
|
||||||
* src and sink pads we create; otherwise we always have to do get_pad,
|
* src and sink pads we create; otherwise we always have to do get_pad,
|
||||||
* get_peer, and then remove references in every test function */
|
* get_peer, and then remove references in every test function */
|
||||||
static GstPad *mysrcpad, *mysinkpad;
|
static GstPad *mysrcpad, *mysinkpad;
|
||||||
|
|
||||||
#define AUDIO_CAPS_STRING "audio/x-raw-int, " \
|
#define AUDIO_CAPS_STRING "audio/x-raw, " \
|
||||||
|
"format = (string) " GST_AUDIO_NE (S16) ", "\
|
||||||
|
"layout = (string) interleaved, " \
|
||||||
"rate = (int) 48000, " \
|
"rate = (int) 48000, " \
|
||||||
"channels = (int) 2, " \
|
"channels = (int) 2, " \
|
||||||
"width = (int) 16, " \
|
"channel-mask = (bitmask) 3"
|
||||||
"depth = (int) 16, " \
|
|
||||||
"signed = (boolean) true, " \
|
|
||||||
"endianness = (int) BYTE_ORDER "
|
|
||||||
|
|
||||||
#define AAC_RAW_CAPS_STRING "audio/mpeg, " \
|
#define AAC_RAW_CAPS_STRING "audio/mpeg, " \
|
||||||
"mpegversion = (int) 4, " \
|
"mpegversion = (int) 4, " \
|
||||||
|
@ -75,12 +74,12 @@ setup_voaacenc (gboolean adts)
|
||||||
|
|
||||||
GST_DEBUG ("setup_voaacenc");
|
GST_DEBUG ("setup_voaacenc");
|
||||||
voaacenc = gst_check_setup_element ("voaacenc");
|
voaacenc = gst_check_setup_element ("voaacenc");
|
||||||
mysrcpad = gst_check_setup_src_pad (voaacenc, &srctemplate, NULL);
|
mysrcpad = gst_check_setup_src_pad (voaacenc, &srctemplate);
|
||||||
|
|
||||||
if (adts)
|
if (adts)
|
||||||
mysinkpad = gst_check_setup_sink_pad (voaacenc, &sinktemplate_adts, NULL);
|
mysinkpad = gst_check_setup_sink_pad (voaacenc, &sinktemplate_adts);
|
||||||
else
|
else
|
||||||
mysinkpad = gst_check_setup_sink_pad (voaacenc, &sinktemplate_raw, NULL);
|
mysinkpad = gst_check_setup_sink_pad (voaacenc, &sinktemplate_raw);
|
||||||
|
|
||||||
gst_pad_set_active (mysrcpad, TRUE);
|
gst_pad_set_active (mysrcpad, TRUE);
|
||||||
gst_pad_set_active (mysinkpad, TRUE);
|
gst_pad_set_active (mysinkpad, TRUE);
|
||||||
|
@ -101,28 +100,6 @@ cleanup_voaacenc (GstElement * voaacenc)
|
||||||
gst_check_teardown_element (voaacenc);
|
gst_check_teardown_element (voaacenc);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
set_channel_positions (GstCaps * caps, int channels,
|
|
||||||
GstAudioChannelPosition * channelpositions)
|
|
||||||
{
|
|
||||||
GValue chanpos = { 0 };
|
|
||||||
GValue pos = { 0 };
|
|
||||||
GstStructure *structure = gst_caps_get_structure (caps, 0);
|
|
||||||
int c;
|
|
||||||
|
|
||||||
g_value_init (&chanpos, GST_TYPE_ARRAY);
|
|
||||||
g_value_init (&pos, GST_TYPE_AUDIO_CHANNEL_POSITION);
|
|
||||||
|
|
||||||
for (c = 0; c < channels; c++) {
|
|
||||||
g_value_set_enum (&pos, channelpositions[c]);
|
|
||||||
gst_value_array_append_value (&chanpos, &pos);
|
|
||||||
}
|
|
||||||
g_value_unset (&pos);
|
|
||||||
|
|
||||||
gst_structure_set_value (structure, "channel-positions", &chanpos);
|
|
||||||
g_value_unset (&chanpos);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
do_test (gboolean adts)
|
do_test (gboolean adts)
|
||||||
{
|
{
|
||||||
|
@ -131,10 +108,6 @@ do_test (gboolean adts)
|
||||||
GstCaps *caps;
|
GstCaps *caps;
|
||||||
gint i, num_buffers;
|
gint i, num_buffers;
|
||||||
const gint nbuffers = 10;
|
const gint nbuffers = 10;
|
||||||
GstAudioChannelPosition channel_position_layout[2] =
|
|
||||||
{ GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT,
|
|
||||||
GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT
|
|
||||||
};
|
|
||||||
|
|
||||||
voaacenc = setup_voaacenc (adts);
|
voaacenc = setup_voaacenc (adts);
|
||||||
fail_unless (gst_element_set_state (voaacenc,
|
fail_unless (gst_element_set_state (voaacenc,
|
||||||
|
@ -144,12 +117,10 @@ do_test (gboolean adts)
|
||||||
/* corresponds to audio buffer mentioned in the caps */
|
/* corresponds to audio buffer mentioned in the caps */
|
||||||
inbuffer = gst_buffer_new_and_alloc (1024 * nbuffers * 2 * 2);
|
inbuffer = gst_buffer_new_and_alloc (1024 * nbuffers * 2 * 2);
|
||||||
/* makes valgrind's memcheck happier */
|
/* makes valgrind's memcheck happier */
|
||||||
memset (GST_BUFFER_DATA (inbuffer), 0, GST_BUFFER_SIZE (inbuffer));
|
gst_buffer_memset (inbuffer, 0, 0, 1024 * nbuffers * 2 * 2);
|
||||||
caps = gst_caps_from_string (AUDIO_CAPS_STRING);
|
caps = gst_caps_from_string (AUDIO_CAPS_STRING);
|
||||||
|
|
||||||
set_channel_positions (caps, 2, channel_position_layout);
|
gst_pad_set_caps (mysrcpad, caps);
|
||||||
|
|
||||||
gst_buffer_set_caps (inbuffer, caps);
|
|
||||||
gst_caps_unref (caps);
|
gst_caps_unref (caps);
|
||||||
GST_BUFFER_TIMESTAMP (inbuffer) = 0;
|
GST_BUFFER_TIMESTAMP (inbuffer) = 0;
|
||||||
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
||||||
|
@ -163,14 +134,17 @@ do_test (gboolean adts)
|
||||||
|
|
||||||
/* clean up buffers */
|
/* clean up buffers */
|
||||||
for (i = 0; i < num_buffers; ++i) {
|
for (i = 0; i < num_buffers; ++i) {
|
||||||
gint size, header = 0, id;
|
gint header = 0, id;
|
||||||
|
GstMapInfo map;
|
||||||
|
gsize size;
|
||||||
guint8 *data;
|
guint8 *data;
|
||||||
|
|
||||||
outbuffer = GST_BUFFER (buffers->data);
|
outbuffer = GST_BUFFER (buffers->data);
|
||||||
fail_if (outbuffer == NULL);
|
fail_if (outbuffer == NULL);
|
||||||
|
|
||||||
data = GST_BUFFER_DATA (outbuffer);
|
gst_buffer_map (outbuffer, &map, GST_MAP_READ);
|
||||||
size = GST_BUFFER_SIZE (outbuffer);
|
data = map.data;
|
||||||
|
size = map.size;
|
||||||
|
|
||||||
if (adts) {
|
if (adts) {
|
||||||
gboolean protection;
|
gboolean protection;
|
||||||
|
@ -206,8 +180,9 @@ do_test (gboolean adts)
|
||||||
const GValue *value;
|
const GValue *value;
|
||||||
GstBuffer *buf;
|
GstBuffer *buf;
|
||||||
gint k;
|
gint k;
|
||||||
|
GstMapInfo cmap;
|
||||||
|
|
||||||
caps = gst_buffer_get_caps (outbuffer);
|
caps = gst_pad_get_current_caps (mysinkpad);
|
||||||
fail_if (caps == NULL);
|
fail_if (caps == NULL);
|
||||||
s = gst_caps_get_structure (caps, 0);
|
s = gst_caps_get_structure (caps, 0);
|
||||||
fail_if (s == NULL);
|
fail_if (s == NULL);
|
||||||
|
@ -215,10 +190,10 @@ do_test (gboolean adts)
|
||||||
fail_if (value == NULL);
|
fail_if (value == NULL);
|
||||||
buf = gst_value_get_buffer (value);
|
buf = gst_value_get_buffer (value);
|
||||||
fail_if (buf == NULL);
|
fail_if (buf == NULL);
|
||||||
data = GST_BUFFER_DATA (buf);
|
gst_buffer_map (buf, &cmap, GST_MAP_READ);
|
||||||
size = GST_BUFFER_SIZE (buf);
|
fail_if (cmap.size < 2);
|
||||||
fail_if (size < 2);
|
k = GST_READ_UINT16_BE (cmap.data);
|
||||||
k = GST_READ_UINT16_BE (data);
|
gst_buffer_unmap (buf, &cmap);
|
||||||
/* profile, rate, channels */
|
/* profile, rate, channels */
|
||||||
fail_unless ((k & 0xFFF8) == ((0x02 << 11) | (0x3 << 7) | (0x02 << 3)));
|
fail_unless ((k & 0xFFF8) == ((0x02 << 11) | (0x3 << 7) | (0x02 << 3)));
|
||||||
gst_caps_unref (caps);
|
gst_caps_unref (caps);
|
||||||
|
@ -229,6 +204,7 @@ do_test (gboolean adts)
|
||||||
id = data[header] & (0x7 << 5);
|
id = data[header] & (0x7 << 5);
|
||||||
/* allow all but ID_END or ID_LFE */
|
/* allow all but ID_END or ID_LFE */
|
||||||
fail_if (id == 7 || id == 3);
|
fail_if (id == 7 || id == 3);
|
||||||
|
gst_buffer_unmap (outbuffer, &map);
|
||||||
|
|
||||||
buffers = g_list_remove (buffers, outbuffer);
|
buffers = g_list_remove (buffers, outbuffer);
|
||||||
|
|
||||||
|
|
|
@ -29,13 +29,18 @@
|
||||||
* get_peer, and then remove references in every test function */
|
* get_peer, and then remove references in every test function */
|
||||||
static GstPad *mysrcpad, *mysinkpad;
|
static GstPad *mysrcpad, *mysinkpad;
|
||||||
|
|
||||||
#define AUDIO_CAPS_STRING "audio/x-raw-int, " \
|
#if G_BYTE_ORDER == G_BIG_ENDIAN
|
||||||
|
#define AFORMAT "S16BE"
|
||||||
|
#else
|
||||||
|
#define AFORMAT "S16LE"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define AUDIO_CAPS_STRING "audio/x-raw, " \
|
||||||
|
"format = (string) " AFORMAT ", "\
|
||||||
|
"layout = (string) interleaved, " \
|
||||||
"rate = (int) 16000, " \
|
"rate = (int) 16000, " \
|
||||||
"channels = (int) 1, " \
|
"channels = (int) 1 "
|
||||||
"width = (int) 16, " \
|
|
||||||
"depth = (int) 16, " \
|
|
||||||
"signed = (boolean) true, " \
|
|
||||||
"endianness = (int) BYTE_ORDER "
|
|
||||||
|
|
||||||
#define AMRWB_CAPS_STRING "audio/AMR-WB"
|
#define AMRWB_CAPS_STRING "audio/AMR-WB"
|
||||||
|
|
||||||
|
@ -61,8 +66,8 @@ setup_voamrwbenc (void)
|
||||||
voamrwbenc = gst_check_setup_element ("voamrwbenc");
|
voamrwbenc = gst_check_setup_element ("voamrwbenc");
|
||||||
/* ensure mode as expected */
|
/* ensure mode as expected */
|
||||||
g_object_set (voamrwbenc, "band-mode", 0, NULL);
|
g_object_set (voamrwbenc, "band-mode", 0, NULL);
|
||||||
mysrcpad = gst_check_setup_src_pad (voamrwbenc, &srctemplate, NULL);
|
mysrcpad = gst_check_setup_src_pad (voamrwbenc, &srctemplate);
|
||||||
mysinkpad = gst_check_setup_sink_pad (voamrwbenc, &sinktemplate, NULL);
|
mysinkpad = gst_check_setup_sink_pad (voamrwbenc, &sinktemplate);
|
||||||
gst_pad_set_active (mysrcpad, TRUE);
|
gst_pad_set_active (mysrcpad, TRUE);
|
||||||
gst_pad_set_active (mysinkpad, TRUE);
|
gst_pad_set_active (mysinkpad, TRUE);
|
||||||
|
|
||||||
|
@ -99,10 +104,10 @@ do_test (void)
|
||||||
/* corresponds to audio buffer mentioned in the caps */
|
/* corresponds to audio buffer mentioned in the caps */
|
||||||
inbuffer = gst_buffer_new_and_alloc (320 * nbuffers * 2);
|
inbuffer = gst_buffer_new_and_alloc (320 * nbuffers * 2);
|
||||||
/* makes valgrind's memcheck happier */
|
/* makes valgrind's memcheck happier */
|
||||||
memset (GST_BUFFER_DATA (inbuffer), 0, GST_BUFFER_SIZE (inbuffer));
|
gst_buffer_memset (inbuffer, 0, 0, 1024 * nbuffers * 2 * 2);
|
||||||
caps = gst_caps_from_string (AUDIO_CAPS_STRING);
|
caps = gst_caps_from_string (AUDIO_CAPS_STRING);
|
||||||
|
|
||||||
gst_buffer_set_caps (inbuffer, caps);
|
gst_pad_set_caps (mysrcpad, caps);
|
||||||
gst_caps_unref (caps);
|
gst_caps_unref (caps);
|
||||||
GST_BUFFER_TIMESTAMP (inbuffer) = 0;
|
GST_BUFFER_TIMESTAMP (inbuffer) = 0;
|
||||||
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1);
|
||||||
|
@ -116,15 +121,17 @@ do_test (void)
|
||||||
|
|
||||||
/* clean up buffers */
|
/* clean up buffers */
|
||||||
for (i = 0; i < num_buffers; ++i) {
|
for (i = 0; i < num_buffers; ++i) {
|
||||||
gint size;
|
GstMapInfo map;
|
||||||
|
gsize size;
|
||||||
guint8 *data;
|
guint8 *data;
|
||||||
GstClockTime time, dur;
|
GstClockTime time, dur;
|
||||||
|
|
||||||
outbuffer = GST_BUFFER (buffers->data);
|
outbuffer = GST_BUFFER (buffers->data);
|
||||||
fail_if (outbuffer == NULL);
|
fail_if (outbuffer == NULL);
|
||||||
|
|
||||||
data = GST_BUFFER_DATA (outbuffer);
|
gst_buffer_map (outbuffer, &map, GST_MAP_READ);
|
||||||
size = GST_BUFFER_SIZE (outbuffer);
|
data = map.data;
|
||||||
|
size = map.size;
|
||||||
|
|
||||||
/* at least for mode 0 */
|
/* at least for mode 0 */
|
||||||
fail_unless (size == 18);
|
fail_unless (size == 18);
|
||||||
|
@ -135,6 +142,7 @@ do_test (void)
|
||||||
dur = GST_BUFFER_DURATION (outbuffer);
|
dur = GST_BUFFER_DURATION (outbuffer);
|
||||||
fail_unless (time == 20 * GST_MSECOND * i);
|
fail_unless (time == 20 * GST_MSECOND * i);
|
||||||
fail_unless (dur == 20 * GST_MSECOND);
|
fail_unless (dur == 20 * GST_MSECOND);
|
||||||
|
gst_buffer_unmap (outbuffer, &map);
|
||||||
|
|
||||||
buffers = g_list_remove (buffers, outbuffer);
|
buffers = g_list_remove (buffers, outbuffer);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue