Python Application Crash Streaming Audiobook on 32-bit Raspberry Pi OS
For details about the original issue, see Mopidy Issue #2030.
When streaming an M4B/AAC audiobook from my Jellyfin server, Mopidy crashes with the following error output while using GStreamer's Python API. While Mopidy crashes and it's no longer to pause playback, playback does start and continue playing indefinitely. There are no problems if the file is downloaded and played back locally.
Nov 29 17:23:30 zero2 mopidy[3743]: INFO [MainThread] mopidy.__main__ Starting Mopidy 3.2.0
Nov 29 17:23:30 zero2 mopidy[3743]: INFO [MainThread] mopidy.config Loading config from builtin defaults
Nov 29 17:23:30 zero2 mopidy[3743]: INFO [MainThread] mopidy.config Loading config from file:///usr/share/mopidy/conf.d/mopidy.conf
Nov 29 17:23:30 zero2 mopidy[3743]: INFO [MainThread] mopidy.config Loading config from file:///etc/mopidy/mopidy.conf
Nov 29 17:23:30 zero2 mopidy[3743]: INFO [MainThread] mopidy.config Loading config from command line options
Nov 29 17:23:30 zero2 mopidy[3743]: WARNING [MainThread] mopidy.config Ignoring config section 'mpd' because no matching extension was found
Nov 29 17:23:31 zero2 mopidy[3743]: INFO [MainThread] mopidy.__main__ Enabled extensions: m3u, softwaremixer, stream, http, jellyfin, file
Nov 29 17:23:31 zero2 mopidy[3743]: INFO [MainThread] mopidy.__main__ Disabled extensions: none
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [MainThread] mopidy.commands Starting Mopidy mixer: SoftwareMixer
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [MainThread] mopidy.commands Mixer volume set to 100
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [MainThread] mopidy.commands Starting Mopidy audio
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [MainThread] mopidy.commands Starting Mopidy backends: JellyfinBackend, FileBackend, M3UBackend, StreamBackend
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [Audio-2] mopidy.audio.actor Audio output set to "audioresample ! audioconvert ! audio/x-raw,rate=48000,channels=2,format=S16LE ! filesink location=/tmp/snapfifo"
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [MainThread] mopidy.commands Starting Mopidy core
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [MainThread] mopidy.commands Starting Mopidy frontends: EventMonitorFrontend, HttpFrontend
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [HttpFrontend-12] mopidy.http.actor HTTP server running at [::]:6680
Nov 29 17:23:32 zero2 mopidy[3743]: INFO [MainThread] mopidy.commands Starting GLib mainloop
Nov 29 17:29:04 zero2 mopidy[3743]: OverflowError: Python int too large to convert to C long
Nov 29 17:29:04 zero2 mopidy[3743]: The above exception was the direct cause of the following exception:
Nov 29 17:29:04 zero2 mopidy[3743]: Traceback (most recent call last):
Nov 29 17:29:04 zero2 mopidy[3743]: File "/usr/lib/python3/dist-packages/mopidy/audio/actor.py", line 212, in on_message
Nov 29 17:29:04 zero2 mopidy[3743]: elif msg.type == Gst.MessageType.BUFFERING:
Nov 29 17:29:04 zero2 mopidy[3743]: SystemError: <built-in method get_value of gi.FieldInfo object at 0x74541608> returned a result with an error set
GStreamer version: 1.18.4
OS: 32-bit Raspberry Pi OS (Debian Bullseye) Note that this issue does not occur when using 64-bit Raspberry Pi OS.
Hardware: Raspberry Pi Zero 2 W, also occurs on Raspberry Pi Compute Module 4
My Jellyfin Server is running on a 64-bit Arm device, if that's important.
I'm not sure which component to file this bug under, so your help is appreciated. Thanks.