• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

MeltyPlayer / MeltyTool / 26548448806

28 May 2026 01:11AM UTC coverage: 41.227% (-0.2%) from 41.395%
26548448806

push

github

web-flow
Specified the version for lcov merger since the newer one doesn't work for whatever reason.

7037 of 19097 branches covered (36.85%)

Branch coverage included in aggregate %.

30027 of 70806 relevant lines covered (42.41%)

61608.29 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/FinModelUtility/Libraries/Fmod/Fmod/src/api/BankAudioImporter.cs
1
using fin.audio;
2
using fin.audio.io;
3
using fin.audio.io.importers;
4
using fin.audio.io.importers.ogg;
5
using fin.audio.io.importers.wav;
6
using fin.io;
7
using fin.util.asserts;
8
using fin.util.sets;
9

10
using Fmod5Sharp.CodecRebuilders;
11

12
namespace fmod.api;
13

14
public record BankAudioFileBundle(IReadOnlyTreeFile BankFile)
×
15
    : IAudioFileBundle {
16
  public IReadOnlyTreeFile? MainFile => this.BankFile;
×
17
}
18

19
public sealed class BankAudioImporter : IAudioImporter<BankAudioFileBundle> {
20
  public ILoadedAudioBuffer<short>[] ImportAudio(
21
      IAudioManager<short> audioManager,
22
      BankAudioFileBundle fileBundle) {
×
23
    var bankFile = fileBundle.BankFile;
×
24
    var fmodReader = FModBankParser.FModBankParser.LoadSoundBank(
×
25
        new FileInfo(bankFile.FullPath));
×
26

27
    var fmodSamples = fmodReader.SoundBankData.SelectMany(bank => bank.Samples);
×
28

29
    return fmodSamples.Select(fmodSample => {
×
30
      var finBuffer = audioManager.CreateLoadedAudioBuffer(fileBundle,
×
31
        bankFile.AsFileSet());
×
32

×
33
      var fmodMetadata = fmodSample.Metadata;
×
34
      finBuffer.Frequency = fmodMetadata.Frequency;
×
35

×
36
      Asserts.True(
×
37
          fmodSample.RebuildAsStandardFileFormat(
×
38
              out var data,
×
39
              out var fileExtension), "Failed to rebuild FMOD as standard file format");
×
40

×
41
      using var ms = new MemoryStream(data!);
×
42

×
43
      return fileExtension.ToLower() switch {
×
44
          "wav" => WavAudioImporter.ImportAudio(audioManager, fileBundle, ms),
×
45
          "ogg" => OggAudioImporter.ImportAudio(audioManager, fileBundle, ms),
×
46
      };
×
47
    }).ToArray();
×
48
  }
×
49
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc