mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-16 04:54:12 +00:00
ext/mpeg2dec/gstmpeg2dec.c: Assume 4:3 DAR rather than 4:3 PAR (#345184).
Original commit message from CVS: * ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_negotiate_format): Assume 4:3 DAR rather than 4:3 PAR (#345184).
This commit is contained in:
parent
17514d1696
commit
86b9de35d3
2 changed files with 31 additions and 3 deletions
|
@ -1,3 +1,8 @@
|
|||
2006-06-19 Tim-Philipp Müller <tim at centricular dot net>
|
||||
|
||||
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_negotiate_format):
|
||||
Assume 4:3 DAR rather than 4:3 PAR (#345184).
|
||||
|
||||
2006-06-19 Tim-Philipp Müller <tim at centricular dot net>
|
||||
|
||||
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_negotiate_format):
|
||||
|
|
|
@ -543,9 +543,32 @@ gst_mpeg2dec_negotiate_format (GstMpeg2dec * mpeg2dec)
|
|||
}
|
||||
|
||||
if (mpeg2dec->pixel_width == 0 || mpeg2dec->pixel_height == 0) {
|
||||
GST_WARNING_OBJECT (mpeg2dec, "Unknown pixel-aspect-ratio - assuming 4:3");
|
||||
mpeg2dec->pixel_width = 4;
|
||||
mpeg2dec->pixel_height = 3;
|
||||
GValue par = { 0, }
|
||||
, dar = {
|
||||
0,}
|
||||
, dimensions = {
|
||||
0,};
|
||||
|
||||
/* assume display aspect ratio (DAR) of 4:3 */
|
||||
g_value_init (&dar, GST_TYPE_FRACTION);
|
||||
gst_value_set_fraction (&dar, 4, 3);
|
||||
g_value_init (&dimensions, GST_TYPE_FRACTION);
|
||||
gst_value_set_fraction (&dimensions, mpeg2dec->height, mpeg2dec->width);
|
||||
|
||||
g_value_init (&par, GST_TYPE_FRACTION);
|
||||
if (!gst_value_fraction_multiply (&par, &dar, &dimensions)) {
|
||||
gst_value_set_fraction (&dimensions, 1, 1);
|
||||
}
|
||||
|
||||
mpeg2dec->pixel_width = gst_value_get_fraction_numerator (&par);
|
||||
mpeg2dec->pixel_height = gst_value_get_fraction_denominator (&par);
|
||||
|
||||
GST_WARNING_OBJECT (mpeg2dec, "Unknown pixel-aspect-ratio, assuming %d:%d",
|
||||
mpeg2dec->pixel_width, mpeg2dec->pixel_height);
|
||||
|
||||
g_value_unset (&par);
|
||||
g_value_unset (&dar);
|
||||
g_value_unset (&dimensions);
|
||||
}
|
||||
|
||||
caps = gst_caps_new_simple ("video/x-raw-yuv",
|
||||
|
|
Loading…
Reference in a new issue