示例#1
0
        public void CreateAlignmentWithNoPrevious(int multiple, int loopStart, int loopEnd)
        {
            var sampleCount = 100;

            var(adpcm, coefs) = GenerateAudio.GenerateAdpcmEmpty(sampleCount);

            var builder = new GcAdpcmChannelBuilder(adpcm, coefs, sampleCount)
                          .WithLoop(true, loopStart, loopEnd);

            builder.LoopAlignmentMultiple = multiple;
            var alignment = builder.GetAlignment();

            Assert.Equal(multiple, alignment.AlignmentMultiple);
            Assert.Equal(loopStart, alignment.LoopStart);
            Assert.Equal(loopEnd, alignment.LoopEnd);
        }
示例#2
0
        public void CreateAlignmentReplacePreviousWhenLoopChanges(int multiple, int loopStart, int loopEnd)
        {
            var sampleCount = 100;

            var(adpcm, coefs) = GenerateAudio.GenerateAdpcmEmpty(sampleCount);
            var previous = new GcAdpcmAlignment(multiple, loopStart, loopEnd, adpcm, coefs);

            var builder = new GcAdpcmChannelBuilder(adpcm, coefs, sampleCount)
                          .WithLoop(true, loopStart + 1, loopEnd + 1)
                          .WithPrevious(null, null, previous);

            builder.LoopAlignmentMultiple = multiple;
            var alignment = builder.GetAlignment();

            Assert.NotEqual(previous, alignment);
        }
        public void CreateAlignmentWithPrevious(int multiple, int loopStart, int loopEnd)
        {
            int sampleCount = 100;

            (byte[] adpcm, short[] coefs) = GenerateAudio.GenerateAdpcmEmpty(sampleCount);
            var previous = new GcAdpcmAlignment(multiple, loopStart, loopEnd, adpcm, coefs);

            GcAdpcmChannelBuilder builder = new GcAdpcmChannelBuilder(adpcm, coefs, sampleCount)
                                            .WithLoop(true, loopStart, loopEnd)
                                            .WithPrevious(null, null, previous);

            builder.LoopAlignmentMultiple = multiple;
            GcAdpcmAlignment alignment = builder.GetAlignment();

            Assert.Equal(previous, alignment);
        }