From patchwork Wed Aug 22 23:45:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Thompson X-Patchwork-Id: 10084 Delivered-To: ffmpegpatchwork@gmail.com Received: by 2002:a02:12c4:0:0:0:0:0 with SMTP id 65-v6csp1442470jap; Wed, 22 Aug 2018 16:48:24 -0700 (PDT) X-Google-Smtp-Source: AA+uWPwarrVZ44isoC2/eG7etStvHpbwPlVwiDWrNr/lTG/Qonf54uBuFouI3p10o+zjRXyAa9at X-Received: by 2002:a5d:6103:: with SMTP id v3-v6mr37075271wrt.265.1534981704563; Wed, 22 Aug 2018 16:48:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1534981704; cv=none; d=google.com; s=arc-20160816; b=A3ZKdLTGN7ZTRnfqZKZeJsNicrLNaWBMrywhZQ83lBTixNSVnnW4tUwgMls6tRrAfj xFQVErDqe5uA/OSc9LxYW1gVNX9T+h4CVp2tUqdH+y0ZgwYcNTbleHcgkSuSdHL3vKi+ EXROS5IoQe0oJtxoTsDnVKqW06QyUoKDbJNp42g0nXHqJ7zJNAeOXFLjCFrc1v+fVx1r QebnEyt2r0jHgGgomkrirjgrGyEeGsaWTQL1v3s05skl6PFubNNyroJBUmCH6qH/7Uz6 bep+YQVUNip8BN/STb5vM1ES59nylKYU/GEnA7cAsFrDV6CNoWt0TgRJDMughJG6a8zm 42JQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=Euw3Pm9t7MDNFM0gB6Nq5XIBX+1o7b7kvxqhqo3OIpI=; b=JiHOArt3ivE62YtTDPdze8nOa/Ru+6gKAaeuHzT+hlxu5ZodyWlzOA8NPE5KwAOTNN WhCsaggelbrxEf3qw3S/i4LeFBzRl1fdaP44Y9Cxi6ynShPjWrkaEm35GNIHCfAFidpR VZtun7bj1H4Zx7kVyLxwHOsp6TZuxSHyL9EMTY8G3I1OBfBsMPN+DrnaTqZqVdoREift YfPhoXffwpVJElIhWhCkrgCrTJcaUJQertelE33/GXEPxKCYZFMYWg03jVHN9WlsVSXj T1TsH3mW5D8t6atWW1XC+B2VsktwvRDT6ECdRCjoK7spMzuup70TNt2D8UBHKwW+z7L/ ptqg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@jkqxz-net.20150623.gappssmtp.com header.s=20150623 header.b=PpdgCuqg; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id i11-v6si357448wrp.242.2018.08.22.16.48.24; Wed, 22 Aug 2018 16:48:24 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@jkqxz-net.20150623.gappssmtp.com header.s=20150623 header.b=PpdgCuqg; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CA0FB689EE2; Thu, 23 Aug 2018 02:45:51 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0EF06689C95 for ; Thu, 23 Aug 2018 02:45:49 +0300 (EEST) Received: by mail-wr1-f54.google.com with SMTP id z96-v6so2985101wrb.8 for ; Wed, 22 Aug 2018 16:45:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jkqxz-net.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references; bh=3cn/flrfEz/3bhJqTiIBBKniim9LX7cf5llVynSwtcs=; b=PpdgCuqgcQqvnMGJRxj8Wvp7aETj2G4m312G0A4QzFuqEwUS8qQrG9ZPePq7aXSAlt AgcChgs+FJ0npVBUg2kLCf1Mb1CoH+aon/7pViLhOUTQyDZWKQK/Rf+43yWcN9OPkqMD CCp+PAjHpOer/W/tnnDpVcJzDG6CYCaAO18trDUDji+9mpZoBKTMLllq9zpDPn9/O6eV gEfImL9FwpZb6SC6g+JMEhax8t1KOa78FsgmSBj9O20yBIYkrXo4jQIkfI9MfMMV5xuJ xlDZo5TMS7coznR8xP2ITg5w+2XeVswIugo2WBcD9bEYSjJK5DUtLdFp9PKVnJYMgLB1 jjow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=3cn/flrfEz/3bhJqTiIBBKniim9LX7cf5llVynSwtcs=; b=k0DAKsyjqIE8zJIChy4WqydtzrQLgPVL8Oi4p33fU792oLb137oUu12lnJ9G6WfDU5 HupljPwkfqab1gXnMjE7BJcuxqakFnZfQXCUo5DIFRLR0Gk4ZB578cNtiHz3HC3QTvpV V2UUeU6QXHVDIxAGtrK1GQA8UrjgkL/uGNJEkVtGGlBkNbMyBV+NV+sWghYLfB4e/vAA 4EL5KTNeXwSiUiUfNQQdkkXw5hJz/OctpIPDUap9SauA+u8rZ4uwaseBCtAesdUIlQWS 9m/ryeV2dT4c7lBL4VRJj2s8iDO9b3UZ3nF3oTyYnJ7dTpH2W2ZRUxrSocxqc5Rv7Q43 Dl+w== X-Gm-Message-State: APzg51DM5UPuk325b/WqhulJhKoplnEIXTuZcsJ2RLsb207GRNSbKuap twLAF5l/mZHRZA4i5i3z7nBFxQ5wG6U= X-Received: by 2002:a5d:4e8b:: with SMTP id e11-v6mr5784646wru.32.1534981550402; Wed, 22 Aug 2018 16:45:50 -0700 (PDT) Received: from rywe.jkqxz.net (cpc91242-cmbg18-2-0-cust650.5-4.cable.virginm.net. [82.8.130.139]) by smtp.gmail.com with ESMTPSA id x82-v6sm8184537wmd.11.2018.08.22.16.45.49 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 22 Aug 2018 16:45:49 -0700 (PDT) From: Mark Thompson To: ffmpeg-devel@ffmpeg.org Date: Thu, 23 Aug 2018 00:45:02 +0100 Message-Id: <20180822234514.10571-30-sw@jkqxz.net> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180822234514.10571-1-sw@jkqxz.net> References: <20180822234514.10571-1-sw@jkqxz.net> Subject: [FFmpeg-devel] [PATCH v3 29/41] cbs_h264: Fix default value for max mv lengths X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" A recent version of the standard changed the max and default to 15, from 16 in older versions. This updates the default to 15 to match, but the max stays as 16 so that we don't reject older streams. --- libavcodec/cbs_h264_syntax_template.c | 6 ++++-- libavcodec/vaapi_encode_h264.c | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/libavcodec/cbs_h264_syntax_template.c b/libavcodec/cbs_h264_syntax_template.c index 027b555db6..1efa97dccb 100644 --- a/libavcodec/cbs_h264_syntax_template.c +++ b/libavcodec/cbs_h264_syntax_template.c @@ -185,6 +185,8 @@ static int FUNC(vui_parameters)(CodedBitstreamContext *ctx, RWContext *rw, flag(motion_vectors_over_pic_boundaries_flag); ue(max_bytes_per_pic_denom, 0, 16); ue(max_bits_per_mb_denom, 0, 16); + // The current version of the standard constrains this to be in + // [0,15], but older versions allow 16. ue(log2_max_mv_length_horizontal, 0, 16); ue(log2_max_mv_length_vertical, 0, 16); ue(max_num_reorder_frames, 0, H264_MAX_DPB_FRAMES); @@ -193,8 +195,8 @@ static int FUNC(vui_parameters)(CodedBitstreamContext *ctx, RWContext *rw, infer(motion_vectors_over_pic_boundaries_flag, 1); infer(max_bytes_per_pic_denom, 2); infer(max_bits_per_mb_denom, 1); - infer(log2_max_mv_length_horizontal, 16); - infer(log2_max_mv_length_vertical, 16); + infer(log2_max_mv_length_horizontal, 15); + infer(log2_max_mv_length_vertical, 15); if ((sps->profile_idc == 44 || sps->profile_idc == 86 || sps->profile_idc == 110 || sps->profile_idc == 110 || diff --git a/libavcodec/vaapi_encode_h264.c b/libavcodec/vaapi_encode_h264.c index e55ed0f59c..8feae0d42f 100644 --- a/libavcodec/vaapi_encode_h264.c +++ b/libavcodec/vaapi_encode_h264.c @@ -491,8 +491,8 @@ static int vaapi_encode_h264_init_sequence_params(AVCodecContext *avctx) sps->vui.bitstream_restriction_flag = 1; sps->vui.motion_vectors_over_pic_boundaries_flag = 1; - sps->vui.log2_max_mv_length_horizontal = 16; - sps->vui.log2_max_mv_length_vertical = 16; + sps->vui.log2_max_mv_length_horizontal = 15; + sps->vui.log2_max_mv_length_vertical = 15; sps->vui.max_num_reorder_frames = (ctx->b_per_p > 0); sps->vui.max_dec_frame_buffering = sps->max_num_ref_frames;