EPG data from dvbbasebin

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

EPG data from dvbbasebin

Dr. Peter G. Baum
Hi,

I'm trying to get EPG data (eit messages) from dvbbasebin. It works partly.

When I start my program, I get some messages, but I would expect that
for example the information of the currently running program is repeated
every N seconds. This does not happen. I receive this information
exactly once.

Does gstreamer filter the messages?

What I do is basically :


    def __init__( self ):
       bus = self.channels.getPipeline().get_bus()
       bus.add_signal_watch()
       bus.connect( "message", self.__onMessage )

    def __onMessage(self, bus, message):
       t = message.type
       if t == gst.MESSAGE_ELEMENT:
          if message.structure.get_name( ) == "eit":
              print message


Many thanks,

Peter

------------------------------------------------------------------------------
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: EPG data from dvbbasebin

Roland Peffer-2
Hi Peter,

I noticed the same behavior.
Every information seems to be send only ones. But I think its better than repeating the information again and again,
and then filtering redundant information within the application.
 
Roland

On 22.04.2010, at 22:58, Dr. Peter G. Baum wrote:

Hi,

I'm trying to get EPG data (eit messages) from dvbbasebin. It works partly.

When I start my program, I get some messages, but I would expect that
for example the information of the currently running program is repeated
every N seconds. This does not happen. I receive this information
exactly once.

Does gstreamer filter the messages?

What I do is basically :


   def __init__( self ):
      bus = self.channels.getPipeline().get_bus()
      bus.add_signal_watch()
      bus.connect( "message", self.__onMessage )

   def __onMessage(self, bus, message):
      t = message.type
      if t == gst.MESSAGE_ELEMENT:
         if message.structure.get_name( ) == "eit":
             print message


Many thanks,

Peter

------------------------------------------------------------------------------
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


------------------------------------------------------------------------------
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: EPG data from dvbbasebin

Dr. Peter G. Baum


Roland Peffer wrote:
> Every information seems to be send only ones. But I think its better than repeating the information again and again,
> and then filtering redundant information within the application.
Well, it depends. I want to monitor all channels in the bouquet and show
the EPG data only of the channel the user watches. That means I have to
store the information and discard them if they are too old instead of
just using them when they come.

Secondly I tried:
gst-launch -mtv dvbsrc modulation="QAM 16" trans-mode=8k bandwidth=8
frequency=658000000 code-rate-lp=AUTO code-rate-hp=2 guard=4
hierarchy=0 pids=0:16:17:18 stats-reporting-interval=0       !
mpegtsparse ! fakesink silent=true

At least once I got even after 5 minutes no single occurrence of an eit
message with running-status==4.

Additionally, I didn't get a new message when a new movie started in my
tests yesterday.

Any ideas, what's going wrong?

Peter


------------------------------------------------------------------------------
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: EPG data from dvbbasebin

Edward Hervey
Administrator
On Fri, 2010-04-23 at 09:12 +0200, Dr. Peter G. Baum wrote:

>
> Roland Peffer wrote:
> > Every information seems to be send only ones. But I think its better than repeating the information again and again,
> > and then filtering redundant information within the application.
> Well, it depends. I want to monitor all channels in the bouquet and show
> the EPG data only of the channel the user watches. That means I have to
> store the information and discard them if they are too old instead of
> just using them when they come.
>
> Secondly I tried:
> gst-launch -mtv dvbsrc modulation="QAM 16" trans-mode=8k bandwidth=8
> frequency=658000000 code-rate-lp=AUTO code-rate-hp=2 guard=4
> hierarchy=0 pids=0:16:17:18 stats-reporting-interval=0       !
> mpegtsparse ! fakesink silent=true
>
> At least once I got even after 5 minutes no single occurrence of an eit
> message with running-status==4.
>
> Additionally, I didn't get a new message when a new movie started in my
> tests yesterday.
>
> Any ideas, what's going wrong?

  This might have been fixed in gst-plugins-base git :
https://bugzilla.gnome.org/show_bug.cgi?id=614479

  mpegtsdemux will only emit EIT (and other information) if it has
changed. Therefore, except for that bug above which was fixed, you
should consider the last EIT received as the current one.

   Edward

>
> Peter
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel



------------------------------------------------------------------------------
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: EPG data from dvbbasebin

Dr. Peter G. Baum
 >   mpegtsdemux will only emit EIT (and other information) if it has
 > changed. Therefore, except for that bug above which was fixed, you
 > should consider the last EIT received as the current one.

Many thanks.

BTW: I'm amazed about the reactivity and the quality of the answers in
this mailing list.

Peter




------------------------------------------------------------------------------
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel