From patchwork Thu Jan 10 21:27:29 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Carl Eugen Hoyos X-Patchwork-Id: 11697 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id B20D944D2F8 for ; Thu, 10 Jan 2019 23:27:40 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D235B68A659; Thu, 10 Jan 2019 23:27:28 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-it1-f193.google.com (mail-it1-f193.google.com [209.85.166.193]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3B60768A450 for ; Thu, 10 Jan 2019 23:27:22 +0200 (EET) Received: by mail-it1-f193.google.com with SMTP id i145so940631ita.4 for ; Thu, 10 Jan 2019 13:27:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=CIQdgXr6CYT+Yju/Dqc7id2IlTGlQNJ20B40KAm3QOU=; b=rOgiXXexxido8K4yFi7w6/y5W8HqZVeTdSb8o5lcH3WDa/fjWXAapxIWQ0QbAboHrD jAAJ4cuisYx5VSBm+wY8NEH9GWTv9TNMww9mQ3Gtb21L6KF7CcQ62cYsAhBERI4pVLyy 8jUycVl8yaXDZNjKbnATcE95ekdzY4hKmikACl66YjyNgHTiIAE/Ca2QKeUNVPZe0naF PDwcuL3Vlud+WsHt38cFkCGiB+x0gY3Orb+V6STH8eXsuEoQXpldgUaU4OPXd8VU52og ex3Hb+7UUqFeKJ8bBdeRRV4a3LcYkU7WRLreM1DTaowHELbPlrawJvAKMSauTPah5krf Zs3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=CIQdgXr6CYT+Yju/Dqc7id2IlTGlQNJ20B40KAm3QOU=; b=r8x6uKAxVp3kv3VAgKr/rUZbr4lKPwJgFGVokNpnDS/5W2RPohursriTPLqR1xWDyT h9kVo9S8BcHB6w2YUumIcRNrqJQ0ErHGR/XWjJ7oZDBTDKlwljk2D/q+3MGRWpG8V8YS bhuCeFeJNZSOD49q2PMXsQhNS5PGsEmZACYKrL3NqT/2+O6satlUZEKOF/9VAw/FVJYv Mj49EuuiQStYUewfpHrjQoV7e4LJlKCOPlNoWRK/ouzJAniCs4XmhxaysMktfSIbexPv v9WzAOv2yUYH+Sf8DkuLklGgX2KauSjPvfndYxR95UxAijPSxjlI87MKo+80Gpl72HbC aGMg== X-Gm-Message-State: AJcUukde03Q0uFkcx6/2rZgLDt4f77y925T7EY5FTJkaVnuDkUGOJYS0 o9tXlsXYA8MHhOjD0z8hypIK4SsvX9PN42C482ez/Q== X-Google-Smtp-Source: ALg8bN5N2osVDiOzS2RXJK8bjWbRsK2U0eYozJtj6C6lhFyHV34/g9Jum8RGJCHFhpVPEAzNc5zVg4/SYjPwiABd2qs= X-Received: by 2002:a02:48c6:: with SMTP id p189mr7718045jaa.89.1547155652368; Thu, 10 Jan 2019 13:27:32 -0800 (PST) MIME-Version: 1.0 Received: by 2002:a02:5f11:0:0:0:0:0 with HTTP; Thu, 10 Jan 2019 13:27:29 -0800 (PST) From: Carl Eugen Hoyos Date: Thu, 10 Jan 2019 22:27:29 +0100 Message-ID: To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH]lavc: Allow very high bitrates in AVCPBProperties after next version bump 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Hi! I don't know how urgent this is and how easily this can be triggered with AVCPBProperties but we had issues with bitrates > INT32MAX in the past, so looking at this code before realizing the qsv bitrate issue is Intel-related I thought this patch cannot hurt. Please comment, Carl Eugen From 64af64cd883c7f6957ced8f24c50b5c5c4821f61 Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos Date: Thu, 10 Jan 2019 22:23:39 +0100 Subject: [PATCH] lavc: Allow very high bitrates in AVCPBProperties after next version bump. --- libavcodec/avcodec.h | 12 ++++++++++++ libavcodec/version.h | 3 +++ 2 files changed, 15 insertions(+) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 92567ec..4414853 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -1118,17 +1118,29 @@ typedef struct AVCPBProperties { * Maximum bitrate of the stream, in bits per second. * Zero if unknown or unspecified. */ +#if FF_API_UNSANITIZED_BITRATES int max_bitrate; +#else + int64_t max_bitrate; +#endif /** * Minimum bitrate of the stream, in bits per second. * Zero if unknown or unspecified. */ +#if FF_API_UNSANITIZED_BITRATES int min_bitrate; +#else + int64_t min_bitrate; +#endif /** * Average bitrate of the stream, in bits per second. * Zero if unknown or unspecified. */ +#if FF_API_UNSANITIZED_BITRATES int avg_bitrate; +#else + int64_t avg_bitrate; +#endif /** * The size of the buffer to which the ratecontrol is applied, in bits. diff --git a/libavcodec/version.h b/libavcodec/version.h index ed56a1e..d2c0b31 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -132,6 +132,9 @@ #ifndef FF_API_NEXT #define FF_API_NEXT (LIBAVCODEC_VERSION_MAJOR < 59) #endif +#ifndef FF_API_UNSANITIZED_BITRATES +#define FF_API_UNSANITIZED_BITRATES (LIBAVCODEC_VERSION_MAJOR < 59) +#endif #endif /* AVCODEC_VERSION_H */ -- 1.7.10.4