Playbin2 skips frames

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

Playbin2 skips frames

Kevin Flückiger
Hi everybody

I'm trying to play quite huge videos (2x FullHD) with playbin2 and
appsink as sink. on slower pcs frames are beeing dropped. I would
rather like the pipeline to not drop frames when the playback is too
slow. The drop property in appsink doesn't seem to have an influence
on that..
Any ideas?

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

Re: Playbin2 skips frames

Wim Taymans
On 11/15/2011 01:25 PM, Kevin Flückiger wrote:
> Hi everybody
>
> I'm trying to play quite huge videos (2x FullHD) with playbin2 and
> appsink as sink. on slower pcs frames are beeing dropped. I would
> rather like the pipeline to not drop frames when the playback is too
> slow. The drop property in appsink doesn't seem to have an influence
> on that..
Set the sync property to FALSE.

Wim
> Any ideas?
>
> Thanks and greets
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

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

Re: Playbin2 skips frames

Kevin Flückiger
The sync property works as expected with my own pipeline but with
playbin2 it is a little weird.
It leads to ultra fast playback on fast computers (that's what it
should do, right?) but I still see the dropping on slower machines.
I want it to play not faster than the original framerate and if the
computer is to slow it should not drop frames..



2011/11/15 Wim Taymans <[hidden email]>:

> On 11/15/2011 01:25 PM, Kevin Flückiger wrote:
>>
>> Hi everybody
>>
>> I'm trying to play quite huge videos (2x FullHD) with playbin2 and
>> appsink as sink. on slower pcs frames are beeing dropped. I would
>> rather like the pipeline to not drop frames when the playback is too
>> slow. The drop property in appsink doesn't seem to have an influence
>> on that..
>
> Set the sync property to FALSE.
>
> Wim
>>
>> Any ideas?
>>
>> Thanks and greets
>> _______________________________________________
>> gstreamer-devel mailing list
>> [hidden email]
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Playbin2 skips frames

ak.ashwini
Hi All,

I have a very awkward problem.

I have a transport stream, which when I play only the video, it works fine.
When I play the Audio separately works fine. But when I play the stream Audio/Video together, I see few frames (5~10) and after wards it freezes.

When I check the pipeline state, it shows as PLAYING state.

Can some one please help.
The pipelines I used are as follows.

For VIDEO only:

gst-launch -v filesrc location=/home/ashwini/streams/94EPG.trp ! mpegtsparse ! mpegtsdemux name=demux es-pids="65:68:65" ! video/mpeg ! queue ! decodebin ! ffmpegcolorspace ! xvimagesink

For AUDIO only:

gst-launch -v filesrc location=/home/ashwini/streams/94EPG.trp ! mpegtsparse ! mpegtsdemux name=demux es-pids="65:68:65" !  queue ! decodebin ! audioconvert ! queue ! volume ! alsasink

The complete pipe is:

gst-launch -v filesrc location=/home/ashwini/streams/94EPG.trp ! mpegtsparse ! mpegtsdemux name=demux es-pids="65:52:65" ! video/mpeg ! queue ! decodebin ! ffmpegcolorspace ! xvimagesink  demux. ! queue ! decodebin ! audioconvert ! queue ! volume ! alsasink

In this case when I used fakesink in place of alsasink, the number of frames displayed is increased to 20~25.

Please give me some hint, where I am missing something. 

regards,
Ashwini

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

Re: Playbin2 skips frames

Kevin Flückiger
Oh well, it seems that my application is pulling buffers faster than I
can display them.. so setting sync to FALSE DOES work, it was my
application that "dropped" the frames!
So in theory, when I set drop to FALSE and my application is not
pulling buffers fast enough the pipeline should block when the queue
is full? Is that the right way to be sure to display every frame?
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re:Re: Playbin2 skips frames

hcpwll
Plz see,
/* dropping late buffers */
void  gst_base_sink_set_max_lateness  (GstBaseSink *sink, gint64 max_lateness);
gint64  gst_base_sink_get_max_lateness  (GstBaseSink *sink);
So, set max lateness to -1, will working well.
 

At 2011-11-15 22:25:24,"Kevin Flückiger" <[hidden email]> wrote:

>Oh well, it seems that my application is pulling buffers faster than I
>can display them.. so setting sync to FALSE DOES work, it was my
>application that "dropped" the frames!
>So in theory, when I set drop to FALSE and my application is not
>pulling buffers fast enough the pipeline should block when the queue
>is full? Is that the right way to be sure to display every frame?
>_______________________________________________
>gstreamer-devel mailing list
>[hidden email]
>http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel