mirror of
https://github.com/SFML/SFML.git
synced 2024-12-02 00:01:05 +08:00
Rewrite of writeInt in opus writer to comply with codingstyle
This commit is contained in:
parent
af406d9201
commit
2a85734694
@ -32,19 +32,17 @@
|
|||||||
#include <ctime>
|
#include <ctime>
|
||||||
#include <cassert>
|
#include <cassert>
|
||||||
|
|
||||||
#include <iostream>
|
|
||||||
|
|
||||||
|
|
||||||
// Anonymous namespace
|
// Anonymous namespace
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
// Make sure to write int into buffer little endian
|
// Make sure to write int into buffer little endian
|
||||||
void writeInt(unsigned char buf[], size_t offset, sf::Uint32 val)
|
void writeUint32(unsigned char* buffer, sf::Uint32 value)
|
||||||
{
|
{
|
||||||
buf[offset+3]=((val)>>24)&0xff;
|
buffer[0] = static_cast<unsigned char>(value & 0x000000FF);
|
||||||
buf[offset+2]=((val)>>16)&0xff;
|
buffer[1] = static_cast<unsigned char>((value & 0x0000FF00) >> 8);
|
||||||
buf[offset+1]=((val)>>8)&0xff;
|
buffer[2] = static_cast<unsigned char>((value & 0x00FF0000) >> 16);
|
||||||
buf[offset]=(val)&0xff;
|
buffer[3] = static_cast<unsigned char>((value & 0xFF000000) >> 24);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -123,7 +121,7 @@ bool SoundFileWriterOpus::open(const std::string& filename, unsigned int sampleR
|
|||||||
memcpy(static_cast<void*>(headerData), "OpusHead", 8);
|
memcpy(static_cast<void*>(headerData), "OpusHead", 8);
|
||||||
headerData[8] = 1; // Version
|
headerData[8] = 1; // Version
|
||||||
headerData[9] = channelCount;
|
headerData[9] = channelCount;
|
||||||
writeInt(headerData, 12, static_cast<Uint32>(sampleRate));
|
writeUint32(headerData + 12, static_cast<Uint32>(sampleRate));
|
||||||
headerData[18] = channelCount > 8 ? 255 : (channelCount > 2); // Mapping family
|
headerData[18] = channelCount > 8 ? 255 : (channelCount > 2); // Mapping family
|
||||||
|
|
||||||
// Map opus header to ogg packet
|
// Map opus header to ogg packet
|
||||||
@ -150,13 +148,13 @@ bool SoundFileWriterOpus::open(const std::string& filename, unsigned int sampleR
|
|||||||
memcpy(static_cast<void*>(commentData), "OpusTags", 8);
|
memcpy(static_cast<void*>(commentData), "OpusTags", 8);
|
||||||
|
|
||||||
// unsigned 32bit integer: Length of vendor string (encoding library)
|
// unsigned 32bit integer: Length of vendor string (encoding library)
|
||||||
writeInt(commentData, 8, opusVersionLength);
|
writeUint32(commentData + 8, opusVersionLength);
|
||||||
|
|
||||||
// Vendor string
|
// Vendor string
|
||||||
memcpy(static_cast<void*>(commentData+12), opusVersion, opusVersionLength);
|
memcpy(static_cast<void*>(commentData+12), opusVersion, opusVersionLength);
|
||||||
|
|
||||||
// Length of user comments (E.g. you can add a ENCODER tag for SFML)
|
// Length of user comments (E.g. you can add a ENCODER tag for SFML)
|
||||||
writeInt(commentData, 12+opusVersionLength, 0);
|
writeUint32(commentData + 12+opusVersionLength, 0);
|
||||||
|
|
||||||
op.packet = commentData;
|
op.packet = commentData;
|
||||||
op.bytes = commentLength;
|
op.bytes = commentLength;
|
||||||
|
Loading…
Reference in New Issue
Block a user