--- Begin Message ---
Source: octave-audio
Version: 2.0.8-1
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20240115 ftbfs-trixie
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>/src'
> /usr/bin/mkoctfile --verbose -c mididevinfo.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> /usr/bin/mkoctfile --verbose -c mididevice.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> /usr/bin/mkoctfile --verbose -c midi.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> /usr/bin/mkoctfile --verbose -c midi_object.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> /usr/bin/mkoctfile --verbose -c midisend.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> mididevice.cc -o mididevice.o
> /usr/bin/mkoctfile --verbose -c midirecv.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> mididevinfo.cc -o mididevinfo.o
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> midi_object.cc -o midi_object.o
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> midisend.cc -o midisend.o
> /usr/bin/mkoctfile --verbose -c midistat.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> /usr/bin/mkoctfile --verbose -c midiflush.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> midirecv.cc -o midirecv.o
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> midi.cc -o midi.o
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> midistat.cc -o midistat.o
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> midiflush.cc -o midiflush.o
> /usr/bin/mkoctfile --verbose -c midicallback.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> midicallback.cc -o midicallback.o
> /usr/bin/mkoctfile --verbose -c pkglock.cc -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -pthread -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread
> -DHAVE_CONFIG_H
> g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
> -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> -I/usr/include/rtmidi -D__UNIX_JACK__ -D__LINUX_ALSA__ -DHAVE_CONFIG_H
> pkglock.cc -o pkglock.o
> /usr/bin/mkoctfile --verbose -o __midi__.oct mididevinfo.o mididevice.o
> midi.o midi_object.o midisend.o midirecv.o midistat.o midiflush.o
> midicallback.o pkglock.o -Wl,-z,relro -lrtmidi -lpthread
> g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave
> -pthread -fopenmp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
> -fstack-protector-strong -fstack-clash-protection -Wformat
> -Werror=format-security -fcf-protection -pthread -I/usr/include/rtmidi
> -D__UNIX_JACK__ -D__LINUX_ALSA__ -pthread -DHAVE_CONFIG_H -o __midi__.oct
> mididevinfo.o mididevice.o midi.o midi_object.o midisend.o midirecv.o
> midistat.o midiflush.o midicallback.o pkglock.o -Wl,-z,relro -lrtmidi
> -lpthread -shared -Wl,-Bsymbolic -Wl,-z,relro -L/usr/lib/x86_64-linux-gnu
> -shared -Wl,-Bsymbolic -flto=auto -ffat-lto-objects -Wl,-z,relro
> make[1]: Leaving directory '/<<PKGBUILDDIR>>/src'
> copyfile /<<PKGBUILDDIR>>/./src/__midi__.oct
> /<<PKGBUILDDIR>>/./inst/x86_64-pc-linux-gnu-api-v58
> For information about changes from previous versions of the audio package,
> run 'news audio'.
> dh_octave_check -O--buildsystem=octave
> Checking package...
> Run the unit tests...
> Checking m files ...
> [inst/midiflush.m]
> >>>>> /<<PKGBUILDDIR>>/inst/midiflush.m
> ***** xtest
> a = mididevice(0);
> assert(isa(a, "octave_midi"));
> midiflush(a);
> ALSA lib seq_hw.c:529:(snd_seq_hw_open) open /dev/snd/seq failed: No such
> file or directory
>
> MidiOutAlsa::initialize: error creating ALSA sequencer client object.
>
> !!!!! known failure
> Error getting midi info: 'MidiOutAlsa::initialize: error creating ALSA
> sequencer client object.'
> ***** error <Expected midi device> midiflush(0)
> 2 tests, 1 passed, 1 known failure, 0 skipped
> [inst/midifileinfo.m]
> >>>>> /<<PKGBUILDDIR>>/inst/midifileinfo.m
> ***** shared testname
> testname = file_in_loadpath("data/c_maj_melody.mid");
> ***** test
> info = midifileinfo(testname);
> t = info.header;
> assert(info.header.format, 1);
> assert(info.header.tracks, 2);
> assert(info.header.ticks_per_qtr, 480);
> assert(info.header.ticks, 224);
> assert(info.header.frames, 1);
> assert(length(info.track), 2);
> assert(length(info.other), 0);
> 1 test, 1 passed, 0 known failure, 0 skipped
> [inst/hz2erb.m]
> >>>>> /<<PKGBUILDDIR>>/inst/hz2erb.m
> ***** error hz2erb()
> ***** error hz2erb('a')
> ***** error hz2erb(2i)
> ***** assert(hz2erb(5500), 29.8342, 10^-4)
> ***** test
> erb = hz2erb(10);
> hz = erb2hz(erb);
> assert(hz, 10, 100*eps)
> 5 tests, 5 passed, 0 known failure, 0 skipped
> [inst/mididevice.m]
> >>>>> /<<PKGBUILDDIR>>/inst/mididevice.m
> ***** xtest
> a = mididevice(0);
> assert(isa(a, "octave_midi"));
> ALSA lib seq_hw.c:529:(snd_seq_hw_open) open /dev/snd/seq failed: No such
> file or directory
>
> MidiOutAlsa::initialize: error creating ALSA sequencer client object.
>
> !!!!! known failure
> Error getting midi info: 'MidiOutAlsa::initialize: error creating ALSA
> sequencer client object.'
> 1 test, 0 passed, 1 known failure, 0 skipped
> [inst/mel2hz.m]
> >>>>> /<<PKGBUILDDIR>>/inst/mel2hz.m
> ***** error mel2hz()
> ***** error mel2hz('a')
> ***** error mel2hz(2i)
> ***** test
> mel = hz2mel(220);
> hz = mel2hz(mel);
> assert(hz, 220, 100*eps)
> 4 tests, 4 passed, 0 known failure, 0 skipped
> [inst/erb2hz.m]
> >>>>> /<<PKGBUILDDIR>>/inst/erb2hz.m
> ***** error erb2hz()
> ***** error erb2hz('a')
> ***** error erb2hz(2i)
> ***** test
> erb = hz2erb(10);
> hz = erb2hz(erb);
> assert(hz, 10, 100*eps)
> 4 tests, 4 passed, 0 known failure, 0 skipped
> [inst/ismidifile.m]
> >>>>> /<<PKGBUILDDIR>>/inst/ismidifile.m
> ***** test
> testname = file_in_loadpath("data/c_maj_melody.mid");
> assert (ismidifile(testname), true);
> ***** test
> testname = file_in_loadpath("data/sample.wav");
> assert (ismidifile(testname), false);
> ***** test
> testname = "X_DOES_NOT_EXIST_X";
> assert (ismidifile(testname), false);
> 3 tests, 3 passed, 0 known failure, 0 skipped
> [inst/audioOscillator.m]
> >>>>> /<<PKGBUILDDIR>>/inst/audioOscillator.m
> ***** error audioOscillator(1)
> ***** error audioOscillator("unknown")
> ***** error audioOscillator("sine", "a")
> ***** test
> osc = audioOscillator();
> assert(osc.Frequency, 100);
> assert(osc.SampleRate, 44100);
> assert(osc.SignalType, "sine");
> osc = audioOscillator("sine");
> assert(osc.SignalType, "sine");
> osc = audioOscillator("SignalType", "sine");
> assert(osc.SignalType, "sine");
> osc = audioOscillator("sine", 2);
> assert(osc.SignalType, "sine");
> assert(osc.Frequency, 2);
> ***** test
> osc = audioOscillator("square");
> assert(osc.Frequency, 100);
> assert(osc.SampleRate, 44100);
> assert(osc.SignalType, "square");
> osc = audioOscillator("SignalType", "square");
> assert(osc.SignalType, "square");
> osc = audioOscillator("square", 2);
> assert(osc.SignalType, "square");
> assert(osc.Frequency, 2);
> ***** test
> osc = audioOscillator("sawtooth");
> assert(osc.Frequency, 100);
> assert(osc.SampleRate, 44100);
> assert(osc.SignalType, "sawtooth");
> osc = audioOscillator("SignalType", "sawtooth");
> assert(osc.SignalType, "sawtooth");
> ***** test
> osc = audioOscillator("SignalType", "sine", "Frequency", 2, "Amplitude",
> 1.1, "SamplesPerFrame", 1024);
> assert(osc.Frequency, 2);
> assert(osc.Amplitude, 1.1);
> assert(osc.SamplesPerFrame, 1024);
> assert(osc.SampleRate, 44100);
> ***** test
> osc = audioOscillator("sine");
> data = osc();
> assert(length(data), osc.SamplesPerFrame)
> 8 tests, 8 passed, 0 known failure, 0 skipped
> [inst/hz2mel.m]
> >>>>> /<<PKGBUILDDIR>>/inst/hz2mel.m
> ***** error hz2mel()
> ***** error hz2mel('a')
> ***** error hz2mel(2i)
> ***** assert(hz2mel(440), 549.6387, 10^-4)
> 4 tests, 4 passed, 0 known failure, 0 skipped
> [inst/hz2bark.m]
> >>>>> /<<PKGBUILDDIR>>/inst/hz2bark.m
> ***** error hz2bark()
> ***** error hz2bark('a')
> ***** error hz2bark(2i)
> ***** assert(hz2bark(100), 0.9557, 10^-4)
> 4 tests, 4 passed, 0 known failure, 0 skipped
> [inst/midifileread.m]
> >>>>> /<<PKGBUILDDIR>>/inst/midifileread.m
> ***** shared testname
> testname = file_in_loadpath("data/c_maj_melody.mid");
> ***** test
> msg = midifileread(testname);
> assert(length(msg), 70);
> assert(msg(1).type == "ResetAllControllers");
> assert(msg(1).timestamp, 0);
> assert(msg(length(msg)).type == "NoteOn");
> assert(msg(length(msg)).timestamp, 7.9739583, 5e-7);
> ***** test
> msg = midifileread(testname, 'includemetaevents', true);
> assert(length(msg), 77);
> assert(msg(1).type == "MetaEvent");
> assert(msg(1).timestamp, 0);
> assert(msg(length(msg)).type == "MetaEvent");
> assert(msg(length(msg)).timestamp, 7.975, 5e-7);
> ***** fail midifileread(testname, "1name");
> ***** fail midifileread();
> 4 tests, 4 passed, 0 known failure, 0 skipped
> [inst/midimsg.m]
> >>>>> /<<PKGBUILDDIR>>/inst/midimsg.m
> ***** fail midimsg('badtype')
> ***** fail midimsg
> ***** test
> a = midimsg(0);
> assert(isa(a, "midimsg"));
> assert(length(a) == 0);
> assert(isempty(a));
> ***** fail midimsg("note", 0, 60, 127, 2)
> ***** fail midimsg("note", 17, 60, 127, 2)
> ***** fail midimsg("note", 1, 128, 127, 2)
> ***** fail midimsg("note", 1, -1, 127, 2)
> ***** fail midimsg("note", 1, 60, 128, 2)
> ***** fail midimsg("note", 1, 60, -1, 2)
> ***** fail midimsg("note", 1, 60, 127, -1)
> ***** fail midimsg("note", 1, 60, 127, 2, -1)
> ***** test
> a = midimsg("note", 1, 60, 127, 2);
> assert(isa(a, "midimsg"));
> assert(length(a) == 2);
> assert(!isempty(a));
> assert(a.channel, [1 1]);
> a = midimsg("note", 2, 60, 127, 1.2);
> t = a.type;
> assert(length(t) == 2);
> assert(strcmp(t{1}, "NoteOn"))
> assert(strcmp(t{2}, "NoteOn"))
> assert(a.timestamp, [0.0 1.2]);
> assert(a.channel, [2 2]);
> ***** test
> a = midimsg("noteon", 1, 60, 20);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "NoteOn");
> assert(a.channel, 1);
> assert(a.msgbytes, uint8([0x90 0x3C 0x14]));
> assert(!isempty(a));
> a = midimsg("noteon", 2, 60, 20);
> assert(a.channel, 2);
> assert(a.msgbytes, uint8([0x91 0x3C 0x14]));
> ***** test
> % using midimsgtype enum
> a = midimsg(midimsgtype.NoteOn, 1, 60, 20);
> assert(isa(a, "midimsg"));
> assert(a.type == "NoteOn");
> ***** test
> a = midimsg("noteoff", 1, 60, 20);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "NoteOff");
> assert(a.nummsgbytes, 3);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0x80 0x3C 0x14]));
> ***** test
> a = midimsg("programchange", 1, 60);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "ProgramChange");
> assert(a.program, 60);
> assert(a.channel, 1);
> assert(a.nummsgbytes, 2);
> assert(a.msgbytes, uint8([0xC0 60]));
> assert(!isempty(a));
> ***** test
> a = midimsg("controlchange", 1, 60, 65);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "ControlChange");
> assert(a.nummsgbytes, 3);
> assert(!isempty(a));
> assert(a.ccnumber, 60)
> assert(a.ccvalue, 65)
> a.ccnumber = 0;
> a.ccvalue = 4;
> assert(a.ccnumber, 0)
> assert(a.ccvalue, 4)
> ***** test
> a = midimsg("polykeypressure", 1, 60, 65);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "PolyKeyPressure");
> assert(a.nummsgbytes, 3);
> assert(a.note, 60);
> assert(a.keypressure, 65);
> assert(!isempty(a));
>
> a.keypressure = 40;
> assert(a.keypressure, 40);
> ***** test
> a = midimsg("pitchbend", 1, 8192);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "PitchBend");
> assert(a.nummsgbytes, 3);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xE0 0x00 0x40]));
> assert(a.pitchchange, 8192);
> assert(a.channel, 1);
> a.pitchchange = 8200;
> assert(a.pitchchange, 8200);
> ***** test
> a = midimsg("channelpressure", 1, 60);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "ChannelPressure");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> assert(a.channelpressure, 60);
>
> a.channelpressure = 40;
> assert(a.channelpressure, 40);
> ***** test
> a = midimsg("localcontrol", 1, 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "LocalControl");
> assert(a.nummsgbytes, 3);
> assert(a.localcontrol, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xB0 122 0x01]));
>
> a = midimsg("localcontrol", 2, 0);
> assert(a.msgbytes, uint8([0xB1 122 0x00]));
> assert(a.localcontrol, 0);
> assert(a.channel, 2);
> ***** test
> a = midimsg("polyon", 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "PolyOn");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> ***** test
> a = midimsg("monoon", 1, 0);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "MonoOn");
> assert(a.monochannels, 0);
> assert(a.nummsgbytes, 3);
> assert(!isempty(a));
> ***** test
> a = midimsg("omnion", 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "OmniOn");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> ***** test
> a = midimsg("omnioff", 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "OmniOff");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> ***** test
> a = midimsg("allsoundoff", 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "AllSoundOff");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> ***** test
> a = midimsg("allnotesoff", 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "AllNotesOff");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> ***** test
> a = midimsg("resetallcontrollers", 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "ResetAllControllers");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> ***** test
> a = midimsg("systemreset");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "SystemReset");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xFF]));
> ***** test
> a = midimsg("start");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "Start");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xFA]));
> ***** test
> a = midimsg("stop");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "Stop");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xFC]));
> ***** test
> a = midimsg("continue");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "Continue");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xFB]));
> ***** test
> a = midimsg("activesensing");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "ActiveSensing");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xFE]));
> ***** test
> a = midimsg("timingclock");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "TimingClock");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xF8]));
> ***** test
> a = midimsg("eox");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "EOX");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xF7]));
> ***** test
> a = midimsg("data", [1 2 3]);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "Data");
> assert(a.nummsgbytes, 3);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([1 2 3]));
> ***** test
> a = midimsg("songselect", 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "SongSelect");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xF3 1]));
> assert(a.song, 1);
> a.song = 2;
> assert(a.song, 2);
> assert(a.msgbytes, uint8([0xF3 2]));
> ***** test
> a = midimsg("songpositionpointer", 0);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "SongPositionPointer");
> assert(a.nummsgbytes, 3);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xF2 0 0]));
> assert(a.songposition, 0);
> a.songposition = 1000;
> assert(a.songposition, 1000);
> ***** test
> a = midimsg("tunerequest");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "TuneRequest");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xF6]));
> ***** test
> a = midimsg("miditimecodequarterframe", 1, 1);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "MIDITimeCodeQuarterFrame");
> assert(a.nummsgbytes, 2);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xF1 9]));
> assert(a.timecodesequence, 1);
> assert(a.timecodevalue, 1);
> a.timecodesequence = 5;
> assert(a.timecodesequence, 5);
> assert(a.timecodevalue, 1);
> a.timecodevalue = 2;
> assert(a.timecodesequence, 5);
> assert(a.timecodevalue, 2);
> ***** test
> a = midimsg("systemexclusive");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "SystemExclusive");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xF0]));
>
> a = midimsg("systemexclusive", 1.0);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "SystemExclusive");
> assert(a.nummsgbytes, 1);
> assert(!isempty(a));
> assert(a.msgbytes, uint8([0xF0]));
> assert(a.timestamp, 1.0);
>
> a = midimsg("systemexclusive", [1 2 3]);
> assert(isa(a, "midimsg"));
> assert(length(a) == 3);
> assert(a.type, {"SystemExclusive", "Data", "EOX"});
> assert(a.nummsgbytes, [1 3 1]);
> assert(!isempty(a));
> assert(a(1).msgbytes, uint8([0xF0]));
> assert(a(1).timestamp, 0.0);
> assert(a(2).msgbytes, uint8([1 2 3]));
> assert(a(2).timestamp, 0.0);
> assert(a(3).msgbytes, uint8([0xF7]));
> assert(a(3).timestamp, 0.0);
>
> a = midimsg("systemexclusive", [1 2 3], 5);
> assert(isa(a, "midimsg"));
> assert(length(a) == 3);
> assert(a.type, {"SystemExclusive", "Data", "EOX"});
> assert(a.nummsgbytes, [1 3 1]);
> assert(!isempty(a));
> assert(a(1).msgbytes, uint8([0xF0]));
> assert(a(1).timestamp, 5.0);
> assert(a(2).msgbytes, uint8([1 2 3]));
> assert(a(2).timestamp, 5.0);
> assert(a(3).msgbytes, uint8([0xF7]));
> assert(a(3).timestamp, 5.0);
> ***** test
> a = midimsg("noteon", 1, 60, 20);
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "NoteOn");
> assert(a.note, 60);
> assert(a.velocity, 20);
> b = midimsg("noteoff", 2, 60, 10, 5.0);
> assert(isa(b, "midimsg"));
> assert(length(b) == 1);
> assert(b.type == "NoteOff");
> assert(b.note, 60);
> assert(b.velocity, 10);
> c = [a b];
> assert(isa(c, "midimsg"));
> assert(length(c) == 2);
> assert(c.nummsgbytes, [3 3]);
> assert(c.channel, [1 2]);
> assert(c.note, [60 60]);
> assert(c.velocity, [20 10]);
> assert(c(1).type == "NoteOn");
> assert(c(1).channel, 1);
> assert(c(1).note, 60);
> assert(c(1).velocity, 20);
> assert(c(2).type == "NoteOff");
> assert(c(2).timestamp, 5.0);
> assert(c(2).channel, 2);
> assert(c(2).note, 60);
> assert(c(2).velocity, 10);
> ***** test
> a = midimsg("metaevent", 1, "hello");
> assert(isa(a, "midimsg"));
> assert(length(a) == 1);
> assert(a.type == "MetaEvent");
> assert(a.metatype, 1);
> assert(a.metadata, uint8([0x68 0x65 0x6C 0x6C 0x6F]));
> assert(a.msgbytes, uint8([0xFF 0x01 0x05 0x68 0x65 0x6C 0x6C 0x6F]))
> ***** test
> # basic assign operations
>
> a = midimsg("noteon", 1, 60, 127, 0);
> assert(length(a) == 1);
> assert(a.type == "NoteOn");
> assert(a.channel, 1);
> assert(a.note, 60);
> assert(a.velocity, 127);
> assert(a.timestamp, 0);
>
> a.timestamp = 10;
> a.channel = 2;
> a.note = 61;
> a.velocity = 100;
> assert(a.timestamp, 10);
> assert(a.channel, 2);
> assert(a.note, 61);
> assert(a.velocity, 100);
>
> fail ("a.channel = 0;");
> fail ("a.note = -1;");
> fail ("a.velocity = -1;");
> a = midimsg("note", 1, 60, 127, 2);
> assert(length(a) == 2);
> assert(a(1).timestamp, 0);
> assert(a(2).timestamp, 2);
> assert(a(1).note, 60);
> assert(a(2).note, 60);
> assert(a(1).channel, 1);
> assert(a(2).channel, 1);
>
> a(1).timestamp = 10;
> a(2).timestamp = 20;
> fail ("a(3).timestamp = 1;");
> a(1).channel = 11;
> a(2).channel = 12;
> a(1).note = 71;
>
> assert(a(1).timestamp, 10);
> assert(a(2).timestamp, 20);
> assert(a(1).channel, 11);
> assert(a(2).channel, 12);
> assert(a(1).note, 71);
>
> fail ("a(1) = 1;");
> a(1) = midimsg("noteon", 1, 80, 100, 50);
> assert(length(a) == 2);
> assert(a(1).timestamp, 50);
> assert(a(1).channel, 1);
> assert(a(1).note, 80);
> assert(a(1).velocity, 100);
>
> # 2nd index still same as was
> assert(a(2).timestamp, 20);
> assert(a(2).channel, 12);
> assert(a(2).note, 60);
> ***** test
> as = struct("RawBytes", [0x90 0x3C 0x14], "Timestamp", 10);
> a = midimsg.fromStruct(as);
> assert(length(a) == 1);
> assert(a.type == "NoteOn");
> assert(a.channel, 1);
> assert(a.timestamp, 10);
> assert(a.msgbytes, uint8([0x90 0x3C 0x14]));
> ***** test
> a1 = midimsg("noteon", 1, 80, 100, 5);
> a2 = midimsg("noteon", 1, 81, 100, 1);
> a3 = midimsg("noteon", 1, 82, 100, 10);
> msgs = [a1 a2 a3];
> ts = msgs.Timestamp;
> [~, idx] = sort(ts);
> smsgs = msgs(idx);
> assert(smsgs(1).Timestamp, 1)
> assert(smsgs(2).Timestamp, 5)
> assert(smsgs(3).Timestamp, 10)
> assert(smsgs(1).Note, 81)
> assert(smsgs(2).Note, 80)
> assert(smsgs(3).Note, 82)
> 46 tests, 46 passed, 0 known failure, 0 skipped
> [inst/midifilewrite.m]
> >>>>> /<<PKGBUILDDIR>>/inst/midifilewrite.m
> ***** shared testname
> testname = tempname;
> ***** test
> data = midimsg("note", 1, 60, 100, 2);
> midifilewrite(testname, data);
> info = midifileinfo(testname);
> t = info.header;
> assert(info.header.format, 0);
> assert(info.header.tracks, 1);
> msg = midifileread(testname);
> assert(msg(1).msgbytes, uint8([0x90 0x3C 0x64]));
> assert(msg(2).msgbytes, uint8([0x90 0x3C 0x00]));
> assert(msg(2).timestamp, 2);
> ***** test
> data = midimsg("note", 1, 60, 100, 2);
>
> midifilewrite(testname, data, 'format', 0);
> info = midifileinfo(testname);
> assert(info.header.format, 0);
> assert(info.header.tracks, 1);
> msg = midifileread(testname);
> assert(length(msg), 2);
>
> midifilewrite(testname, data, 'format', 1);
> info = midifileinfo(testname);
> assert(info.header.format, 1);
> assert(info.header.tracks, 1);
> msg = midifileread(testname);
> assert(length(msg), 2);
>
> midifilewrite(testname, {data, data}, 'format', 0);
> info = midifileinfo(testname);
> assert(info.header.format, 0);
> assert(info.header.tracks, 1);
> msg = midifileread(testname);
> assert(length(msg), 4);
>
> midifilewrite(testname, {data, data}, 'format', 1);
> info = midifileinfo(testname);
> assert(info.header.format, 1);
> assert(info.header.tracks, 2);
> msg = midifileread(testname);
> assert(length(msg), 4);
> ***** test
> if exist (testname, 'file');
> delete (testname);
> end
> 3 tests, 3 passed, 0 known failure, 0 skipped
> [inst/midimsgtype.m]
> >>>>> /<<PKGBUILDDIR>>/inst/midimsgtype.m
> ***** fail midimsg.InvalidEnumValue
> ***** test
> t = midimsgtype.NoteOn;
> assert (class(t) == "midimsgtype");
> c = char (t);
> assert (class(c) == "char");
> assert (c == "NoteOn");
> ***** test
> t = midimsgtype.NoteOff;
> assert (isenum(t));
> ***** test
> t = midimsgtype.NoteOn;
> assert (t == "NoteOn");
> assert (t == midimsgtype.NoteOn);
> assert (t != midimsgtype.NoteOff);
> assert (strcmp(midimsgtype.NoteOn, "NoteOn"));
> assert (strcmp(midimsgtype.NoteOn, midimsgtype.NoteOn));
> ***** test
> t = midimsgtype.NoteOn;
> assert(ismember(t, {midimsgtype.NoteOn}), 1);
> assert(ismember(t, {midimsgtype.NoteOff}), 0);
> assert(ismember(t, {midimsgtype.NoteOn, midimsgtype.NoteOff}), 1);
> 5 tests, 5 passed, 0 known failure, 0 skipped
> [inst/mididevinfo.m]
> >>>>> /<<PKGBUILDDIR>>/inst/mididevinfo.m
> ***** xtest
> a = mididevinfo;
> assert(length(a) > 0);
> x = a.input;
> x = a.output;
> ALSA lib seq_hw.c:529:(snd_seq_hw_open) open /dev/snd/seq failed: No such
> file or directory
>
> MidiOutAlsa::initialize: error creating ALSA sequencer client object.
>
> !!!!! known failure
> Error getting midi info: 'MidiOutAlsa::initialize: error creating ALSA
> sequencer client object.'
> 1 test, 0 passed, 1 known failure, 0 skipped
> [inst/midicontrols.m]
> >>>>> /<<PKGBUILDDIR>>/inst/midicontrols.m
> ***** xtest
> a = midicontrols();
> assert(isa(a, "midicontrols"));
> ALSA lib seq_hw.c:529:(snd_seq_hw_open) open /dev/snd/seq failed: No such
> file or directory
>
> MidiOutAlsa::initialize: error creating ALSA sequencer client object.
>
> !!!!! known failure
> Error getting midi info: 'MidiOutAlsa::initialize: error creating ALSA
> sequencer client object.'
> 1 test, 0 passed, 1 known failure, 0 skipped
> [inst/bark2hz.m]
> >>>>> /<<PKGBUILDDIR>>/inst/bark2hz.m
> ***** error bark2hz()
> ***** error bark2hz('a')
> ***** error bark2hz(2i)
> ***** test
> bark = hz2bark(10);
> hz = bark2hz(bark);
> assert(hz, 10, 100*eps)
> 4 tests, 4 passed, 0 known failure, 0 skipped
> [inst/midicallback.m]
> >>>>> /<<PKGBUILDDIR>>/inst/midicallback.m
> ***** function testcallback(ctrl)
> # do nothing
> ***** endfunction
> ***** xtest
> a = midicontrols();
> assert(isa(a, "midicontrols"));
> assert(midicallback(a), []);
> assert(midicallback(a, @testcallback), []);
> assert(midicallback(a), func2str(@testcallback));
> midicallback(a, []);
> assert(midicallback(a), []);
> ALSA lib seq_hw.c:529:(snd_seq_hw_open) open /dev/snd/seq failed: No such
> file or directory
>
> MidiOutAlsa::initialize: error creating ALSA sequencer client object.
>
> !!!!! known failure
> Error getting midi info: 'MidiOutAlsa::initialize: error creating ALSA
> sequencer client object.'
> ***** error <Expected midicontrols object> midicallback(0);
> 2 tests, 1 passed, 1 known failure, 0 skipped
> Checking C++ files ...
> Done running the unit tests.
> Summary: 102 tests, 97 passed, 5 known failures, 0 skipped
> dh_installdocs -O--buildsystem=octave
> dh_installdocs: error: Cannot find (any matches for) "doc/audio.pdf" (tried
> in ., debian/tmp)
>
> make: *** [debian/rules:5: binary] Error 25
The full build log is available from:
http://qa-logs.debian.net/2024/01/15/octave-audio_2.0.8-1_unstable.log
All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240115;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240115&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
--- End Message ---