mixxxdj / mixxx

Mixxx is Free DJ software that gives you everything you need to perform live mixes.
http://mixxx.org
Other
4.4k stars 1.26k forks source link

`SoundSourceProxyTest.firstSoundTest` fails on `main` (Arch Linux) #11940

Closed Holzhaus closed 1 year ago

Holzhaus commented 1 year ago

Bug Description

I just noticed this, did not bisect or check if other branches are also affected (2.4 is affected as well).

  1/791 Test #716: SoundSourceProxyTest.firstSoundTest ........................................................***Failed    0.38 sec
QML debugging is enabled. Only use this in a safe environment.
info [0x564d024aeb50] Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
Note: Google Test filter = SoundSourceProxyTest.firstSoundTest
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from SoundSourceProxyTest
[ RUN      ] SoundSourceProxyTest.firstSoundTest
info [0x564d024aeb50] SoundSourceFFmpeg - Disabling untested input formats: aa, aax, ac3, ace, acm, act, adf, adp, ads, adx, aea, afc, aix, alp, amr, amrnb, amrwb, anm, apac, apc, ape, apm, apng, aptx, aptx_hd, aqtitle, argo_asf, argo_brp, argo_cvg, asf, asf_o, ass, ast, au, av1, avi, avisynth, avr, avs, avs2, avs3, bethsoftvid, bfi, bin, bink, binka, bit, bitpacked, bmv, bfstm, brstm, boa, bonk, c93, caf, cavsvideo, cdg, cdxl, cine, codec2, codec2raw, concat, dash, data, daud, dcstr, derf, dfa, dfpwm, dhav, dirac, dnxhd, dsf, dsicin, dss, dts, dtshd, dv, dvbsub, dvbtxt, dxa, ea, ea_cdata, eac3, epaf, ffmetadata, filmstrip, fits, flac, flic, flv, live_flv, 4xm, frm, fsb, fwse, g722, g723_1, g726, g726le, g729, gdv, genh, gif, gsm, gxf, h261, h263, h264, hca, hcom, hevc, hls, hnm, ico, idcin, idf, iff, ifv, ilbc, image2, image2pipe, alias_pix, brender_pix, imf, ingenient, ipmovie, ipu, ircam, iss, iv8, ivf, ivr, jacosub, jv, kux, kvag, laf, lmlm4, loas, luodat, lrc, lvf, lxf, mca, mcc, matroska,webm, mgsts, microdvd, mjpeg, mjpeg_2000, mlp, mlv, mm, mmf, mods, moflex, mpc, mpc8, mpeg, mpegts, mpegtsraw, mpegvideo, mpjpeg, mpl2, mpsub, msf, msnwctcp, msp, mtaf, mtv, musx, mv, mvi, mxf, mxg, nc, nistsphere, nsp, nsv, nut, nuv, obu, ogg, oma, paf, alaw, mulaw, vidc, f64be, f64le, f32be, f32le, s32be, s32le, s24be, s24le, s16be, s16le, s8, u32be, u32le, u24be, u24le, u16be, u16le, u8, pjs, pmp, pp_bnk, pva, pvf, qcp, r3d, rawvideo, realtext, redspark, rka, rl2, rm, roq, rpl, rsd, rso, rtp, rtsp, s337m, sami, sap, sbc, sbg, scc, scd, sdns, sdp, sdr2, sds, sdx, film_cpk, ser, sga, shn, siff, simbiosis_imx, sln, smk, smjpeg, smush, sol, sox, spdif, srt, psxstr, stl, subviewer1, subviewer, sup, svag, svs, swf, tak, tedcaptions, thp, 3dostr, tiertexseq, tmv, truehd, tta, txd, tty, ty, v210, v210x, vag, vc1, vc1test, vividas, vivo, vmd, vobsub, voc, vpk, vplayer, vqf, w64, wady, wavarc, wc3movie, webm_dash_manifest, webvtt, wsaud, wsd, wsvqa, wtv, wve, xa, xbin, xmd, xmv, xvag, xwma, yop, yuv4mpegpipe, bmp_pipe, cri_pipe, dds_pipe, dpx_pipe, exr_pipe, gem_pipe, gif_pipe, hdr_pipe, j2k_pipe, jpeg_pipe, jpegls_pipe, jpegxl_pipe, pam_pipe, pbm_pipe, pcx_pipe, pfm_pipe, pgmyuv_pipe, pgm_pipe, pgx_pipe, phm_pipe, photocd_pipe, pictor_pipe, png_pipe, ppm_pipe, psd_pipe, qdraw_pipe, qoi_pipe, sgi_pipe, svg_pipe, sunrast_pipe, tiff_pipe, vbn_pipe, webp_pipe, xbm_pipe, xpm_pipe, xwd_pipe, libmodplug, libopenmpt
info [0x564d024aeb50] faad2::LibLoader - Successfully loaded FAAD2 library "libfaad.so.2" version 2.10.1
info [0x564d024aeb50] SoundSourceSndFile - Disabling OGG decoding for "libsndfile-1.2.2"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "3g2"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "3gp"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "aac"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "aiff"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "libsndfile"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "caf"
info [0x564d024aeb50] SoundSourceProxy - 2 (lower) : "libsndfile"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "flac"
info [0x564d024aeb50] SoundSourceProxy - 4 (higher) : "Xiph.org libFLAC"
info [0x564d024aeb50] SoundSourceProxy - 2 (lower) : "libsndfile"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "it"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "MODPlug"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "m4a"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "
 FAAD2"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "mj2"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "mod"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "MODPlug"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "mov"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "mp3"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "MAD: MPEG Audio Decoder 0.15.1 (beta) FPM_64BIT"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "mp4"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "Nero FAAD2"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "ogg"
info [0x564d024aeb50] SoundSourceProxy - 4 (higher) : "Xiph.org OggVorbis"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "okt"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "MODPlug"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "opus"
info [0x564d024aeb50] SoundSourceProxy - 4 (higher) : "Xiph.org libopusfile"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "s3m"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "MODPlug"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "stm"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "MODPlug"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "wav"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "libsndfile"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "wv"
info [0x564d024aeb50] SoundSourceProxy - 4 (higher) : "WavPack"
info [0x564d024aeb50] SoundSourceProxy - 1 (lowest) : "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceProxy - SoundSource providers for file type "xm"
info [0x564d024aeb50] SoundSourceProxy - 3 (default) : "MODPlug"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test.aiff" using provider "libsndfile"
info [0x564d024aeb50] Unable to detect MIME type from file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-alac.caf"
info [0x564d024aeb50] Unable to detect MIME type from file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-alac.caf"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-alac.caf" using provider "libsndfile"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test.flac" using provider "Xiph.org libFLAC"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.3.0-aac.m4a" using provider "Nero FAAD2"
/home/jan/Projects/mixxx/src/test/soundproxy_test.cpp:860: Failure
Expected equality of these values:
  firstSoundSample
    Which is: 1390
  ref.firstSoundSample
    Which is: 1166
/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.3.0-aac.m4a Nero FAAD2
warning [0x564d024aeb50] SoundSourceM4A - Unsupported track type ""
warning [0x564d024aeb50] SoundSourceM4A - Skipping track 1 of 1 in file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-ffmpeg-aac.m4a"
warning [0x564d024aeb50] SoundSourceM4A - No AAC track found: "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-ffmpeg-aac.m4a"
warning [0x564d024aeb50] SoundSourceProxy - Failed to open file "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-ffmpeg-aac.m4a" with provider "Nero FAAD2" using mode Strict
warning [0x564d024aeb50] SoundSourceM4A - Unsupported track type ""
warning [0x564d024aeb50] SoundSourceM4A - Skipping track 1 of 1 in file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-ffmpeg-aac.m4a"
warning [0x564d024aeb50] SoundSourceM4A - No AAC track found: "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-ffmpeg-aac.m4a"
warning [0x564d024aeb50] SoundSourceProxy - Failed to open file "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-ffmpeg-aac.m4a" with provider "Nero FAAD2" using mode Permissive
warning [0x564d024aeb50] SoundSourceProxy - Giving up to open file "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-ffmpeg-aac.m4a" after 2 unsuccessful attempts
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x564d025729c0] stream 0, timescale not set
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-ffmpeg-aac.m4a" using provider "FFmpeg n6.0"
warning [0x564d024aeb50] SoundSourceM4A - Unsupported media data name "alac"
warning [0x564d024aeb50] SoundSourceM4A - Skipping track 1 of 1 in file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.7.0-alac.m4a"
warning [0x564d024aeb50] SoundSourceM4A - No AAC track found: "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.7.0-alac.m4a"
warning [0x564d024aeb50] SoundSourceProxy - Failed to open file "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.7.0-alac.m4a" with provider "Nero FAAD2" using mode Strict
warning [0x564d024aeb50] SoundSourceM4A - Unsupported media data name "alac"
warning [0x564d024aeb50] SoundSourceM4A - Skipping track 1 of 1 in file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.7.0-alac.m4a"
warning [0x564d024aeb50] SoundSourceM4A - No AAC track found: "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.7.0-alac.m4a"
warning [0x564d024aeb50] SoundSourceProxy - Failed to open file "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.7.0-alac.m4a" with provider "Nero FAAD2" using mode Permissive
warning [0x564d024aeb50] SoundSourceProxy - Giving up to open file "file:///home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.7.0-alac.m4a" after 2 unsuccessful attempts
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x564d025729c0] stream 0, timescale not set
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-itunes-12.7.0-alac.m4a" using provider "FFmpeg n6.0"
info [0x564d024aeb50] SoundSourceMp3 - Recoverable MP3 header decoding error: lost synchronization
info [0x564d024aeb50] SoundSourceMp3 - MP3 frame header | layer: 3 mode: 0 #channels: 1 #samples: 18 bitrate: 32000 samplerate: 22050 flags: "0x10c8"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-png.mp3" using provider "MAD: MPEG Audio Decoder 0.15.1 (beta) FPM_64BIT"
info [0x564d024aeb50] SoundSourceMp3 - Recoverable MP3 header decoding error: lost synchronization
info [0x564d024aeb50] SoundSourceMp3 - MP3 frame header | layer: 3 mode: 0 #channels: 1 #samples: 36 bitrate: 40000 samplerate: 44100 flags: "0x0048"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test-vbr.mp3" using provider "MAD: MPEG Audio Decoder 0.15.1 (beta) FPM_64BIT"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test.ogg" using provider "Xiph.org OggVorbis"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test.opus" using provider "Xiph.org libopusfile"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test.wav" using provider "libsndfile"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test.wav" using provider "libsndfile"
info [0x564d024aeb50] Opened file "/home/jan/Projects/mixxx/src/test/id3-test-data/cover-test.wv" using provider "WavPack"
FindTrackIndex: Track id 1 doesn't exist (src/mp4file.cpp,3005)
FindTrackIndex: Track id 1 doesn't exist (src/mp4file.cpp,3005)
[  FAILED  ] SoundSourceProxyTest.firstSoundTest (45 ms)
[----------] 1 test from SoundSourceProxyTest (45 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (45 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] SoundSourceProxyTest.firstSoundTest

 1 FAILED TEST

The log looks like it might be related to FAAD. Here some info about the installed FAAD version on my machine:

$ paru -Qi faad
Name            : faad2
Version         : 2.10.1-1
Description     : Freeware Advanced Audio (AAC) Decoder
Architecture    : x86_64
URL             : https://github.com/knik0/faad2
Licenses        : GPL2
Groups          : None
Provides        : faad  libfaad_drm.so=2-64  libfaad.so=2-64
Depends On      : glibc
Optional Deps   : None
Required By     : gst-plugins-bad  vlc
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 568.19 KiB
Packager        : David Runge <dvzrv@archlinux.org>
Build Date      : Fri 21 Oct 2022 10:48:13 AM CEST
Install Date    : Sun 23 Oct 2022 02:59:04 PM CEST
Install Reason  : Installed as a dependency for another package
Install Script  : No
Validated By    : Signature

Version

OS

Arch Linux

uklotzde commented 1 year ago

There are much more issues with these tests. They don't test all available SoundSources and don't explicitly consider the respective providers (and maybe also their concrete version).

daschuer commented 1 year ago

This is an expected issue, since we do not have "Nero FAAD2" in our CI. We can only learn and fix it on the go. I will issue a pull request.

daschuer commented 1 year ago

It is interesting that testing cover-test-ffmpeg-aac.m4a succeeds. Because the failed first sound value is the same in the broken "Media Foundation 10.0.20348.1". If this would be the same for "cover-test-ffmpeg-aac.m4a" could be a drop in replacement.

And finally a solution for https://github.com/mixxxdj/mixxx/issues/11094. For now I think we should remove the issue from our 2.4 milestone and just carry on.