AFRA box created, RTMP box updated

This commit is contained in:
Erik Zandvliet 2011-02-06 22:37:05 +01:00
parent 763028f3f6
commit 9981841406
4 changed files with 82 additions and 2 deletions

View file

@ -15,7 +15,11 @@ Box * Box_rtmp::GetBox() {
}
void Box_rtmp::SetReserved( ) {
Container->SetPayload((uint32_t)4,Box::uint32_to_uint8(0));
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(CurrentMaxPacketSize),12);
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(CurrentHighestCompatibleVersion),10);
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(CurrentHintTrackVersion),8);
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(CurrentReferenceIndex),6);
Container->SetPayload((uint32_t)4,Box::uint32_to_uint8(0),2);
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(0));
}
@ -27,16 +31,20 @@ void Box_rtmp::SetDefaults( ) {
}
void Box_rtmp::SetDataReferenceIndex( uint16_t NewIndex ) {
CurrentReferenceIndex = NewIndex;
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(NewIndex),6);
}
void Box_rtmp::SetHintTrackVersion( uint16_t NewVersion ) {
CurrentHintTrackVersion = NewVersion;
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(NewVersion),8);
}
void Box_rtmp::SetHighestCompatibleVersion( uint16_t NewVersion ) {
CurrentHighestCompatibleVersion = NewVersion;
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(NewVersion),10);
}
void Box_rtmp::SetMaxPacketSize( uint16_t NewSize ) {
CurrentMaxPacketSize = NewSize;
Container->SetPayload((uint32_t)2,Box::uint16_to_uint8(NewSize),12);
}
@ -50,7 +58,7 @@ void Box_rtmp::AddContent( Box * newcontent ) {
void Box_rtmp::WriteContent( ) {
Container->ResetPayload( );
SetDefaults( );
SetReserved( );
std::string serializedbox = "";
serializedbox.append((char*)Content->GetBoxedData(),Content->GetBoxedDataSize());
Container->SetPayload((uint32_t)serializedbox.size(),(uint8_t*)serializedbox.c_str(),14);