Audio Chunk: Add interface to copy chunk

This is needed if audio is to be removed from the chunk without altering
the original chunk.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
This commit is contained in:
Christopher Snowhill 2025-02-13 01:01:52 -08:00
parent 139ff3a2b8
commit 3eec6d7700
2 changed files with 13 additions and 0 deletions

View file

@ -103,6 +103,8 @@ enum {
- (BOOL)isHDCD;
- (void)setHDCD;
- (AudioChunk *)copy;
@end
NS_ASSUME_NONNULL_END

View file

@ -41,6 +41,17 @@
return self;
}
- (AudioChunk *)copy {
AudioChunk *outputChunk = [[AudioChunk alloc] init];
[outputChunk setFormat:format];
[outputChunk setChannelConfig:channelConfig];
if(hdcd) [outputChunk setHDCD];
[outputChunk setStreamTimestamp:streamTimestamp];
[outputChunk setStreamTimeRatio:streamTimeRatio];
[outputChunk assignData:chunkData];
return outputChunk;
}
static const uint32_t AudioChannelConfigTable[] = {
0,
AudioConfigMono,