On Sat, Dec 09, 2023 at 08:35:34PM +0100, tlaro...@kergis.com wrote: > At least xine(1) and vlc(1) crashes, in various circumstances (xine(1) > directly if invoked without argument; vlc(1) when trying to read a > dvd) but the failure in both cases comes from MesaLib, gallium, > namely, in MesaLib sources: > > src/gallium/auxiliary/vl/vl_mpeg12_decoder.c > > There are functions (not procedures) but treated like procedures i.e. > the return value is in fact ignored, taken as granted with assertions > being used to catch the failing cases by aborting. > > And it aborts. > > The problem is that a buffer is initted (guessing by the names), > from samples. 3 planes are expected (a guess once more: red, > green, blue in whatever order) but in my case there is only sample (one > plane). > > => My screen has pixel depth = 16 bits stored in 2 bytes. > XXX I should try if going 24 bits exhibit the problem or not... > >[...]
Switching to 24 bits doesn't circumvent the problem but there is a difference in behavior: At the moment: - xine(1) crashes at whatever depth when invoked without argument because it tries to display the logo: "xine --no-logo" passes this and doesn't crash at least then. If invoked with a mp4 file: at 16bits, sound is here but no image; at 24 bits, rendering... In all cases, unable to play a DVD (crashes): bug in MesaLib/gallium, at least with radeon r600 driver; - vlc(1): doesn't crash when invoked without argument. Renders mp4 at whatever depth (16 bits or 24 bits). Unable to play a DVD (crashes): bug in MesaLib/gallium, at least with radeon r600 driver; - ogle(1): able to play a DVD since it doesn't use "new" stuff... -- Thierry Laronde <tlaronde +AT+ kergis +dot+ com> http://www.kergis.com/ http://kertex.kergis.com/ Key fingerprint = 0FF7 E906 FBAF FE95 FD89 250D 52B1 AE95 6006 F40C