diff options
-rw-r--r-- | ext/theora/gsttheoradec.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/ext/theora/gsttheoradec.c b/ext/theora/gsttheoradec.c index 6eef4729..b2f076a4 100644 --- a/ext/theora/gsttheoradec.c +++ b/ext/theora/gsttheoradec.c @@ -757,9 +757,7 @@ theora_handle_type_packet (GstTheoraDec * dec, ogg_packet * packet) /* calculate par * the info.aspect_* values reflect PAR; - * 0:0 is allowed and can be interpreted as 1:1, so correct for it. - * x:0 for other x isn't technically allowed, but it's seen in the wild and - * is reasonable to treat the same. + * 0:x and x:0 are allowed and can be interpreted as 1:1. */ if (dec->have_par) { /* we had a par on the sink caps, override the encoded par */ @@ -771,7 +769,7 @@ theora_handle_type_packet (GstTheoraDec * dec, ogg_packet * packet) par_num = dec->info.aspect_numerator; par_den = dec->info.aspect_denominator; } - if (par_den == 0) { + if (par_num == 0 || par_den == 0) { par_num = par_den = 1; } /* theora has: |