Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
Announcements
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

NAL head after use Encoder indicaate: Access unit delimiter

zheng_s_
Beginner
267 Views

I use the same code to design a transcode app  which inlcude  Decode/VAPP/ Encode functions.

then I try to test the h264 video generated from Intel encoder and it is not playable by VLC.  I dump the header of each frame and  found follwoing interesting:

The orignal  H264 frame:

000141ffffff9affffffc05ffffff80ffffff8bffffffc165ffffff8d1ffffff8cffffff9c6069ffffff94ffffff82ffffff97ffffff84ffffffad7d1ffffff99ffffffe5ffffffe0ffffffdfffffffee606b586027fffffff1ffffffd661ffffffc4722bffffffd4604c7cb2544ffffffcc157932ffffffbfffffff86ffffffe91ffffffdfffffffa0fffffffbffffffd571ffffffe6574fffffffff133afffffff919ffffff964861ffffffe4ffffff96ffffffb165ffffffc95d3272ffffffcbb75ffffffcdffffff95ffffff95ffffffa7ffffffeaffffffd5ffffffc4ffffffcbffffff946781d8fffffffcffffffc03fffffffbffffffdcffffffd1ffffffdf256effffffc66e486e2f27ffffff98ffffffe05e385ffffffe12b2673ffffffbb2ffffff9a756ffffffffe58ffffffd0ffffffc3fffffff4ffffffbc23744dffffffc6ffffff9cffffffa81ddffffff9948ffffffe8ffffffd57246ffffff84cffffffe9ffffff9873ffffffe2ffffffa35fffffff51effffffcf6466fffffff8ffffffcb1c7effff

And here is the output from Intel Encoder:

0001950000128ffffffeeffffffbcffffffb00001617001000304ffffff800011ffffff9e9ffffffd1fffffffffffffffe4c6203c3f6effffff961cfffffffe106701d63ffffffa5ffffff91ffffffeeffffff8775ffffffdffffffff88492e2a1d7a6e77424fffffffd0ffffff98ffffff962affffffa5ffffffdfffffffacffffffd66c4affffff99ffffff82ffffff9c521175cffffffb5fffffffb17ffffffffffffff89ffffffae555774ffffff91ffffffe97d19ffffffccffffffe61657262c597affffffe817ffffffb9345fffffffff1d9ffffff81ffffffcb27221c6dffffffcf621d7effffff8f22ffffffe4ffffff8e1bffffff9031ffffffb53affffffb52323ffffff8bfffffffeffffff8cffffffd2fffffffc2a19ffffff87ffffffac37ffffffcbffffffe54869ffffff85ffffffdcffffffb6ffffffbc19c6bffffffa0ffffffb1423ffffffefffffff9d14ffffff8effffffa3ffffffd6ffffff91ffffff91fffffff2ffffffe662fffffff47affffffa627ffffffd47bffffffbfffffffccffffffe86e3dffffffd85870fffffffb69ffffff88ffffffbdffffffb74bffffffaefffffff0ffffffaaffffffa0ffffffc931ffffff9b6c3affffff9e36ffffff8bffffffcfffffffc5ffffffc863ffffff881c41ffffffc1c45ffffffa034ffffffb0ffffffc3ffffffaaffffff8d7effffffd0ffffffb7ffffffd3ffffffc7ffffff9c6874ffffffcbfffffff2203812ffffffa3d44ffffffdc47ffffffe74f4d6a4b70ffffffeafffffff71efffffffbffffffaa367e67b15ffffffe0ffffffa14f326effffff995bffffffceffffffad1856ffffff87ffffffbcfffffffbffffffbb17ffffffcacffffff8c2235ffffffbfffffffaf744d1effffff84ffffff89ffffff81ffffffe5ffffffa7ffffffe5233fffffffff9ffffffffffffffa9fffffffafffffffc6ffffff8a56ffffffbe5efffffff7ffffff92ffffff8819bffffffccffffffc9ffffff9d32effffff813970ffffffabffffff962b23ffffffeaffffffca7b6122ffffff9477fffffff7fffffffb1d6cffffff9e2f78ffffffd56038ffffff85ffffff8027a2c13ffffffcffffffff657400ffffffc51d17fffffffca48ffffffe3464893c38ffffff86ffffff91ffffff82fffffff613ffffff841dffffffd343d727346a69ffffffe9ffffffb4ffffffc36526ffffff88ffffff8b7effffffd2ffffffedffffff92ffffff8a4effffffd1ffffffa4ffffffe2ffffffa82cffffffe05e63ffffff83ffffff84ffffffcb5fffffffbf73ffffff8fffffffe82dffffff8e035ffffffaaffffffc6fffffff26a242effffffd93dffffffe9ffffffae35616dffffff94ffffffbaffffff95ffffffb1ffffffdd4f7421fffffff65f6fffffff8bffffffb818ffffffd5fffffffc2b

 

I didn’t copy the full buffer, since it is huge. The first 4 bytes is 0001 which is h264 NAL start prefix code, then followed by 0x09, indicate access unit delimiter. But I don’t know why the header/NAL type could be different after encoder. Anyone get experience in h264  format? And how to make the output from encode is playable

0 Kudos
1 Reply
Anthony_P_Intel
Employee
267 Views

Hi, 

Is your source video an "elementary" stream (without audio, etc.)?

Do you reproduce the issue by using  sample_multi_transcode.exe application?  If so, can you provide the parameters you are using?

0 Kudos
Reply