Jump to content


Photo

GStreamer 1.0

gstreamer 1.0 openpli

  • Please log in to reply
2520 replies to this topic

Re: GStreamer 1.0 #841 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 20 March 2015 - 20:04

Hello,

@christophecvr, below is the schwerkraft (aka dreambox) gst_dvbaudiosink_set_caps:
 
995          else if (!strcmp(type, "audio/x-raw-int")) {
996                  GST_INFO_OBJECT (self, "MIMETYPE %s",type);
997                  bypass = 0xf;
998                  gint block_align, width, rate, depth, channels, bitrate;
999                  gst_structure_get_int (structure, "channels", &channels);
1000                 gst_structure_get_int (structure, "rate", &rate);
1001                 gst_structure_get_int (structure, "width", &width);
1002                 gst_structure_get_int (structure, "depth", &depth);
1003                 // calc size of pcm data for 30ms
1004                 self->block_align = rate * 30 / 1000;
1005                 self->block_align *= channels * depth / 8;
1006                 block_align = channels * width / 8;
1007                 bitrate = channels * rate * width;
1008                 self->temp_offset = 18+8;
1009                 self->temp_buffer = gst_buffer_new_and_alloc(self->temp_offset+self->block_align);
1010                 guint8 *d = GST_BUFFER_DATA(self->temp_buffer);
1011                 memcpy(d, "BCMA", 4);
1012                 d[4] = (self->block_align & 0xFF000000) >> 24;
1013                 d[5] = (self->block_align & 0xFF0000) >> 16;
1014                 d[6] = (self->block_align & 0xFF00) >> 8;
1015                 d[7] = (self->block_align & 0xFF);
1016                 // rebuild WAVFORMAT
1017                 d[8] = 0x01; // format tag
1018                 d[9] = 0x00;
1019                 d[10] = channels & 0xFF;
1020                 d[11] = (channels >> 8) & 0xFF;
1021                 d[12] = rate & 0xFF; // sample rate
1022                 d[13] = (rate & 0xFF00) >> 8;
1023                 d[14] = (rate & 0xFF0000) >> 16;
1024                 d[15] = (rate & 0xFF000000) >> 24;
1025                 d[16] = (bitrate >> 3) & 0xFF; // byte rate
1026                 d[17] = (bitrate >> 11) & 0xFF;
1027                 d[18] = (bitrate >> 19) & 0xFF;
1028                 d[19] = (bitrate >> 27) & 0xFF;
1029                 d[20] = block_align & 0xFF; // block align
1030                 d[21] = (block_align >> 8) & 0xFF;
1031                 d[22] = depth & 0xFF; // word size
1032                 d[23] = (depth >> 8) & 0xFF;
1033                 d[24] = 0; // codec data len
1034                 d[25] = 0;
1035         }
Below is the your version of gst_dvbaudiosink_set_caps:
 
666  	else if (!strcmp(type, XRAW))
667  	{
668  		guint8 *data;
669  		gint size;
670  		gint format = 0x01;
671  #if GST_VERSION_MAJOR >= 1
672  		const gchar *formatstring = NULL;
673  #endif
674  		gint width = 0, depth = 0, rate = 0, channels, block_align, byterate;
675  		self->codec_data = gst_buffer_new_and_alloc(18);
676  #if GST_VERSION_MAJOR < 1
677  		data = GST_BUFFER_DATA(self->codec_data);
678  		size = GST_BUFFER_SIZE(self->codec_data);
679  #else
680  		GstMapInfo map;
681  		gst_buffer_map(self->codec_data, &map, GST_MAP_WRITE);
682  		data = map.data;
683  		size = map.size;
684  #endif
685  #if GST_VERSION_MAJOR < 1
686  		gst_structure_get_int(structure, "width", &width);
687  		gst_structure_get_int(structure, "depth", &depth);
688  #else
689  		formatstring = gst_structure_get_string(structure, "format");
690  		if (formatstring)
691  		{
692  			if (!strncmp(&formatstring[1], "32", 2))
693  			{
694  				width = depth = 32;
695  			}
696  			else if (!strncmp(&formatstring[1], "24", 2))
697  			{
698  				width = depth = 24;
699  			}
700  			else if (!strncmp(&formatstring[1], "16", 2))
701  			{
702  				width = depth = 16;
703  			}
704  			else if (!strncmp(&formatstring[1], "8", 1))
705  			{
706  				width = depth = 8;
707  			}
708  		}
709  #endif
710  		gst_structure_get_int(structure, "rate", &rate);
711  		gst_structure_get_int(structure, "channels", &channels);
712  		byterate = channels * rate * width / 8;
713  		block_align = channels * width / 8;
714  		memset(data, 0, size);
715  		/* format tag */
716  		*(data++) = format & 0xff;
717  		*(data++) = (format >> 8) & 0xff;
718  		/* channels */
719  		*(data++) = channels & 0xff;
720  		*(data++) = (channels >> 8) & 0xff;
721  		/* sample rate */
722  		*(data++) = rate & 0xff;
723  		*(data++) = (rate >> 8) & 0xff;
724  		*(data++) = (rate >> 16) & 0xff;
725  		*(data++) = (rate >> 24) & 0xff;
726  		/* byte rate */
727  		*(data++) = byterate & 0xff;
728  		*(data++) = (byterate >> 8) & 0xff;
729  		*(data++) = (byterate >> 16) & 0xff;
730  		*(data++) = (byterate >> 24) & 0xff;
731  		/* block align */
732  		*(data++) = block_align & 0xff;
733  		*(data++) = (block_align >> 8) & 0xff;
734  		/* word size */
735  		*(data++) = depth & 0xff;
736  		*(data++) = (depth >> 8) & 0xff;
737  		self->fixed_buffersize = rate * 30 / 1000;
738  		self->fixed_buffersize *= channels * depth / 8;
739  		self->fixed_buffertimestamp = GST_CLOCK_TIME_NONE;
740  		self->fixed_bufferduration = GST_SECOND * (GstClockTime)self->fixed_buffersize / (GstClockTime)byterate;
741  		GST_INFO_OBJECT(self, "MIMETYPE %s", type);
742  		bypass = AUDIOTYPE_RAW;
743  #if GST_VERSION_MAJOR >= 1
744  		gst_buffer_unmap(self->codec_data, &map);
745  #endif
746  	}
I have the impression that produced data for "RAW" are not the same.

WAVFORMAT (d[8] to d[23]) seems same for both dvbmediasinks.

But schwerkraft starts with BCMA (d[0] to d[3]), then size of pcm data for 30ms is stored (d[4] to d[7]), finaly codec data len is added (d[24] to d[25]).

Did you compare produced data produced with OpenPLi dvbmediasink patched for dreambox?

PS. Regarding codec data len, I guess OpenPLi version silently does the same with memset(data, 0, size);

Edited by athoik, 20 March 2015 - 20:08.

Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #842 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 20 March 2015 - 20:22

What will happen, btw, if we switch to gst-1 now, regarding media playback on dmm models and we don't allow model specific code? Will it totally break dmm media playback, just a bit, or not at all?


* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: GStreamer 1.0 #843 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 20 March 2015 - 20:29

What will happen, btw, if we switch to gst-1 now, regarding media playback on dmm models and we don't allow model specific code? Will it totally break dmm media playback, just a bit, or not at all?


No XRAW (code & ioctl), No WMA (code & ioctl), No AC3+ (ioctl), No WMV (code & ioctl).

Also most probably no DTS Downmix (OpenPLi dtsdownmix needs more fixes).

Some (or all?) of the above fixed from @christophecvr.

I did not test @christophecvr Dreambox patches yet, but I guess OpenATV & @christophecvr already did.
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #844 babsy98

  • Senior Member
  • 166 posts

+18
Neutral

Posted 20 March 2015 - 20:29

dm dts downmix not work and m4a high bitrate not work, with vu and xtrend all ok test with gst 1.4.5 all other types of media works

 

issue gst 1.x  are audio stream language tag not working , user cant see the correct language then select the audio stream



Re: GStreamer 1.0 #845 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 20 March 2015 - 20:31

 

What will happen, btw, if we switch to gst-1 now, regarding media playback on dmm models and we don't allow model specific code? Will it totally break dmm media playback, just a bit, or not at all?


No XRAW (code & ioctl), No WMA (code & ioctl), No AC3+ (ioctl), No WMV (code & ioctl).

Also most probably no DTS Downmix (OpenPLi dtsdownmix needs more fixes).

Some (or all?) of the above fixed from @christophecvr.

I did not test @christophecvr Dreambox patches yet, but I guess OpenATV & @christophecvr already did.

Sort of what was expected. XRAW = wav/pcm?

 

I guess that's a patch that's going into SatDreamGR then :)


* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: GStreamer 1.0 #846 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 20 March 2015 - 20:31

dm dts downmix not work and m4a high bitrate not work, with vu and xtrend all ok test with gst 1.4.5 all other types of media works

Did you test with the bsp update of today (vu+)?


* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: GStreamer 1.0 #847 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 20 March 2015 - 20:36

Sort of what was expected. XRAW = wav/pcm?


#define XRAW "audio/x-raw" ;)

Most probably we can adapt @christophecvr dvbmediasink (for dreamboxes) and everybody will be happy. No dirty "#if DREABOX" code into OpenPLi again.

Edited by athoik, 20 March 2015 - 20:36.

Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #848 babsy98

  • Senior Member
  • 166 posts

+18
Neutral

Posted 20 March 2015 - 20:36

i have not test vu bsp i use my own git but i use the same options i think works identical, i have test all type of media with vu and works great



Re: GStreamer 1.0 #849 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 20 March 2015 - 21:37

 

Sort of what was expected. XRAW = wav/pcm?


#define XRAW "audio/x-raw" ;)

Most probably we can adapt @christophecvr dvbmediasink (for dreamboxes) and everybody will be happy. No dirty "#if DREABOX" code into OpenPLi again.

Do I feel a tiny bit of cynism here? ;)


* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: GStreamer 1.0 #850 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 20 March 2015 - 21:38

BTW the build just finished, the feeds are updated. If you're going to upgrade your VU+ receiver now, you will have the "new" generic mediasink. It appears to work even without a flash, an upgrade seems to be sufficient.


* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: GStreamer 1.0 #851 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 20 March 2015 - 22:01

Do I feel a tiny bit of cynism here? ;)


I thought that audio/x-raw is synonym for PCM.

(Or it was the dirty "If Dreambox"?)

I had no pruprose to be cynic. Sorry If that makes you feel like that.

Edited by athoik, 20 March 2015 - 22:02.

Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #852 Taykun345

  • Senior Member
  • 1,297 posts

+41
Good

Posted 20 March 2015 - 22:15

I did the upgrade, mkv files for example do not start now (duo2).


Army MoodBlue HD skin modification by me: https://github.com/T...-MoodBlueHD-mod
Matrix10 MH-HD2 skin modification by me: https://github.com/B...-MX-HD2-OpenPli
MetrixHD skin modification by me: https://github.com/T...xHD-WPstyle-mod
Slovenian translation for OpenPLi E2: https://github.com/T...ion-for-OpenPLi

Re: GStreamer 1.0 #853 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 20 March 2015 - 22:21

@athoik

 

No the BCMA is indeed a part off pes header by dmm . That's for RAW and for WMA . I added them box realted to the pes header in audio.

	else if (self->bypass == AUDIOTYPE_WMA || self->bypass == AUDIOTYPE_WMA_PRO)
	{
		if (self->codec_data)
		{
			size_t payload_len = size;
#if defined(DREAMBOX) || defined(DAGS)
			pes_header[pes_header_len++] = 0x42; // B
			pes_header[pes_header_len++] = 0x43; // C
			pes_header[pes_header_len++] = 0x4D; // M
			pes_header[pes_header_len++] = 0x41; // A
#endif
			pes_header[pes_header_len++] = (payload_len >> 24) & 0xff;
			pes_header[pes_header_len++] = (payload_len >> 16) & 0xff;
			pes_header[pes_header_len++] = (payload_len >> 8) & 0xff;
			pes_header[pes_header_len++] = payload_len & 0xff;
			memcpy(&pes_header[pes_header_len], codec_data, codec_data_size);
			pes_header_len += codec_data_size;
		}
	}
	else if (self->bypass == AUDIOTYPE_AMR)
	{
		if (self->codec_data && codec_data_size >= 17)
		{
			size_t payload_len = size + 17;
			pes_header[pes_header_len++] = (payload_len >> 24) & 0xff;
			pes_header[pes_header_len++] = (payload_len >> 16) & 0xff;
			pes_header[pes_header_len++] = (payload_len >> 8) & 0xff;
			pes_header[pes_header_len++] = payload_len & 0xff;
			memcpy(&pes_header[pes_header_len], codec_data + 8, 9);
			pes_header_len += 9;
		}
	}
	else if (self->bypass == AUDIOTYPE_RAW)
	{
		if (self->codec_data && codec_data_size >= 18)
		{
			size_t payload_len = size;
#if defined(DREAMBOX) || defined(DAGS)
			pes_header[pes_header_len++] = 0x42; // B
			pes_header[pes_header_len++] = 0x43; // C
			pes_header[pes_header_len++] = 0x4D; // M
			pes_header[pes_header_len++] = 0x41; // A
#endif
			pes_header[pes_header_len++] = (payload_len >> 24) & 0xff;
			pes_header[pes_header_len++] = (payload_len >> 16) & 0xff;
			pes_header[pes_header_len++] = (payload_len >> 8) & 0xff;
			pes_header[pes_header_len++] = payload_len & 0xff;
			memcpy(&pes_header[pes_header_len], codec_data, codec_data_size);
			pes_header_len += codec_data_size;
		}
	}

	pes_set_payload_size(size + pes_header_len - 6, pes_header);

	if (audio_write(self, self->pesheader_buffer, 0, pes_header_len) < 0) goto error;
	if (audio_write(self, buffer, data - original_data, data - original_data + size) < 0) goto error;
	if (timestamp != GST_CLOCK_TIME_NONE)
	{
		self->pts_written = TRUE;
	}
#if GST_VERSION_MAJOR >= 1
	gst_buffer_unmap(self->pesheader_buffer, &pesheadermap);
	if (self->codec_data)
	{
		gst_buffer_unmap(self->codec_data, &codecdatamap);
	}
	gst_buffer_unmap(buffer, &map);
#endif
	return GST_FLOW_OK;

end line is 1259.



Re: GStreamer 1.0 #854 ricki

  • Senior Member
  • 591 posts

+3
Neutral

Posted 20 March 2015 - 22:28

I did the upgrade, mkv files for example do not start now (duo2).

same error solo2



Re: GStreamer 1.0 #855 Taykun345

  • Senior Member
  • 1,297 posts

+41
Good

Posted 20 March 2015 - 22:31

I guess I will have to reflash, again :S


Army MoodBlue HD skin modification by me: https://github.com/T...-MoodBlueHD-mod
Matrix10 MH-HD2 skin modification by me: https://github.com/B...-MX-HD2-OpenPli
MetrixHD skin modification by me: https://github.com/T...xHD-WPstyle-mod
Slovenian translation for OpenPLi E2: https://github.com/T...ion-for-OpenPLi

Re: GStreamer 1.0 #856 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 20 March 2015 - 22:34

 

I did the upgrade, mkv files for example do not start now (duo2).

same error solo2

 

Vuduo2 do not set --with-dtsdownmix.

 

2 You need the drivers if You want to work with pli's mediasink.

 

If You use gstreamer1.0-plugin-multibox-dvbmediasink

DVBMEDIASINK_CONFIG = "--with-pcm --with-eac3 --with-amr --with-wmv"  Do not use the downmix that's only dmm. that with new drivers

 

with old drivers DVBMEDIASINK_CONFIG = "--with-vuplus --with-pcm --with-eac3 --with-amr --with-wmv"


Edited by christophecvr, 20 March 2015 - 22:36.


Re: GStreamer 1.0 #857 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 20 March 2015 - 22:37

@athoik
 
No the BCMA is indeed a part off pes header by dmm . That's for RAW and for WMA . I added them box realted to the pes header in audio.


Ok, that's nice. Do you have an idea what might be wrong with DTS?

There is also a dts plugin from gstreamer (gstdtsdec) that downmixes to RAW (instead of LPCM). Since RAW is working dtssdec might work also!
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #858 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 20 March 2015 - 22:52

 

@athoik
 
No the BCMA is indeed a part off pes header by dmm . That's for RAW and for WMA . I added them box realted to the pes header in audio.


Ok, that's nice. Do you have an idea what might be wrong with DTS?

There is also a dts plugin from gstreamer (gstdtsdec) that downmixes to RAW (instead of LPCM). Since RAW is working dtssdec might work also!

 

Yes I think that I've got the reason. Almost shure.What done now is:   into the gstdownmix.c :

static GstFlowReturn gst_dtsdownmix_handle_frame(GstDtsDownmix *dts, guint8 *data, guint length)
{
	gint num_blocks;
	GstBuffer *buffer = NULL;
	level_t level = 1;
	sample_t bias = 0;
	gint flags = DCA_STEREO; /* force downmix to stereo */

	/* process */
	if (dca_frame(dts->state, data, &flags, &level, bias))
	{
		GST_WARNING_OBJECT(dts, "dts_frame error");
		return GST_FLOW_ERROR;
	}

	/* handle decoded data, one block is 256 samples */
	num_blocks = dca_blocks_num(dts->state);

#if GST_VERSION_MAJOR < 1
	if (gst_pad_alloc_buffer_and_set_caps(dts->srcpad, 0, num_blocks * 256 * dts->using_channels * 2 + 7, GST_PAD_CAPS(dts->srcpad), &buffer) == GST_FLOW_OK)
#else
	if ((buffer = gst_buffer_new_allocate(NULL, num_blocks * 256 * dts->using_channels * 2 + 7, NULL)))
#endif
	{
		gint i;
		gint16 *dest;
		gint8 *header;
#if GST_VERSION_MAJOR < 1
		header = GST_BUFFER_DATA(buffer);
#else
		GstMapInfo map;
		gst_buffer_map(buffer, &map, GST_MAP_WRITE);
		header = map.data;
#endif
		GST_BUFFER_DURATION(buffer) = num_blocks * GST_SECOND * 256 / dts->sample_rate;
		GST_BUFFER_TIMESTAMP(buffer) = dts->timestamp;
		dts->timestamp += GST_BUFFER_DURATION(buffer);

		*header++ = 0xa0;
		*header++ = 0x01; /* frame count */
		*header++ = 0x00; /* first access unit pointer msb */
		*header++ = 0x04; /* first access unit pointer lsb: skip header */
		*header++ = 0x00; /* frame number */
		switch (dts->sample_rate)
		{
		default:
		case 48000:
			*header = 0x00;
			break;
		case 96000:
			*header = 0x10;
			break;
		}
		*header++ |= dts->using_channels - 1;
		*header++ = 0x80;
		dest = (gint16*)header;
		for (i = 0; i < num_blocks; i++)
		{
			if (dca_block(dts->state))
			{
				GST_WARNING_OBJECT(dts, "dts_block error %d", i);
				dest += 256 * dts->using_channels;
			}
			else
			{
				int n, c;
				for (n = 0; n < 256; n++)
				{
					for (c = 0; c < dts->using_channels; c++)
					{
						*dest = GINT16_TO_BE(CLAMP((gint32)(dts->samples[c * 256 + n] * 32767.5 + 0.5), -32767, 32767));
						dest++;
					}
				}
			}
		}
#if GST_VERSION_MAJOR >= 1
		gst_buffer_unmap(buffer, &map);
#endif
		/* push on */
		return gst_pad_push(dts->srcpad, buffer);
	}
	else
	{
		return GST_FLOW_ERROR;
	}
}

gst_pad_alloc_buffer_and_set_caps  is deprecated and not in use anymore for gst-1.0.

 

Now they create just an empty buffer bij gst-1.0 whitout the caps data.

 

I'm currently watching in the manuals porting 0.1 to 1.0 to see how I can create that buffer but also set the caps .

 

Will be something for tommorow.



Re: GStreamer 1.0 #859 MastaG

  • Senior Member
  • 1,531 posts

+118
Excellent

Posted 20 March 2015 - 23:19

Ah so if we sum up the day we have:

- A possible blocksize improvement by Athoik

- A dts downmix issue on dreambox receiver that's currently being worked on by christophecvr.

- Language tags missing when trying to select audio trakcs

 

Everything else seems to be fixed in christophecvr's github.

So after the dts downmix and the language tag issues have been fixed we have it 100% working for all receivers right?

 

I really hope by then, everything will be committed including the dreambox specific ifdefs like the ac3+ bypass 7 patch.

 

Keep up the great work.

This is really lifting up these older receivers to a new level :)



Re: GStreamer 1.0 #860 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 20 March 2015 - 23:37

I'm currently watching in the manuals porting 0.1 to 1.0 to see how I can create that buffer but also set the caps .


I guess we are missing the GST_EVENT_CAPS!

Start from here: http://lists.freedes...May/049401.html, http://gstreamer.fre...o-usecases.html

#else
+    case GST_EVENT_CAPS:
+    {
+      GstCaps *caps;
+
+      gst_event_parse_caps (event, &caps);
+      ret = gst_dtsdownmix_setcaps(dtsdownmix, caps)
+      break;
+    }
     case GST_EVENT_SEGMENT:

Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916



37 user(s) are reading this topic

0 members, 36 guests, 0 anonymous users


    Bing (1)