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 #621 blzr

  • PLi® Core member
  • 2,269 posts

+118
Excellent

Posted 21 February 2015 - 10:30

here's the fix for this:

http://forums.openpl...00/#entry477041


True sarcasm doesn't need green font...

Re: GStreamer 1.0 #622 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 21 February 2015 - 10:44

Fixed in gst-1 branch now too.

 

I've been "out of the office" yesterday most of the day.


* 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 #623 MastaG

  • Senior Member
  • 1,531 posts

+118
Excellent

Posted 21 February 2015 - 14:36

As for the dm800se, it works :D

root@dm800se:~# opkg list_installed | grep gst
gstreamer1.0 - 1.4.5-r0
gstreamer1.0-libav - 1.4.5-r0
gstreamer1.0-plugin-dvbmediasink - 1.0+git56+50b7e19-r0
gstreamer1.0-plugin-subsink - 1.0+git6+0437b39-r0
gstreamer1.0-plugins-bad - 1.4.5-r0
gstreamer1.0-plugins-bad-faad - 1.4.5-r0
gstreamer1.0-plugins-bad-fragmented - 1.4.5-r0
gstreamer1.0-plugins-bad-mms - 1.4.5-r0
gstreamer1.0-plugins-bad-mpegpsdemux - 1.4.5-r0
gstreamer1.0-plugins-bad-mpegtsdemux - 1.4.5-r0
gstreamer1.0-plugins-bad-rtmp - 1.4.5-r0
gstreamer1.0-plugins-bad-videoparsersbad - 1.4.5-r0
gstreamer1.0-plugins-base - 1.4.5-r0
gstreamer1.0-plugins-base-app - 1.4.5-r0
gstreamer1.0-plugins-base-audioconvert - 1.4.5-r0
gstreamer1.0-plugins-base-audioresample - 1.4.5-r0
gstreamer1.0-plugins-base-playback - 1.4.5-r0
gstreamer1.0-plugins-base-subparse - 1.4.5-r0
gstreamer1.0-plugins-base-typefindfunctions - 1.4.5-r0
gstreamer1.0-plugins-good - 1.4.5-r0
gstreamer1.0-plugins-good-apetag - 1.4.5-r0
gstreamer1.0-plugins-good-audioparsers - 1.4.5-r0
gstreamer1.0-plugins-good-autodetect - 1.4.5-r0
gstreamer1.0-plugins-good-avi - 1.4.5-r0
gstreamer1.0-plugins-good-flac - 1.4.5-r0
gstreamer1.0-plugins-good-flv - 1.4.5-r0
gstreamer1.0-plugins-good-icydemux - 1.4.5-r0
gstreamer1.0-plugins-good-id3demux - 1.4.5-r0
gstreamer1.0-plugins-good-isomp4 - 1.4.5-r0
gstreamer1.0-plugins-good-matroska - 1.4.5-r0
gstreamer1.0-plugins-good-rtp - 1.4.5-r0
gstreamer1.0-plugins-good-rtpmanager - 1.4.5-r0
gstreamer1.0-plugins-good-rtsp - 1.4.5-r0
gstreamer1.0-plugins-good-souphttpsrc - 1.4.5-r0
gstreamer1.0-plugins-good-udp - 1.4.5-r0
gstreamer1.0-plugins-good-wavparse - 1.4.5-r0
gstreamer1.0-plugins-ugly - 1.4.5-r0
gstreamer1.0-plugins-ugly-amrnb - 1.4.5-r0
gstreamer1.0-plugins-ugly-amrwbdec - 1.4.5-r0
gstreamer1.0-plugins-ugly-asf - 1.4.5-r0
gstreamer1.0-plugins-ugly-cdio - 1.4.5-r0
gstreamer1.0-plugins-ugly-dvdsub - 1.4.5-r0
gstreamer1.0-plugins-ugly-mad - 1.4.5-r0
libgstapp-1.0-0 - 1.4.5-r0
libgstaudio-1.0-0 - 1.4.5-r0
libgstcodecparsers-1.0-0 - 1.4.5-r0
libgstmpegts-1.0-0 - 1.4.5-r0
libgstpbutils-1.0-0 - 1.4.5-r0
libgstriff-1.0-0 - 1.4.5-r0
libgstrtp-1.0-0 - 1.4.5-r0
libgstrtsp-1.0-0 - 1.4.5-r0
libgstsdp-1.0-0 - 1.4.5-r0
libgsttag-1.0-0 - 1.4.5-r0
libgsturidownloader-1.0-0 - 1.4.5-r0
libgstvideo-1.0-0 - 1.4.5-r0

 

I've tried an MKV (h264/dts), DivX and XVid.

 

The MKV and XVid plays perfectly, but the DivX file will not play.

I think because it's an old DivX 3 file, the movie is called "A fish called Wanda 1988.avi".

I have to see if I can get my hands on a DivX 5 sample.

 

Also I've added a multibitrate HLS video (SMIL in m3u8 format) to the bouquet and it plays fine :D!

 

So I'd like to thank everyone involved getting this to work.

This really brought my DM800SE to the next level!

 

Thanks a lot!.

 

So Erik, you can make the following change in meta-dream/conf/machine/include/dreambox.inc

Replace 'gst-plugin-dreambox-dvbmediasink' with 'gstreamer1.0-plugin-dvbmediasink'

Remove 'gst-plugin-dtsdownmix' (as this will trigger a build of many 0.10 packages)

Add 'GST_VERSION = "1.0"'

 

Like this:

MACHINE_EXTRA_RRECOMMENDS = " \
        gstreamer1.0-plugin-dvbmediasink \
        ntfs-3g \
        kernel-module-cifs \
        kernel-module-hmac \
        kernel-module-md4 \
        kernel-module-ecb \
        dreambox-boot-progress \
        "

GST_VERSION = "1.0"


Re: GStreamer 1.0 #624 metoo

  • Senior Member
  • 1,573 posts

+33
Good

Posted 21 February 2015 - 16:04

.

 


Edited by metoo, 21 February 2015 - 16:08.

ET10000 C C C C/T  2TB HDD ET7000 + ET6000 dvb-S  OpenPli Triax 88 multifeed quad LNBs VU Uno4K SE C+2TB HDD Mutant HD60


Re: GStreamer 1.0 #625 metoo

  • Senior Member
  • 1,573 posts

+33
Good

Posted 21 February 2015 - 16:16

Attached File  film gst 1 ref.pdf   14.44KB   14 downloads

I think something is wrong with ET6x00, i am sure it played (allmost all) those movies
+/- 1,5 year ago witout a problem over lan, the movies where at that time on ET9500
and now on ET10000
ET6000 with gst 01.10 and ET7000 with gst 1 compare the same way
Et10000 with gst 0.10 and ET10000 with gst 1 only difference 2x no subs for gst 1

Edited by metoo, 21 February 2015 - 16:20.

ET10000 C C C C/T  2TB HDD ET7000 + ET6000 dvb-S  OpenPli Triax 88 multifeed quad LNBs VU Uno4K SE C+2TB HDD Mutant HD60


Re: GStreamer 1.0 #626 mika-nl

  • Senior Member
  • 454 posts

+10
Neutral

Posted 21 February 2015 - 18:05

Build warning :

 

WARNING: QA Issue: gstreamer: configure was passed unrecognised options: --disable-docs-build --with-check [unknown-configure-option]
 



Re: GStreamer 1.0 #627 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 21 February 2015 - 22:08

By gst-1 there are some missing libgstxxx.so. I just finally could find how to add ogg. Something is wrong whit the .bb recipes.

 

I now first will do A try whit the openembedded gst-1 recipes. see what it does.

 

But bassically everything works on vuduo2 with gst-1. It's just a mather of some missing issues in build which may cause left or right a small problem. The dvbmediasink on it is fine. At least for all audio. For all video I gues ok as well, the small issues are most probably small errors in gstreamer1.0xxx.bb recipes.



Re: GStreamer 1.0 #628 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 22 February 2015 - 09:31

The vuduo2 gst-1 almost perfect now.

 

plays: mp3,flac,ogg,mp4,wma // tested by me

gues it now should play mepg2 and mpeg4

 

does not play wmv (that will be next i will try to find a solution gues I will need to add non-free codecs)

 

How to build.

 

1) start a build from scratch. (erase you're current openembedded-oe-core if you had one)

2) clone gst-1 and use make (not make image !!)

3) cd to openembedded-oe-core apply patch included here GST-1-vuduo2-20150222.patch

4) cd to meta-vuplus apply patch included here vuduo2-machine-conf-gst1.patch (has to be done from out off meta-vuplus since meta-vuplus is unstaged cause its provided by vu+ self)

5) cd to openembedded/build

6) source env.source

7) MACHINE=vuduo2 bitbake openpli-enigma2-feed (or use You're personal image)

8) after build ok flash You're box.

 

What is changed here :

-qemu now just corrected by bbappend file. (note about this change it is needed on debian and ubuntu x86_64 build systems, about other linux distros I don't, should be tested)

-added mipsel to arch.conf which is needed for many third party plugins.  * read note

-removed bb gst-1 recipes out off meta-openpli then the bb from openembedded are used. Just added/modified bbapend to meta-openpli.

 

note: Yes this item has already been discussed. In my opinion it is really needed.

Through about this discution is that : most third party plugins should have been made whit all arch check instead off mipsel arch check.

But also very trough, some third party plugins do have whit them binary's compiled for mipsel. The reason is often closed source licence compliance. They will come for example from manifacturers.

For those plugins it's the correct way to add an arch check mipsel. Why not mipsel32el. That last is a subtuning feature for specific hardware. The closed licence binary's may also contain static library's. And for that must use mipsel arch for build.

For that mipsel is required into arch.conf.

 

 

 

 

Attached Files



Re: GStreamer 1.0 #629 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 22 February 2015 - 10:44

The next on vuduo2 , like I already suspected is that hbbtv plugin can't be installed neighter will work with gst-1.

 

Would be nice if the mods into contact with vu+ do pass this to them. Vu+ team could check here as for how to build an image with gst-1 , maybe use the pli gst-1 dvbmediasink guess this is allowed .

 

Since the last openembedded update gst-ffmpeg does not work anymore att all. Reason the use of libavcodec > 53. That is needed on vu+ series to use hbbtv and ..... . I think it's better to try working with gst-1 instead of trying to fix the gst-0.1.



Re: GStreamer 1.0 #630 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 23 February 2015 - 15:45

Tried everything but can't  let it work for wmv. By wmv the audio plays but no image. wmv codecs are present in gstreamer1.0-libav. Checked the config logs. Gue something extra must by done in services.mp3 or ... but what that's the question.



Re: GStreamer 1.0 #631 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 23 February 2015 - 16:15

I'm not an expert,

 

But should we not need a

video/x-raw cap in gstdvbvideosink.c 

in order to play software video codecs. ?


Re: GStreamer 1.0 #632 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 23 February 2015 - 16:50

you are right, but the vu+ video device does not support raw video frames



Re: GStreamer 1.0 #633 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 23 February 2015 - 18:35

Aj that's not nice. Since it's playing other video-codecs trough gstreamer plugins gues there must be somehow a way.



Re: GStreamer 1.0 #634 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 23 February 2015 - 19:11

Are you sure? I believe software codecs are only used for audio.

Re: GStreamer 1.0 #635 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 23 February 2015 - 19:32

Are you sure? I believe software codecs are only used for audio.

yes gues so. But this seems to go up for all boxes. Not any box seems to use software codecs for video.

 

Is there apart from standard log off enigma a higher level to see what it is using. Now we just see more detail if something goes wrong. But if ok just that it plays. (I start enigma with enigma.sh )

 

example first init 5.  then enigma2.sh > /media/usb/enigma2-gst-01-plimediasink6.log 2>&1

 

like for play off mp4 which is ok with image  and audio. Then try with a wmv file Seems to be ok in all same like with mp4 except that only audio plays in depsit the fact that videopid is detected. In log no error or warning about it.

 

Further Yes I'm unfortunately do not know much about the video audio stuff in c. Still I find something strange with this rule

	else if (!strcmp (mimetype, "video/x-wmv"))
	{
		guint32 fourcc = 0;
#if GST_VERSION_MAJOR < 1
		gst_structure_get_fourcc(structure, "format", &fourcc);
#else
		const gchar *value = gst_structure_get_string(structure, "format");
		if (value)
		{
			fourcc = GST_STR_FOURCC(value);
		}
#endif
		if (fourcc == GST_MAKE_FOURCC('W', 'V', 'C', '1') || fourcc == GST_MAKE_FOURCC('W', 'M', 'V', 'A'))
		{
			self->stream_type = STREAMTYPE_VC1;
			self->codec_type = CT_VC1;
			GST_INFO_OBJECT (self, "MIMETYPE video/x-wmv WVC1 -> STREAMTYPE_VC1");
		}
		else
		{
			self->stream_type = STREAMTYPE_VC1_SM;
			self->codec_type = CT_VC1_SM;
			GST_INFO_OBJECT (self, "MIMETYPE video/x-wmv -> STREAMTYPE_VC1_SM");
		}
	}

The const gchar *value = gst_structure_get_string(structure, "format");  string format i pure string and I see nowhere how it can now the format.


Edited by christophecvr, 23 February 2015 - 19:33.


Re: GStreamer 1.0 #636 malakudi

  • Senior Member
  • 1,449 posts

+69
Good

Posted 23 February 2015 - 19:39

@christophecvr: WMV (and AAC+ I think) cannot work because VU+ drivers use different mappings (ioctls?) for those codecs than what OpenPLi uses. So you need to change code to use the correct mapping.

 

For example, in OpenPLi, STREAMTYPE_VC1 is 3 and STREAMTYPE_VC1_SM is 5 . But VU+ drivers want 16 and 17.

 

It's such a small change, it only needs a small diff when building mediasink for VU+. It could be implemented in the BSP layer of VU+, change to mediasink from OpenPLi and apply a patch.

 

We are making circles around a non-existent issue.



Re: GStreamer 1.0 #637 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 23 February 2015 - 19:52

@christophecvr: WMV (and AAC+ I think) cannot work because VU+ drivers use different mappings (ioctls?) for those codecs than what OpenPLi uses. So you need to change code to use the correct mapping.

 

For example, in OpenPLi, STREAMTYPE_VC1 is 3 and STREAMTYPE_VC1_SM is 5 . But VU+ drivers want 16 and 17.

 

It's such a small change, it only needs a small diff when building mediasink for VU+. It could be implemented in the BSP layer of VU+, change to mediasink from OpenPLi and apply a patch.

 

We are making circles around a non-existent issue.

Yes I already saw something I'll give it a try (will be for tommorow with other settings.)

 

Maybe this will do

if GST_VERSION_MAJOR < 1
		gst_structure_get_fourcc(structure, "format", &fourcc);
#else
		const gchar *value = gst_structure_get_string(structure, "format");
		if (value)
		{
			fourcc = GST_STR_FOURCC(value);
		}
#endif
		if (fourcc == GST_MAKE_FOURCC('W', 'V', 'C', '1') || fourcc == GST_MAKE_FOURCC('W', 'M', 'V', 'A'))
		{
				streamtype = 16;  // VC-1
				self->codec_type = CT_VC1;
				GST_INFO_OBJECT (self, "MIMETYPE video/x-wmv(WVC1) VIDEO_SET_STREAMTYPE, 16");
		}
		else
		{
				streamtype = 17; // VC1 Simple/Main
				self->codec_type = CT_VC1_SIMPLE_MAIN;
				gst_structure_get_int (structure, "height", &height);
				gst_structure_get_int (structure, "width", &width);
				GST_INFO_OBJECT (self, "MIMETYPE video/x-wmv(WMV3) VIDEO_SET_STREAMTYPE, 17");
		}
	}

If ok it will need a proper adaptation in function of hardware should be easy with #ifdefined xxx  (have to look up what to set for vu series in xxx)



Re: GStreamer 1.0 #638 malakudi

  • Senior Member
  • 1,449 posts

+69
Good

Posted 23 February 2015 - 20:02

As the box support is now, VU+ has to adapt the bsp layer to use openpli's dvbmediasink, and apply the needed patch. For your custom image, you can change the two values in gstdvbvideosink.h  . Some additional changes are needed for some divx codecs I think.



Re: GStreamer 1.0 #639 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 23 February 2015 - 20:31

As the box support is now, VU+ has to adapt the bsp layer to use openpli's dvbmediasink, and apply the needed patch. For your custom image, you can change the two values in gstdvbvideosink.h  . Some additional changes are needed for some divx codecs I think.

At this time vu+ is using the dvbelite mediasink. Also there they added special issues for the video and audio caps it's called sink_factory_bcm7405 . For gst-1.0 there is no sync yet except that from pli4 .

 

About audio the pli dvbmediasink is fine for vu+ no adapation required. At least for the formats I tested . wma,mp3,flac,ogg i'm prety shure that so what evry audio format is ok, since the needed gstreamer plugins are there and ok. All software codecs in audio runs fine.

 

For video perhaps just an ad in function off harware these are very few things , and can be done just based on machine type. Perhaps vu+ can also use this for future developpement for gst-1.0. We can give them the needed stuff on a golden plattern. Perhaps then they will do the effort in adapting there third party plugins to gst-1 which are closed source due to software licensing issues. Like the hbbtv which to work 100 % will need to work with gst-1.0 in future. The longer the more some codecs will only be avbl in libav. and usable trough gtreamer1.0-libav plugin. Adaptation off gst-ffmpeg major 0 is now already in slow motion and is almost comming to a end.



Re: GStreamer 1.0 #640 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 24 February 2015 - 11:33

I just learned that VU+ are actually working on the gstreamer/driver adaptation, so it might pay off to have a little more patience.


* 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.




15 user(s) are reading this topic

0 members, 15 guests, 0 anonymous users