Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
92 Views

how to disable B frame of HEVC?

Hi, 

I run sample_encode on windows. I set the command arguments as follows: 

h265 -i D:\yuv\rpd_720p_slow.yuv -o output.h265 -w 1280 -h 720 -b 10000 -nobref -x 1 -u speed -p e5400a06c74d41f5b12d430bbaa23d0b

I expect hevc encoder output I P P P P P P...., but it's output is I BBBBBB. and the number of reference frame is not 1.

I saw the document Intel® Media Server Studio 2016 - HEVC Decoder and Encoder Release Notes, it says: 

 H.265 MAIN SP profile is not supported in current implementation.
 Real-time encoding not guaranteed.

My question is :

Is p frame supported by Hevc encoder ? Or how can i set the number of reference frames of B frame to 1?

 

0 Kudos
8 Replies
Highlighted
92 Views

I've replicated the behavior you've described.  Hope to get back to you in a day or two with some updates and recommendations.

0 Kudos
Highlighted
Employee
92 Views

Hi qiufang

We don't have a public API to not encode B frames for HEVC codec, included as a new feature in our next release. we have a workaround at the moment, will send you that by end of the day. 

Thanks,
Surbhi

0 Kudos
Highlighted
Beginner
92 Views

Hi, Jeffrey and Surbhi.

Thank both of you.

0 Kudos
Highlighted
92 Views

Glad to help!  Just wanted to add, on the subject of reference counts: 

The NumRefFrame parameter works differently for H264 and HEVC.  With HEVC, references are based on pyramid hierarchy, not the NumRefFrame setting.

0 Kudos
Highlighted
Beginner
92 Views

Thanks for your information and for being helpful.

 

Jeffrey Mcallister (Intel) wrote:

Glad to help!  Just wanted to add, on the subject of reference counts: 

The NumRefFrame parameter works differently for H264 and HEVC.  With HEVC, references are based on pyramid hierarchy, not the NumRefFrame setting.

0 Kudos
Highlighted
Beginner
92 Views

Any update for this? Right now, the HEVC encoder marks all the P frames as B frames. The only indication that you have a P frame is that the slice_pic_order_cnt_lsb value jumps ahead for P frames.

For example, if I indicate I want a GOP size of 5 and distance between reference frame of 2:

GopPicSize=5

GopRefDist=2

I get the following output (I listed the values of slice type and slice_pic_order_cnt_lsb from the output):

slice type     slice_pic_order_cnt_lsb

I                   0
B                  2
B                  1
B                  4
B                  3

I                   5

But I should get

I                   0
P                  2
B                  1
P                  4
B                  3

I                   5

 

0 Kudos
Highlighted
Beginner
92 Views

Hello,

I use last Media sdk (MediaServerStudioEssentials2017R2) under linux .

This is a bug..

in mediasdk-man.pdf we are advised to configure GopOptFlag value to MFX_GOP_STRICT . It does not work for to configure my hevc encoder.  

The encoder must strictly follow the given GOP structure as
defined by parameter GopPicSize, GopRefDist

How fix it ? thank in avance

 

 

 

0 Kudos
Highlighted
Beginner
92 Views

Have you solved this problem?

0 Kudos