From 6be01f0738adcf2875811e194b02368a2c68c5cb Mon Sep 17 00:00:00 2001 From: Philippe Normand Date: Mon, 13 Jan 2020 09:06:02 +0000 Subject: [PATCH] oggstream: Workaround for broken PAR in VP8 BOS Similarily to the Theora mapping, process 0:N, N:0 and 0:0 pixel aspect ratios as 1:1. Fixes #719 --- ext/ogg/gstoggstream.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ext/ogg/gstoggstream.c b/ext/ogg/gstoggstream.c index cdb6fa6..3894ae7 100644 --- a/ext/ogg/gstoggstream.c +++ b/ext/ogg/gstoggstream.c @@ -677,6 +677,11 @@ setup_vp8_mapper (GstOggStream * pad, ogg_packet * packet) pad->n_header_packets = 2; pad->frame_size = 1; + /* PAR of 0:N, N:0 and 0:0 is not explicitely allowed, but the best we can do + * here is to map to 1:1 so that caps negotiation doesn't break downstream. */ + if (par_n == 0 || par_d == 0) + par_n = par_d = 1; + pad->caps = gst_caps_new_simple ("video/x-vp8", "width", G_TYPE_INT, width, "height", G_TYPE_INT, height, -- 2.7.4