How to set window height & width using Playbin

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

How to set window height & width using Playbin

Debsu
How to set window height & width using Playbin

Hi,

Here are the descriptions of two problem I am facing:

Problem 1 - I am writing an application in which video played using Gstreamer will be rendered in a window embedded in another window. So I created an QT application and then created the embedded Window, created a Playbin pipeline, and pass the window handle using gst_x_overlay_set_xwindow_id() API.

It plays the video, but there is one small problem, when each video starts, just playing the first frame it stretches out to take the size of whole embedded window. The reason may be that I am not passing the window height & width to the Playbin. Could you please tell me how to pass the window height & width to the pipeline?

Problem 2 I am playing MP3 files using Playbin in my application, when I increase the volume of the audio using g_object_set(), I can hear some noise in the sound. Is there any particular decoder I need to install? I installed the following plugins:

·       gst-plugins-base-0.10.22-3.6

·       gst-plugins-good-0.10.14-2.4

·       gst-plugins-ugly-0.10.11

·       gstreamer-0.10.22-1.24

·       gst-plugins-bad-0.10.11

·       libmad-0.15.1b

Regards,

Deb


------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: [gst-devel] How to set window height & width using Playbin

Giles Atkinson
Debojyoti,


> It plays the video, but there is one small problem, when each video starts, just playing the first frame it stretches out to take the size of whole embedded window. The reason may be that I am not passing the window height & width to the Playbin. Could you please tell me how to pass the window height & width to the pipeline?

This is the expected behaviour: playbin puts a rescaler into the video pipeline so that the output fills the window it is offered.  That usually works well, but if you want to always show the video at its native size, I think there are two options:

1) Let playbin create its own output window, which should be native size, then reparent it into your application.

2) Reach inside playbin to query the capabilities at the output of the video decoder and set the output window to that size.

Giles

From: [hidden email] [mailto:[hidden email]]
Sent: 20 January 2010 14:52
To: [hidden email]
Subject: [gst-devel] How to set window height & width using Playbin

Hi,
Here are the descriptions of two problem I am facing:
Problem 1 - I am writing an application in which video played using Gstreamer will be rendered in a window embedded in another window. So I created an QT application and then created the embedded Window, created a Playbin pipeline, and pass the window handle using gst_x_overlay_set_xwindow_id() API.
It plays the video, but there is one small problem, when each video starts, just playing the first frame it stretches out to take the size of whole embedded window. The reason may be that I am not passing the window height & width to the Playbin. Could you please tell me how to pass the window height & width to the pipeline?
Problem 2 - I am playing MP3 files using Playbin in my application, when I increase the volume of the audio using g_object_set(), I can hear some noise in the sound. Is there any particular decoder I need to install? I installed the following plugins:
.       gst-plugins-base-0.10.22-3.6
.       gst-plugins-good-0.10.14-2.4
.       gst-plugins-ugly-0.10.11
.       gstreamer-0.10.22-1.24
.       gst-plugins-bad-0.10.11
.       libmad-0.15.1b
Regards,
Deb

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: [gst-devel] How to set window height & width using Playbin

Debsu
In reply to this post by Debsu
RE: How to set window height & width using Playbin

Hi Giles,

Thanks a lot for your reply. Your two options are perfectly right, but here I do have separate requirement. The requirement is my application will create its own window and then will pass the window height & width to the Playbin for video playback. 

I am able to pass the window id by using gst_x_overlay_set_xwindow_id(), but then video is showing in small section in the window for the first frame & then stretches to fill-up the full window. I am finding way to fill-up the window from the very first frame so that the stretching effect will not come.

Regards,

Dev


------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: [gst-devel] How to set window height & width using Playbin

Debsu
In reply to this post by Giles Atkinson
Hi Giles,

Thanks a lot for your reply. But I want to set the video height & width using playbin. So I attached a video sink xvimagesink to playbin, it is not playing anything. Also I am unable to set the height & width in video sink. Is there any other method to set video height & width using playbin?

Regards,
Deb
Reply | Threaded
Open this post in threaded view
|

Re: [gst-devel] How to set window height & width using Playbin

Giles Atkinson
Deb,

I am afraid your questions go beyond my knowledge.  I have developed an application using playbin, but we are happy with the default behaviour.
We find it works well to control width and height by changing the size of the output window directly with XConfigureWindow().  Playbin then rescales the video to fit the window.

Giles

-----Original Message-----
From: Debsu [mailto:[hidden email]]
Sent: 22 January 2010 07:40
To: [hidden email]
Subject: Re: [gst-devel] How to set window height & width using Playbin


Hi Giles,

Thanks a lot for your reply. But I want to set the video height & width
using playbin. So I attached a video sink xvimagesink to playbin, it is not
playing anything. Also I am unable to set the height & width in video sink.
Is there any other method to set video height & width using playbin?

Regards,
Deb
--
View this message in context: http://n4.nabble.com/How-to-set-window-height-width-using-Playbin-tp1018443p1099823.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

RE: [gst-devel] How to set window height & width using Playbin

Debsu

Hi Giles,

 

Ok, no problem. By default setting, playbin can rescale the video to fit the window, but it creates the stretching effect which I don’t want. Anyway, thanks for your help.

 

Regards,

Debojyoti


From: Giles Atkinson [via GStreamer-devel] [mailto:[hidden email]]
Sent: Friday, January 22, 2010 3:15 PM
To: Debojyoti Pal (WT01 - PES-Mobile-Auto-CE Practice)
Subject: Re: [gst-devel] How to set window height & width using Playbin

 

Deb,

I am afraid your questions go beyond my knowledge.  I have developed an application using playbin, but we are happy with the default behaviour.
We find it works well to control width and height by changing the size of the output window directly with XConfigureWindow().  Playbin then rescales the video to fit the window.

Giles

-----Original Message-----
From: Debsu [mailto:[hidden email]]
Sent: 22 January 2010 07:40
To: [hidden email]
Subject: Re: [gst-devel] How to set window height & width using Playbin


Hi Giles,

Thanks a lot for your reply. But I want to set the video height & width
using playbin. So I attached a video sink xvimagesink to playbin, it is not
playing anything. Also I am unable to set the height & width in video sink.
Is there any other method to set video height & width using playbin?

Regards,
Deb
--
View this message in context: http://n4.nabble.com/How-to-set-window-height-width-using-Playbin-tp1018443p1099823.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


View message @ http://n4.nabble.com/How-to-set-window-height-width-using-Playbin-tp1018443p1099895.html
To unsubscribe from Re: [gst-devel] How to set window height & width using Playbin, click here.

 

Please do not print this email unless it is absolutely necessary.

The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments.

WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.

www.wipro.com

Reply | Threaded
Open this post in threaded view
|

Re: [gst-devel] How to set window height & width using Playbin

Julien Isorce
Hi,

Is it about aspect ratio ? (I do not think so but just to be sure)

Well, why not doing this:

- retrieve the native width & height from negociated caps just before the xvimagesink (using gstreamer api so)
- set your QWidget (more espcially you should use a QFrame) to this size
- put your widget anywhere inside a kind of main widget.

And so you would be able to control the way the video is streched of not, just by choicing by your self the size of the QFrame, and the behaviour of the QFrame inside its parent widget.

Julien

2010/1/22 Debsu <[hidden email]>

Hi Giles,

 

Ok, no problem. By default setting, playbin can rescale the video to fit the window, but it creates the stretching effect which I don’t want. Anyway, thanks for your help.

 

Regards,

Debojyoti


From: Giles Atkinson [via GStreamer-devel] [mailto:[hidden email]]
Sent: Friday, January 22, 2010 3:15 PM
To: Debojyoti Pal (WT01 - PES-Mobile-Auto-CE Practice)


Subject: Re: [gst-devel] How to set window height & width using Playbin

 

Deb,


I am afraid your questions go beyond my knowledge.  I have developed an application using playbin, but we are happy with the default behaviour.
We find it works well to control width and height by changing the size of the output window directly with XConfigureWindow().  Playbin then rescales the video to fit the window.

Giles

-----Original Message-----
From: Debsu [mailto:[hidden email]]
Sent: 22 January 2010 07:40
To: [hidden email]
Subject: Re: [gst-devel] How to set window height & width using Playbin


Hi Giles,

Thanks a lot for your reply. But I want to set the video height & width
using playbin. So I attached a video sink xvimagesink to playbin, it is not
playing anything. Also I am unable to set the height & width in video sink.
Is there any other method to set video height & width using playbin?

Regards,
Deb
--
View this message in context: http://n4.nabble.com/How-to-set-window-height-width-using-Playbin-tp1018443p1099823.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]


View message @ http://n4.nabble.com/How-to-set-window-height-width-using-Playbin-tp1018443p1099895.html
To unsubscribe from Re: [gst-devel] How to set window height & width using Playbin, click here.

 

Please do not print this email unless it is absolutely necessary.

The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments.

WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.

www.wipro.com



View this message in context: RE: [gst-devel] How to set window height & width using Playbin

Sent from the GStreamer-devel mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel



------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: [gst-devel] How to set window height & width using Playbin

Debsu
Hi Julien,

My requirement is just the reverse, I need to create the XWindow first then send its height & width to the Playbin somehow, so that the video will take the full size of that XWindow. Also it must not have any stretching effect. Currently  the first frame of the video is small then it stretches out to fill the whose window size.

Regards,
Deb
Reply | Threaded
Open this post in threaded view
|

Re: [gst-devel] How to set window height & width using Playbin

Julien Isorce
Hi,

The result you want is possible.

But you I think you can't achieve it doing your steps. (it would require to add the option in gst_xoverlay interface, and then implement it in xvimagesink)

But you can achieve it doing my suggested steps (from my previous answer).

Julien

2010/1/22 Debsu <[hidden email]>

Hi Julien,

My requirement is just the reverse, I need to create the XWindow first then
send its height & width to the Playbin somehow, so that the video will take
the full size of that XWindow. Also it must not have any stretching effect.
Currently  the first frame of the video is small then it stretches out to
fill the whose window size.

Regards,
Deb
--
View this message in context: http://n4.nabble.com/How-to-set-window-height-width-using-Playbin-tp1018443p1099960.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list


------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

RE: [gst-devel] How to set window height & width using Playbin

Debsu

Hi Julien,

 

You are absolutely right. I achieved that in the following way:

  1. Create a playbin.
  2. Make an element (imgSink) from factory ximagesink.
  3. Set the already created XWindow height & width to imgSink.
  4. Then add XWindow handle to imgSink by using gst_x_overlay_set_xwindow_id().
  5. Set the “force-aspect-ratio” of imgSink to false.
  6. Lastly set the imgSink to the Playbin properties “video-sink".

 

Thanks all of your help.

 

Regards,

Deb

 

 

Please do not print this email unless it is absolutely necessary.

The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments.

WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.

www.wipro.com