| 37 | } |
| 38 | |
| 39 | HRESULT CHEVCSequenceParser::ParseNALs(const BYTE *buffer, size_t buflen, int nal_size) |
| 40 | { |
| 41 | CH265Nalu nalu; |
| 42 | nalu.SetBuffer(buffer, buflen, nal_size); |
| 43 | |
| 44 | while (nalu.ReadNext()) |
| 45 | { |
| 46 | const BYTE *data = nalu.GetDataBuffer() + 2; |
| 47 | const size_t len = nalu.GetDataLength() - 2; |
| 48 | if (nalu.GetType() == HEVC_NAL_SPS) |
| 49 | { |
| 50 | CH264NALUnescape unescapedNAL(data, len); |
| 51 | ParseSPS(unescapedNAL.GetBuffer(), unescapedNAL.GetSize()); |
| 52 | break; |
| 53 | } |
| 54 | } |
| 55 | |
| 56 | return S_OK; |
| 57 | } |
| 58 | |
| 59 | HRESULT CHEVCSequenceParser::ParseSPS(const BYTE *buffer, size_t buflen) |
| 60 | { |
no test coverage detected