On 08/06/15 17:53, Christoph Gerstbauer wrote: > > > Am 08.06.15 um 17:24 schrieb Michael Niedermayer: >> On Wed, Jun 03, 2015 at 04:28:48PM +0200, Christoph Gerstbauer wrote: >>>>> yes, this happens because 50mbit/sec is not correct >>>>> a max framesize of 208541 results in a bit rate of max >>>>> 49.999840 mbit/sec, IIUC thats what the spec means by 50mbit/sec >>>> The spec actually says "Up to 50Mb/s" and "Up to 208541" that being the >>>> highest value that comes out below the the 50Mb/s. So I tend to agree >>>> with Michael. >>>> >>> Hi, i have made a short excel calulation and I think that these >>> settings/syntaxes should be the correct ones for PAL/NTSC D-10: >>> Do you agree? >>> >>> >>> >>> >>> >>> >>> >>> >>> minrate >>> >>> >>> framerate max coded bits/byte bufsize >>> maxrate >>> >>> >>> >>> framesize (Bytes) >>> rc_init_occupancy video bitrate >>> IMX50 PAL 25 250000 8 2000000 >>> 50000000 >>> >>> >>> >>> >>> >>> >>> >>> IMX40 PAL 25 200000 8 1600000 >>> 40000000 >>> >>> >>> >>> >>> >>> >>> >>> IMX30 PAL 25 150000 8 1200000 >>> 30000000 >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> IMX50 NTSC 29,97003 208541 8 1668328 >>> 49999840,16 >>> >>> >>> >>> >>> >>> >>> >>> IMX40 NTSC 29,97003 166833 8 1334664 >>> 39999920,08 >> i seem to have missed this reply, my question is basicylly the same >> as tims, where does the limit resulting in 39999920 come from ? > Hi, I compared different encoder IMX40 formats, and all of these format > has a pkt size of 166833bytes (=1 frame for IMX40). > -> 166833*8*(30000/1001) = 39999920bits
Approximately! >> is there some specification that limits the VBV buffer size to a >> lower value for "40mbit/sec" than "50mbit/sec" ? > Maybe I didnt understand the using of the VBV buffer? > I thought the VBV buffer size is always ONE frame. So it differs in size > when using the 50, 40 or 30 mbit format. Is this wrong? I think this is correct, I think Michael's question was slighly confusing. > > from SMPTE S356M - 2001 - Type D-10 Stream Specifications: > > " The vbv_delay parameter shall be constrained to a *1-frame* delay for > each GOP by defining the following values: > > 525/60 systems > > – picture_header: vbv_delay = 0BBBh > > 625/50 systems > > – picture_header: vbv_delay = 0E10h" > But why does having a 1 frame delay, and therefore one frame buffer which requires different buffer sizes for PAL and NTSC due to the frame rate difference, require the bit rates to be different? The only reason this is the case for the nominal 50M Operating point is because having exactly 50M at 30000/1001 would lead to frames larger than the maximum coded frame size. At lower bit rates this is not an issue. so buffer size = 40000000 x 1001/30000 = 1334667 (approx) Given the frame rates getting integer values all round is impossible and even your figures contain rounding errors. So there will always be some fudging somewhere. Quite how the coder copes with these slightly incomatible constraints I am unclear. > [..] -- Tim. Key Fingerprint 38CF DB09 3ED0 F607 8B67 6CED 0C0B FC44 8B0B FC83 _______________________________________________ ffmpeg-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-user
