[gst-devel] channel changing dvbsrc plugin

Zhao, Halley halley.zhao at intel.com
Mon Mar 9 08:20:55 CET 2009


Refer to the following link:
http://farsight.sourcearchive.com/documentation/0.1.10-2/rtpstream_8c-source.html

Some actions need to be done in callback function.


________________________________
From: Sumanth V [mailto:sumanth.v at allaboutif.com]
Sent: 2009年3月6日 20:40
To: Discussion of the development of GStreamer
Subject: Re: [gst-devel] channel changing dvbsrc plugin

hi all,

         Thanks halley, I tried blocking the source pad of the mpegtsdemux but it dint work. What ia happening is , when i set the state of
the pipeline to READY , the mpegtsdemux removes its source pad which was linked to the sink of queue. So when i check for GST_PAD_IS_LINKED on the sink pad of the queue it return FALSE. So i directly link the sink of queue to the newly emitted source pad of the mpegtsdemux. I checked for the result of the gst_pad_link(srcpad, sinkpad); It is returning GST_PAD_LINK_OK.
Why is the video getting freezed?

regards,
2009/3/6 Zhao, Halley <halley.zhao at intel.com<mailto:halley.zhao at intel.com>>

Try to block the upstream src pad before you link/unlink.



http://www.sfr-fresh.com/unix/privat/gstreamer-0.10.22.tar.gz:a/gstreamer-0.10.22/docs/design/part-block.txt





________________________________

From: Sumanth V [mailto:sumanth.v at allaboutif.com<mailto:sumanth.v at allaboutif.com>]
Sent: 2009年3月6日 3:37
To: Discussion of the development of GStreamer
Subject: [gst-devel] channel changing dvbsrc plugin



Hi All,

             I am writing a application using a dvbsrc plugin to play the incoming TV channels. How do i change the channels with out stopping the application? Right now i am doing it by changing the es-pid property of the mpegtsdemux plugin, i am able to to change the channels, but as soon as i change the channel , the video is getting freezed, its not playing. but i can change the channles. As soon as i shift to next channel, the video is getting freezed.
         For the first time when i start the application it plays which ever channel i have selected, but later when i try to change the channels , the video is getting freezed.

The method i am using to change the channel is :-
 * when i want to change a channel, i set the pipeline to READY state and tune to a channel which i want to play and the set the "es-pid" property of the
    mpegtsdemux plugin to the pid of the channel which i want to play.
 * Set the pipeline back to PLAYING state.
 * When the mpegtsdemux plugin generates a new pad for the new channel , i unlink the previous linked queue pad to the mpegtsdemux and then link to the new pad.

 the pipeline is
 gst-launch dvbsrc diseqc-source=0 frequency=10990000 symbol-rate=27500 polarity="v" code-rate-hp=3/4 ! mpegtsdemux ! queue ! mpeg2dec ! ffmpegcolorspace ! xvimagesink

 Where am i going wrong here? Why is the video of the new channel  getting freezed??

regards,
Sumanth



------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
gstreamer-devel mailing list
gstreamer-devel at lists.sourceforge.net<mailto:gstreamer-devel at lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20090309/b296989c/attachment.htm>


More information about the gstreamer-devel mailing list