================================ SYSTEM ================================

Playing CVE-2021-3643.wav, a very short file, it just sits there
and if you go XXXXXXXXXX it quits.
------------------------------------------------------------------------
Telling spettro to play a non-audio file says "No such file or directory".
------------------------------------------------------------------------
spettro -mp= "Top Hits 2013/audio_08.wav" scrolls backwards for a second,
stopping when it gets to 4.68 seconds earlier than where it should be in.
Without --mute flag it works OK.
------------------------------------------------------------------------
--with-efl --fit says "Revising file length from 9987768 to 9987767 frames"
when the file length is in fact 9987768 frames.

================================== UI ==================================

'p' doesn't pause the audio player. Is thst right?
------------------------------------------------------------------------
Zooming in on the start position makes the start position slip by one pixel
Repeat-by: "spettro -p test/361-samples.ogg" and XXXXXXXXXX (ten Xs)
------------------------------------------------------------------------
Zooming in on the start position fails to refresh some columns
Repeat-by: "spettro -p test/361-samples.ogg" and XXXXXXXX (eight Xs)
------------------------------------------------------------------------
Repeatedly pressing 'B' when viewing a piece that starts quiet and grows
louder brightens the first, quiet part as spettro updates logmax to the
brightest volume found so far, similar to when it starts up.
------------------------------------------------------------------------
Setting the bar lines then going 4 1 doesn't always remove all beat lines.
While playing, when they pass the green line they are cleared properly and
rarely stay on again with another 4 1 sequence.
It says here that the same goes occasionally for the three-pixel-wide bar lines
that should become one pixel wide when pressing 1 but I can't reproduce it.

================================= SDL ==================================

On Fedora with some video cards, SDL fails to initialize saying
    Couldn't get SDL Window Surface: No hardware accelerated renderers available
or
    Couldn't create SDL window: EGL not initialized
gui.c:
-    sdl_renderer = SDL_CreateRenderer(sdl_window, -1, 0);
+    sdl_renderer = SDL_CreateRenderer(sdl_window, -1, SDL_RENDERER_SOFTWARE);
fixes this but it's much slower.

Attempts to initialize it first without SOFTWARE and if that fails with have
failed so far, maybe because we shouldn't use both Renderer and Surface.

------------------------------------------------------------------------
Under Sugar desktop, when told to start fullscreen or when going to
fullscreen, it is minimized (or behind the other windows) and you
have to Alt-Tab to get it visible. EFL doesn't have this problem.
------------------------------------------------------------------------
When told to start minimized, SDL starts up in a normal window
so we have to minimize it explicitly afterwards. This makes it
flash the window onto the screen and disappear when it changes track,
changing the focussed window to the one under the mouse if focus-follows-mouse.
------------------------------------------------------------------------
For when there are multiple displays, see
https://stackoverflow.com/questions/18728821/multiple-displays-in-sdl2
------------------------------------------------------------------------
Running over ssh -X, it bombs out on startup saying:
X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  130 (MIT-SHM)
  Minor opcode of failed request:  1 (X_ShmAttach)
  Serial number of failed request:  214
  Current serial number in output stream:  215
and exiting with status 1.
It's dying inside the first call to SDL_GetWindowSurface().
Issue opened as https://github.com/libsdl-org/SDL/issues/8956
------------------------------------------------------------------------
SDL always turns numlock off on startup but if it was on, the light
remains on so its action appears inverted.
------------------------------------------------------------------------
If you press Ctrl-F to switch to fullscreen and release Ctrl before
it has refreshed (usual case), it continues to think that Ctrl is held
until you press and release it again. SDL1 worked OK.

================================= EFL ==================================

./configure --with-efl; make; ./spettro test/audio.wav
says
    Playing test/audio.wav
    Xlib:  extension "DPMS" missing on display ":0".
then plays the file and, on exit, once said:
CRI<86983>:eina_log ../src/lib/ecore/ecore_thread.c:460 _ecore_direct_worker_cleanup() unknown log domain -1, original message level was: DBG
EINA ERROR: 'Invalid argument' on lock 0x7fc6fdc8e080
Segmentation fault (core dumped)
------------------------------------------------------------------------
Fullscreen mode zooms the requested width and height to screen size
whereas it should go to native desktop resolution.
------------------------------------------------------------------------
Scrolling stutters for half a second after startup
------------------------------------------------------------------------
If you seek back and forth, it sometimes stays in the same place,
jittering and playing random fragments of the audio file.
ith Ctrl-P, "Playing" changes but "player" remains fixed at the lowest
valie that "playing" assumes.
------------------------------------------------------------------------
The green line flickers when playing.
------------------------------------------------------------------------
When starting with -F, it first blacks the top left 640x480
of the screen and then goes fullscreen and repaints.
------------------------------------------------------------------------
At startup in full screen mode, you sometimes get the first few
columns half-refreshed, up to a random height, for a second before it
refreshes properly.
------------------------------------------------------------------------
In autoplay mode, the graphic sometimes jitters back and forth
initially before scrolling smoothly.

================================ AUDIO =================================

libsox on .ogg files plays them at the right pitch but it's twice as
long with a 0.13-second echo. Could be a libsox bug.
------------------------------------------------------------------------
wanda landowska - turkish march (mozart harpsichord.mp3
stops -S at the end.
------------------------------------------------------------------------
spettro plays test/sample1.{8svx} at double speed.
------------------------------------------------------------------------
spettro plays test/sample1.tta at half speed. Opened with libav.
------------------------------------------------------------------------
spettro plays test/sample1.{spx,wv} silent with some clicks or noise bursts.
Opened with libav.
------------------------------------------------------------------------
spettro plays test/sample1.vox silent. Opened with libsndfile.
------------------------------------------------------------------------
spettro plays test/sample1.{maud,oga,ogx} lowered by an octave
but at the right speed. maud,ogx opened with libav, oga with libsndfile.
------------------------------------------------------------------------
libav decoding of speex files returns rubbish even though ffplay and
"ffmpeg -i audio.spx audio.wav" give correct output.
------------------------------------------------------------------------
libav decoding sometimes segfaults (e.g. at the end of Candy Toy.wma
(gdb)
warning: Corrupted shared library list: 0x588d2f20 != 0x0
Core was generated by `spettro 00-194987/04 Candy Toy.wma
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x565d244a in libav_read_frames (af=0x57e082f0, write_to=0x58e8a006, 
    start=9615360, frames_to_read=6643, format=af_signed) at libav.c:316
------------------------------------------------------------------------
When libav seeks, it sometimes leaves a blip of incorrect data.
Verified with crumb-intro.avi and .m4a files. "make check" fails also.
------------------------------------------------------------------------
EFL: if you pause it while playing, press Home to go to the start
of the piece and press Space to play from the start, you get a fragment
of the previous audio before it starts playing the start of the piece.

================================ OTHER =================================

A Dolph window at below 1Hz gives a black screen.
------------------------------------------------------------------------
At startup, it occasionally says "Cannot unlock FFTW3" and dies,
this on 32-bit Debian bookworm.
Called from spectrum.c:49
------------------------------------------------------------------------
spettro -=mpw1000 Unknown 20-358121/audio_05.wav ...
Playing Unknown 20-358121/audio_05.wav
Displays an apparently-OK audio file, then hangs sleeping and unresponsive
to the keyboard. Not repeatable, so probably not the audio file's fault.
gcore and gdb:
warning: Can't open file /SYSV00000000 (deleted) during file-backed mapping note processing
warning: Can't open file anon_inode:i915.gem which was expanded to anon_inode:i915.gem during file-backed mapping note processing
warning: Can't open file /memfd:xshmfence (deleted) during file-backed mapping note processing
[anon_inode:i915.gem message repeated 5 times]
[New LWP 4710]
[New LWP 4747]
[New LWP 4750]
[New LWP 4748]
[New LWP 4752]
[Current thread is 1 (Thread 0xeca507c0 (LWP 4710))]
(gdb) bt
#0  0xf7f34559 in __kernel_vsyscall ()
#1  0xf5e62b82 in ?? () from /lib/i386-linux-gnu/libc.so.6
#2  0xf5dd1565 in ?? () from /lib/i386-linux-gnu/libc.so.6
#3  0xf5dd7049 in ?? () from /lib/i386-linux-gnu/libc.so.6
#4  0xf5dd6f06 in pthread_join () from /lib/i386-linux-gnu/libc.so.6
#5  0xf63c506d in ?? () from /lib/i386-linux-gnu/libSDL2-2.0.so.0
#6  0xf6323f31 in ?? () from /lib/i386-linux-gnu/libSDL2-2.0.so.0
#7  0x565e1936 in stop_scheduler () at schedule.c:249
#8  0x565d4b7a in main (argc=18, argv=0xffefdf14) at main.c:265
