1

H.264 NAL 단위를 포함하는 컨테이너의 사용자 지정 형식을 제공하는 웹 서비스가 있습니다. 사용자 지정 MediaStreamSource를 사용하여 Silverlight에서 MediaElement를 통해 재생하려고합니다.개인 데이터에서 SPS 및 PPS 찾기

this에 따르면 개인 코덱 데이터를 설정해야합니다. 웹 서비스는 내가하지만 base64로 형식으로

그래서, 다른 플랫폼 (아이폰 OS, 안드로이드)에서 내가 필요로하는 모든 코덱의 추가 데이터 속성에 설정되어 있습니다 ("AUIAHv/hABhnQsAe2gMg7 + IhAAADAAEAAAMAMo8WLqABAARozgvI"모양) configCodec 제공합니다.

그러나 Windows Phone에서는 00000001 [SPS] 00000001 [PPS]와 같은 정보를 제공해야합니다. 그래서 누군가가 웹 서비스에서 제공된 개인 데이터를 구문 분석하여 SPS 및 PPS 값을 얻는 방법을 말해 줄 수 있습니까?

답변

2

귀하의 데이터를 16 진수로 디코딩입니다 :

0x01 0x42 0x00 0x1E 0xFF 
0xE1 
0x00 0x18 (SPS length in bytes) 
0x67 0x42 0xC0 0x1E 0xDA 0x03 0x20 0xEF (SPS...) 
0xE2 0x21 0x00 0x00 0x03 0x00 0x01 0x00 
0x00 0x03 0x00 0x32 0x8F 0x16 0x2E 0xA0 (...SPS) 
0x01 
0x00 0x04 (PPS length in bytes) 
0x68 0xCE 0x0B 0xC8 (PPS) 

나는이 구조가 정확히 무엇인지 모르는이 rfom이고, 그러나 SPS 및 PPS는 그것을 확실히 있습니다.

+0

설명 할 수 있습니까? 아니면이 구문 분석에 대한 정보를 얻을 수있는 링크를 제공 하시겠습니까? –

+1

SPS 및 PPS는 MPEG-4 Part 10 사양에 설명되어 있습니다. '0x67 '은 NAL 단위 유형 7 (SPS)입니다. 유형 8은 PPS입니다. 길이 바이트 합리적으로 일치합니다. 다른 건 없니? 정확한 데이터 구조는 어디에서 가져 왔는지에 따라 달라지며, "웹 서비스는 나를 제공합니다 ..."라고 말합니다. –