To make Fenrir easier to approach for new developer, start code migration to be pep8 compliant.

This commit is contained in:
Storm Dragon
2025-07-01 22:23:50 -04:00
parent 4bcf82178e
commit 7408951152
345 changed files with 8688 additions and 3852 deletions

View File

@ -5,7 +5,8 @@
# By Chrys, Storm Dragon, and contributers.
from fenrirscreenreader.core import debug
import time, threading
import time
import threading
from fenrirscreenreader.core.soundDriver import soundDriver
_gstreamerAvailable = False
@ -19,19 +20,21 @@ except Exception as e:
_gstreamerAvailable = False
_availableError = str(e)
class driver(soundDriver):
def __init__(self):
soundDriver.__init__(self)
self._source = None
self._sink = None
def initialize(self, environment):
self.env = environment
global _gstreamerAvailable
self._initialized = _gstreamerAvailable
if not self._initialized:
global _availableError
self.environment['runtime']['debug'].writeDebugOut('Gstreamer not available ' + _availableError,debug.debugLevel.ERROR)
self.environment['runtime']['debug'].writeDebugOut(
'Gstreamer not available ' + _availableError, debug.debugLevel.ERROR)
return
self._player = Gst.ElementFactory.make('playbin', 'player')
bus = self._player.get_bus()
@ -59,28 +62,33 @@ class driver(soundDriver):
self.mainloop.quit()
# Wait for the GLib MainLoop thread to finish to prevent shutdown races
if hasattr(self, 'thread') and self.thread.is_alive():
self.thread.join(timeout=2.0) # 2 second timeout to prevent hanging
# 2 second timeout to prevent hanging
self.thread.join(timeout=2.0)
def _onPlayerMessage(self, bus, message):
if not self._initialized:
return
return
if message.type == Gst.MessageType.EOS:
self._player.set_state(Gst.State.NULL)
elif message.type == Gst.MessageType.ERROR:
self._player.set_state(Gst.State.NULL)
error, info = message.parse_error()
self.env['runtime']['debug'].writeDebugOut('GSTREAMER: _onPlayerMessage'+ str(error) + str(info),debug.debugLevel.WARNING)
self.env['runtime']['debug'].writeDebugOut(
'GSTREAMER: _onPlayerMessage' + str(error) + str(info),
debug.debugLevel.WARNING)
def _onPipelineMessage(self, bus, message):
if not self._initialized:
return
return
if message.type == Gst.MessageType.EOS:
self._pipeline.set_state(Gst.State.NULL)
elif message.type == Gst.MessageType.ERROR:
self._pipeline.set_state(Gst.State.NULL)
error, info = message.parse_error()
self.env['runtime']['debug'].writeDebugOut('GSTREAMER: _onPipelineMessage'+ str(error) + str(info),debug.debugLevel.WARNING)
self.env['runtime']['debug'].writeDebugOut(
'GSTREAMER: _onPipelineMessage' + str(error) + str(info),
debug.debugLevel.WARNING)
def _onTimeout(self, element):
if not self._initialized:
return
@ -95,7 +103,12 @@ class driver(soundDriver):
self._player.set_property('uri', 'file://%s' % fileName)
self._player.set_state(Gst.State.PLAYING)
def playFrequence(self, frequence, duration, adjustVolume = 0.0, interrupt=True):
def playFrequence(
self,
frequence,
duration,
adjustVolume=0.0,
interrupt=True):
if not self._initialized:
return
if interrupt: