3
我有H264编码视频文件来自Android移动相机,我想获取帧并将它们逐个存储为文件。问题是,我如何区分这些帧,通过一些特殊的标签来分割这些帧?现在我有这个功能,可以通过获取字节帧的长度,也许有助于理解我的问题,THX :)如何通过某些特殊标签区分H264编码的视频帧?
public static int h263Parse(byte[]buf, int offset, int nLen)
{
int vop_found, i;
vop_found = 0;
i=0;
if(vop_found == 0)
{
for(i=(offset + 3); i<(offset+nLen); i++)
{
if(buf[i-3] == 0x00)
if(buf[i-2] == 0x00)
if((buf[i-1]&0xff) < 0x84)
if((buf[i-1]&0xff) >= 0x80)
{
i++;
vop_found=1;
break;
}
}
}
if(vop_found == 1)
{
for(; i<(offset+nLen); i++)
{
if(buf[i-3] == 0x00)
if(buf[i-2] == 0x00)
if((buf[i-1]&0xff) < 0x84)
if((buf[i-1]&0xff) >= 0x80)
{
return i-3-offset;
}
}
}
return -1;
}
那是H264 NAL字节流?它是否以'0x00000167'开头? – Cipi 2011-06-25 12:27:35