From 69ebce32c014b998a84cbe3c2b1b65e4360016ca Mon Sep 17 00:00:00 2001 From: Christopher Snowhill Date: Mon, 21 Mar 2022 16:32:52 -0700 Subject: [PATCH] Revert "VGMStream Input: Remove downmixing, add layout" This reverts commit 0d4ee4c901b4595f077a5785ae6ced6dbd1522d3. Signed-off-by: Christopher Snowhill --- Plugins/vgmstream/vgmstream/VGMDecoder.h | 1 - Plugins/vgmstream/vgmstream/VGMDecoder.m | 37 +++++++++++++----------- 2 files changed, 20 insertions(+), 18 deletions(-) diff --git a/Plugins/vgmstream/vgmstream/VGMDecoder.h b/Plugins/vgmstream/vgmstream/VGMDecoder.h index 80009c741..20931edbd 100644 --- a/Plugins/vgmstream/vgmstream/VGMDecoder.h +++ b/Plugins/vgmstream/vgmstream/VGMDecoder.h @@ -32,7 +32,6 @@ BOOL canPlayForever; int sampleRate; int channels; - uint32_t channelConfig; int bitrate; long totalFrames; long framesRead; diff --git a/Plugins/vgmstream/vgmstream/VGMDecoder.m b/Plugins/vgmstream/vgmstream/VGMDecoder.m index eee3fda33..41efa7fc8 100644 --- a/Plugins/vgmstream/vgmstream/VGMDecoder.m +++ b/Plugins/vgmstream/vgmstream/VGMDecoder.m @@ -63,7 +63,9 @@ static NSString *get_description_tag(const char *description, const char *tag, c vgmstream_apply_config(stream, &vcfg); int output_channels = stream->channels; - uint32_t channelConfig = stream->channel_layout; + + vgmstream_mixing_autodownmix(stream, 6); + vgmstream_mixing_enable(stream, MAX_BUFFER_SAMPLES, NULL, &output_channels); int track_num = [[url fragment] intValue]; @@ -148,21 +150,20 @@ static NSString *get_description_tag(const char *description, const char *tag, c close_streamfile(tagFile); } - NSDictionary *properties = @{ @"bitrate": [NSNumber numberWithInt:bitrate / 1000], - @"sampleRate": [NSNumber numberWithInt:sampleRate], - @"totalFrames": [NSNumber numberWithDouble:totalFrames], - @"bitsPerSample": [NSNumber numberWithInt:16], - @"floatingPoint": [NSNumber numberWithBool:NO], - @"channels": [NSNumber numberWithInt:channels], - @"channelConfig": [NSNumber numberWithUnsignedInt:channelConfig], - @"seekable": [NSNumber numberWithBool:YES], - @"replayGainAlbumGain": rgAlbumGain, - @"replayGainAlbumPeak": rgAlbumPeak, - @"replayGainTrackGain": rgTrackGain, - @"replayGainTrackPeak": rgTrackPeak, - @"codec": codec, - @"endian": @"host", - @"encoding": @"lossy/lossless" }; + NSDictionary *properties = @{@"bitrate": [NSNumber numberWithInt:bitrate / 1000], + @"sampleRate": [NSNumber numberWithInt:sampleRate], + @"totalFrames": [NSNumber numberWithDouble:totalFrames], + @"bitsPerSample": [NSNumber numberWithInt:16], + @"floatingPoint": [NSNumber numberWithBool:NO], + @"channels": [NSNumber numberWithInt:channels], + @"seekable": [NSNumber numberWithBool:YES], + @"replayGainAlbumGain": rgAlbumGain, + @"replayGainAlbumPeak": rgAlbumPeak, + @"replayGainTrackGain": rgTrackGain, + @"replayGainTrackPeak": rgTrackPeak, + @"codec": codec, + @"endian": @"host", + @"encoding": @"lossy/lossless"}; if([title isEqualToString:@""]) { if(stream->num_streams > 1) { @@ -246,7 +247,9 @@ static NSString *get_description_tag(const char *description, const char *tag, c return NO; int output_channels = stream->channels; - channelConfig = stream->channel_layout; + + vgmstream_mixing_autodownmix(stream, 6); + vgmstream_mixing_enable(stream, MAX_BUFFER_SAMPLES, NULL, &output_channels); canPlayForever = stream->loop_flag; if(canPlayForever) {