Community
cancel
Showing results for 
Search instead for 
Did you mean: 
vardar
Beginner
105 Views

H264 Baseline Profile

Jump to solution
Hello all,
I'll be happy that if someone can provide me parameters for H264enc, which produces baseline profile stream.
Setting profile_idc to 66 and level to 0 seems to not work.
When I check produced stream in sequence header I can see profile as 42 (hexa).
When I push this stream to external system for decoding I frames are decoded successfully, but P frames failed to decode. So I believe I'm missing something.
p.s. External system can decode other baseline H264 streams coming from other encoders.
Thanks in advance,
-victor
0 Kudos
1 Solution
Chao_Y_Intel
Employee
105 Views

Hi Victor,

Baseline profile is supported in the UMC sample. The problem happens, because besides the profile_idc and level setting, there are some other restriction to create a base line video. If some high level encoding tools are used, the encoder may change it to high level profile:

Could you have a check on the following file?

\codec\h264_enc\include\umc_h264_video_encoder_tmpl.cpp.h

In function:

Status H264ENC_MAKE_NAME(H264CoreEncoder_CheckEncoderParameters)( void* state)

On profile check part:

bool profile_check = true;

while( profile_check ){

.

}

You can run it with your parameter setting, and see if the encoder changed it to other profiles.

Thanks,
Chao

View solution in original post

1 Reply
Chao_Y_Intel
Employee
106 Views

Hi Victor,

Baseline profile is supported in the UMC sample. The problem happens, because besides the profile_idc and level setting, there are some other restriction to create a base line video. If some high level encoding tools are used, the encoder may change it to high level profile:

Could you have a check on the following file?

\codec\h264_enc\include\umc_h264_video_encoder_tmpl.cpp.h

In function:

Status H264ENC_MAKE_NAME(H264CoreEncoder_CheckEncoderParameters)( void* state)

On profile check part:

bool profile_check = true;

while( profile_check ){

.

}

You can run it with your parameter setting, and see if the encoder changed it to other profiles.

Thanks,
Chao

View solution in original post

Reply