return iPart + (((float)fPart) / 0x100);
}
void MP4File::WriteFixed16(float value)
{
if (value >= 0x100) {
throw new MP4Error(ERANGE, "MP4WriteFixed16");
}
u_int8_t iPart = (u_int8_t)value;
u_int8_t fPart = (u_int8_t)((value - iPart) * 0x100);
WriteUInt8(iPart);
WriteUInt8(fPart);
}
float MP4File::ReadFixed32()
{
u_int16_t iPart = ReadUInt16();
u_int16_t fPart = ReadUInt16();
return iPart + (((float)fPart) / 0x10000);
}
void MP4File::WriteFixed32(float value)
{
if (value >= 0x10000) {
throw new MP4Error(ERANGE, "MP4WriteFixed32");
}
u_int16_t iPart = (u_int16_t)value;
u_int16_t fPart = (u_int16_t)((value - iPart) * 0x10000);
WriteUInt16(iPart);
WriteUInt16(fPart);
}
float MP4File::ReadFloat()
{
union {
float f;
u_int32_t i;
} u;
u.i = ReadUInt32();
return u.f;
}
void MP4File::WriteFloat(float value)
{
union {
float f;
u_int32_t i;
} u;
u.f = value;
WriteUInt32(u.i);
}
char* M
上一篇:
mp4file.cpp
下一篇:
小学英语作文:讨厌的蟑螂(双语)