[x265] Adaptove GoP sizes - not sure if its working

Deepthi Nandakumar deepthi at multicorewareinc.com
Sat Aug 22 06:22:27 CEST 2015


No problem.

I would suggest you choose content with highly varying scenes - night to
day changes, indoor to sunny fields etc. Now, with the default keyint (250)
which is actually the max periodicity, the encoder will insert I frames at
all the significant scene change frames, even if the last I frame was a few
frames before.




On Sat, Aug 22, 2015 at 9:30 AM, Roshantha Mendis <hrm506 at york.ac.uk> wrote:

> Okay , but I want to be able to be able to see a distribution of different
> GOP sizes in the encoded video. If they are roughly the same size, it would
> mean the encoder has not adaptively set the size of a GOP.
>
> I want to be able to show, that for certain streams there are highly
> varying , wide distribution of GOP sizes.
>
> Periodic , equal size GOPs is not what I'm after.
>
> Should I just treat multiple P's as an I frame ? And calculate the GOP
> sizes likewise ?
>
> Sorry, for the trouble. The data is for a paper I'm writing.
>
> Many thanks
> On 22 Aug 2015 4:54 am, "Deepthi Nandakumar" <deepthi at multicorewareinc.com>
> wrote:
>
>> Hi,
>>
>> You can just set keyint to the rough periodicity of I frames you prefer.
>> On Aug 22, 2015 9:12 AM, "Roshantha Mendis" <hrm506 at york.ac.uk> wrote:
>>
>>> Hi Deepthi,
>>>
>>> Thank you for replying.
>>>
>>> So , if I want to get the encoder to add an I-frame instead of multiple
>>> p frames , do I have to set another param ? Scene-cut ? What's the upper
>>> limit for scenecut ?
>>>
>>> Thank you
>>> Rosh
>>> On 22 Aug 2015 2:17 am, "Deepthi Nandakumar" <
>>> deepthi at multicorewareinc.com> wrote:
>>>
>>>> Hello,
>>>>
>>>> Without the keyint argument, the default keyframe interval reverts to
>>>> 250, and the encoder will try to insert I-frames only closer to this value.
>>>> With --keyint 50, the encoder will try to insert GOP frames closer to 50,
>>>> and thats what the GOP size would roughly be.
>>>>
>>>> At the points where you expected a scene change / I frame, you might
>>>> find that the P-frames are significantly larger, but it's likely the
>>>> encoder didnt deem it necessary to insert an I-frame.
>>>>
>>>>
>>>>
>>>> On Sat, Aug 22, 2015 at 4:51 AM, Roshantha Mendis <hrm506 at york.ac.uk>
>>>> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> I am trying to investigate GoP size changes based on scene changes in
>>>>> video.
>>>>>
>>>>> i've used x265 to encode a y4m (raw) file to hevc bitstream. A
>>>>> standard action fight scene : high moving, fast paced, 2-3 mins). So I was
>>>>> hoping to get highly varying scene changes. link :
>>>>> https://www.youtube.com/watch?v=gQEfEeBR3-M
>>>>>
>>>>> I used this command:
>>>>>
>>>>> ./x265 --input ../../../../ffmpeg_work/vids/originals/FightScene.y4m
>>>>> -F 0 -o FightScene_x265.bin --csv FightScene_x265.csv --csv-log-level 2
>>>>>
>>>>> // -- more info --
>>>>>
>>>>> y4m [info]: 312x176 fps 25/1 i420p8 frames 0 - 5104 of 5105
>>>>> raw [info]: output file: FightScene_x265.bin
>>>>> x265 [info]: HEVC encoder version 1.7+431-f63273fa3137
>>>>> x265 [info]: build info [Linux][GCC 4.8.4][64 bit] 8bit
>>>>> x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
>>>>> AVX2 FMA3 LZCNT BMI2
>>>>> x265 [info]: Main profile, Level-2 (Main tier)
>>>>> x265 [info]: Thread pool created using 4 threads
>>>>> x265 [info]: frame threads / pool features : 2 / wpp(3 rows)
>>>>> x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
>>>>> x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1
>>>>> intra
>>>>> x265 [info]: ME / range / subpel / merge : hex / 57 / 2 / 2
>>>>> x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 40
>>>>> x265 [info]: Lookahead / bframes / badapt : 20 / 4 / 2
>>>>> x265 [info]: b-pyramid / weightp / weightb : 1 / 1 / 0
>>>>> x265 [info]: References / ref-limit cu / depth : 3 / 0 / 0
>>>>> x265 [info]: AQ: mode / str / qg-size / cu-tree : 1 / 1.0 / 32 / 1
>>>>> x265 [info]: Rate Control / qCompress : CRF-28.0 / 0.60
>>>>> x265 [info]: tools: rd=3 psy-rd=0.30 signhide tmvp
>>>>> strong-intra-smoothing
>>>>> x265 [info]: tools: deblock sao
>>>>> x265 [info]: frame I: 2, Avg QP:27.50 kb/s: 919.70
>>>>> x265 [info]: frame P: 82, Avg QP:29.56 kb/s: 170.33
>>>>> x265 [info]: frame B: 195, Avg QP:35.66 kb/s: 27.40
>>>>> x265 [info]: Weighted P-Frames: Y:1.2% UV:1.2%
>>>>> x265 [info]: consecutive B-frames: 9.3% 18.6% 12.8% 44.2% 15.1%
>>>>>
>>>>>
>>>>> // ---------
>>>>>
>>>>>
>>>>> So very basic, using only the defaults.
>>>>>
>>>>> I then investgate the csv file, and check the I-SLICE to I-SLICE frame
>>>>> gap (I assume I-Slice --> I-Slice is a GOP)
>>>>>
>>>>> They all seem around 246 to 252 frames per GoP. I was hoping to get
>>>>> drastic GoP changes : e.g. GoP sizes 25, 36, 100 .. 250 etc.
>>>>>
>>>>> Any thoughts why the difference are so small ?
>>>>>
>>>>> I even tried setting the following flags to high values :
>>>>>
>>>>> --scenecut 100 --keyint 240 --min-keyint 2
>>>>>
>>>>> but the still the gop size remained around 238-242 .. not much
>>>>> fluctuation.
>>>>>
>>>>>
>>>>> Please can someone advice why ?
>>>>>
>>>>>
>>>>>
>>>>> Many thanks
>>>>>
>>>>>
>>>>> --
>>>>> Rosh Mendis
>>>>> Research Student - EngD in LSCITS
>>>>> Dept. of Computer Science
>>>>> University of York
>>>>>
>>>>> Disclaimer: http://www.york.ac.uk/docs/disclaimer/email.htm
>>>>>
>>>>> _______________________________________________
>>>>> x265-devel mailing list
>>>>> x265-devel at videolan.org
>>>>> https://mailman.videolan.org/listinfo/x265-devel
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> x265-devel mailing list
>>>> x265-devel at videolan.org
>>>> https://mailman.videolan.org/listinfo/x265-devel
>>>>
>>>>
>>> _______________________________________________
>>> x265-devel mailing list
>>> x265-devel at videolan.org
>>> https://mailman.videolan.org/listinfo/x265-devel
>>>
>>>
>> _______________________________________________
>> x265-devel mailing list
>> x265-devel at videolan.org
>> https://mailman.videolan.org/listinfo/x265-devel
>>
>>
> _______________________________________________
> x265-devel mailing list
> x265-devel at videolan.org
> https://mailman.videolan.org/listinfo/x265-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20150822/2da9de13/attachment.html>


More information about the x265-devel mailing list