Getting frames in PAUSED mode and stepping

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

Getting frames in PAUSED mode and stepping

Henning Riis

Hi,

 

I have a playbin based player, and I’m trying to implement starting it in PAUSED mode and getting frames. I obtain the frames using a fakesink and the handoff signal.

 

When loading a resource, I set the URI and then I set the pipeline in PAUSED mode. Once the pipeline goes to PAUSED I send a step event for stepping 10 seconds into the stream. I expect my handoff signal handler to get called so that I may present the frame.

It’s pretty much based on the code found in tests/examples/stepping/framestep1.c.

 

Does this sound valid?

 

The problem I face, is that it seems that when my URI is pointing to a file I have on disk I never get my handoff signal, however for a http URI it seems to work.

 

Are there any known problem around this? Should it work?

 

Also, can I use the same technique for “seeking” when paused and still getting the frame data? I’m not sure I understand the difference between seeking and stepping. Any hints?

 

Best Regards,

Henning


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

RE: Getting frames in PAUSED mode and stepping

Henning Riis

I decided I didn’t understand what stepping is about, and I found the preroll-handoff signal on the fake-sink, which pretty much does what I need.

 

Using this I will usually get decoded frame data on my sink after I either initially preroll or after the prerolls when I do a seek.

 

However, I have an mp4 file on my SSD disk that whenever I do my initial preroll (I set the uri and put the pipeline in PAUSED mode) I will not get the preroll signal.

 

Is there any reasonable explanation to why I sometimes don’t get the preroll signal? Is this to be expected on some streams for some reason?

 

Best Regards,

Henning

 

From: gstreamer-devel [mailto:[hidden email]] On Behalf Of Henning Riis
Sent: Monday, July 04, 2016 3:06 PM
To: [hidden email]
Subject: Getting frames in PAUSED mode and stepping

 

Hi,

 

I have a playbin based player, and I’m trying to implement starting it in PAUSED mode and getting frames. I obtain the frames using a fakesink and the handoff signal.

 

When loading a resource, I set the URI and then I set the pipeline in PAUSED mode. Once the pipeline goes to PAUSED I send a step event for stepping 10 seconds into the stream. I expect my handoff signal handler to get called so that I may present the frame.

It’s pretty much based on the code found in tests/examples/stepping/framestep1.c.

 

Does this sound valid?

 

The problem I face, is that it seems that when my URI is pointing to a file I have on disk I never get my handoff signal, however for a http URI it seems to work.

 

Are there any known problem around this? Should it work?

 

Also, can I use the same technique for “seeking” when paused and still getting the frame data? I’m not sure I understand the difference between seeking and stepping. Any hints?

 

Best Regards,

Henning


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

Re: Getting frames in PAUSED mode and stepping

Sebastian Dröge-3
On Di, 2016-07-05 at 08:17 +0000, Henning Riis wrote:

> I decided I didn’t understand what stepping is about, and I found the
> preroll-handoff signal on the fake-sink, which pretty much does what
> I need.
>  
> Using this I will usually get decoded frame data on my sink after I
> either initially preroll or after the prerolls when I do a seek.
>  
> However, I have an mp4 file on my SSD disk that whenever I do my
> initial preroll (I set the uri and put the pipeline in PAUSED mode) I
> will not get the preroll signal.
>  
> Is there any reasonable explanation to why I sometimes don’t get the
> preroll signal? Is this to be expected on some streams for some
> reason?
It should always happen when pre-rolling. Is your pipeline not pre-
rolling with that file?

It would be useful to have more details about the player, access to the
file in question and debug logs.

--

Sebastian Dröge, Centricular Ltd · http://www.centricular.com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (968 bytes) Download Attachment