Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Viet_Hung_N_
Beginner
157 Views

No SPS/PPS NALU in bitstream

Dear all,

Beside application for Video Conferencing, I am developing a live broadcasting application and here I got a strange problem that is no SPS/PPS nor SEI, VUI in bitstream, they are set to 0 value. Only IDR/P/B NALU in bitstream as data I dumped. That happends on platform Core i5 3570K with Windows 7 32bit. When I bring that application running on platform Core i5 2500K with Windows 7 32bit, it runs normaly.

All I use Intel Media SDK 2013 R2.

0 Kudos
11 Replies
Viet_Hung_N_
Beginner
157 Views

Does anyone face this problem? If does, did you resolve it?

Thanks!

Petter_L_Intel
Employee
157 Views

Hi,

that is certainly a strange error. The encoded binary you provided is not a valid H.264 stream.

Can you please share more details about your workload and platform?  You can use Media SDK system_analyzer and Media SDK tracer tool to capture this info.

Also, make sure you use the latest Intel graphics driver available for your platform.

Regards,
Petter

Viet_Hung_N_
Beginner
157 Views

Hi,

Here is workload, system analyzer report, log trace. Please check it.

Thanks

Petter_L_Intel
Employee
157 Views

Hi,

Your system configuration and driver version looks fine.

Using that exact same encoder configuration I'm not able to reproduce your issue on my side.

I suspect the issue may somehow be related to how you write the encoded frames to file?

Regards,
Petter 

Viet_Hung_N_
Beginner
157 Views

Hi,

I attached here is source of my encoder and how I write encoded frame into file. Let me remind that my program run fine on Intel Core i5 2500K, but when I bring it on Intel Core i5 3570K, it gives me this strange error

Here is my code of writing encoded frane into file

void UDPTranscodeSession::OnEncodedData(const unsigned char* data, unsigned int length, unsigned long timestamp, void* user_data)
{
    static int dumpBin = 0;
    if(!dumpBin)
    {
        _sopen_s(&dumpBin, "dumpBin.bin", _O_WRONLY | _O_CREAT | _O_BINARY, _SH_DENYNO, 0);
    } else {

       _write(dumpBin,data,length);

    }

    //something else for my codes
}

Please check it.

Thanks

OTorg
New Contributor II
157 Views

-----------------------------------------

OTorg
New Contributor II
157 Views

You lose the first data, try this:

[cpp]void UDPTranscodeSession::OnEncodedData(const unsigned char* data, unsigned int length, unsigned long timestamp, void* user_data)
{
    static int dumpBin = 0;

    if(!dumpBin)
        _sopen_s(&dumpBin, "dumpBin.bin", _O_WRONLY | _O_CREAT | _O_BINARY, _SH_DENYNO, 0);

    _write(dumpBin,data,length);
}[/cpp]

And also you shouldn't use GopPicSize == 0 at live casts, because it turns off periodical sps/pps inserting.

Viet_Hung_N_
Beginner
157 Views

Hi,

Sorry for making decoration of my code leading to mistake. My code is as dj_alek commented. I am sure is GopPicSize is not equal to 0. You can see in my file that I dumped, only has IDR/P/B NALU, the zero-set data should be SPS/PPS data. I don't know why I received zero-set data instead of SPS/PPS data.

Rosen__Daniel
Beginner
157 Views

Did you ever resolve this problem?  I'm seeing the same thing with the latest Media SDK (2014 R2).  No AUD, SPS or PPS on an Intel 3770 with HD 4000, but works fine on an older Core I5 with HD 3000.  Same code.  Even the Media SDK sample_encode application has the same problem, no AUD on any frame, and no SPS, or PPS in the output bit stream.

 

 

 

Viet_Hung_N_
Beginner
157 Views

Unfortunately is No. I think Intel got problem in some case.

157 Views

@fastedit - "No AUD, SPS or PPS on an Intel 3770 with HD 4000," -> From the config in your latest thread (https://software.intel.com/en-us/forums/topic/533789) on SEI NAL insertion, are you able to see the SPS data fine for Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz and HD4000 graphics?

Reply