sblantipodi / firefly_luciferin

Very fast Java screen capture PC software designed for the Glow Worm Luciferin firmware, the combination of these software create the perfect Bias Lighting and Ambient Light system for PC.
GNU General Public License v3.0
333 stars 30 forks source link

[Bug]: Unable to start under Fedora with Hyprland #216

Closed sorcererlc closed 3 months ago

sorcererlc commented 3 months ago

Firefly Luciferin version

2.15.4

Glow Worm Luciferin version

5.14.5

Firmware type

FULL

What is the stream method?

WiFi Stream

Fiefly Luciferin config file

---
mqttStream: true
wifiEnable: true
mqttEnable: false
serialPort: "GLOW_WORM_STRAYLIGHT"
staticGlowWormIp: "-"
baudRate: "500000"
extendedLog: "INFO"
audioChannels: "2 channels"
audioDevice: "Default audio output (Native)"
audioLoopbackGain: 0.0
autoDetectBlackBars: true
bottomLeftLed: 8
bottomRightLed: 8
bottomRowLed: 26
brightness: 255
brightnessLimiter: 1.0
captureMethod: "PIPEWIREXDG"
checkForUpdates: true
colorChooser: "255,82,0,255"
colorMode: 1
configVersion: "2.15.4"
defaultLedMatrix: "FullScreen"
desiredFramerate: "90"
effect: "Bias light"
enableLDR: false
eyeCare: false
frameInsertion: "No smoothing"
gamma: 2.2
gapTypeSide: "0%"
gapTypeTopBottom: "8%"
grabberAreaTopBottom: "8%"
grabberSide: "8%"
groupBy: 1
language: "English"
ldrInterval: 0
ldrMin: 0
ldrTurnOff: false
ledStartOffset: 0
leftLed: 10
monitorNumber: 1
mqttDiscoveryTopic: ""
mqttPwd: ""
mqttServer: "tcp://192.168.1.3:1883"
mqttTopic: "glowwormluciferin"
mqttUsername: ""
multiMonitor: 1
multiScreenSingleDevice: false
nightModeBrightness: "0%"
nightModeFrom: "22:00"
nightModeTo: "08:00"
numberOfCPUThreads: 1
orientation: "Clockwise"
osScaling: 100
powerSaving: "Disabled"
rightLed: 10
sampleRate: 0
screenResX: 3440
screenResY: 1440
splitBottomMargin: "15%"
splitBottomRow: true
startWithSystem: true
streamType: "UDP stream"
syncCheck: true
theme: "Dark theme"
threadPriority: "HIGH"
timeout: 100
toggleLed: true
topLed: 24
whiteTemperature: 65
satellites: {}
algo: "Average color"
hueMap:
  CYAN:
    hue: 0.0
    saturation: 0.0
    lightness: 0.0
  BLUE:
    hue: 0.0
    saturation: 0.0
    lightness: 0.0
  YELLOW:
    hue: 0.0
    saturation: 0.0
    lightness: 0.0
  MAGENTA:
    hue: 0.0
    saturation: 0.0
    lightness: 0.0
  GREY:
    hue: 0.0
    saturation: 0.0
    lightness: 0.0
  MASTER:
    hue: 0.0
    saturation: 0.0
    lightness: 0.0
  RED:
    hue: 0.0
    saturation: 0.0
    lightness: 0.0
  GREEN:
    hue: 0.0
    saturation: 0.0
    lightness: 0.0
screenCastRestoreToken: "36f75d08-87e9-4d6d-ad47-8adcb13acc17"
ledMatrix:
  FullScreen:
    1:
      x: 1984
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom right"
    2:
      x: 2166
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom right"
    3:
      x: 2348
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom right"
    4:
      x: 2530
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom right"
    5:
      x: 2712
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom right"
    6:
      x: 2894
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom right"
    7:
      x: 3076
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom right"
    8:
      x: 3258
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom right"
    9:
      x: 3165
      "y": 1199
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    10:
      x: 3165
      "y": 1078
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    11:
      x: 3165
      "y": 957
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    12:
      x: 3165
      "y": 836
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    13:
      x: 3165
      "y": 715
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    14:
      x: 3165
      "y": 594
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    15:
      x: 3165
      "y": 473
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    16:
      x: 3165
      "y": 352
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    17:
      x: 3165
      "y": 231
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    18:
      x: 3165
      "y": 110
      width: 275
      height: 121
      groupedLed: false
      zone: "Right"
    19:
      x: 3293
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    20:
      x: 3150
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    21:
      x: 3007
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    22:
      x: 2864
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    23:
      x: 2721
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    24:
      x: 2578
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    25:
      x: 2435
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    26:
      x: 2292
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    27:
      x: 2149
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    28:
      x: 2006
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    29:
      x: 1863
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    30:
      x: 1720
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    31:
      x: 1577
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    32:
      x: 1434
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    33:
      x: 1291
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    34:
      x: 1148
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    35:
      x: 1005
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    36:
      x: 862
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    37:
      x: 719
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    38:
      x: 576
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    39:
      x: 433
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    40:
      x: 290
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    41:
      x: 147
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    42:
      x: 4
      "y": 0
      width: 143
      height: 115
      groupedLed: false
      zone: "Top"
    43:
      x: 0
      "y": 110
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    44:
      x: 0
      "y": 231
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    45:
      x: 0
      "y": 352
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    46:
      x: 0
      "y": 473
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    47:
      x: 0
      "y": 594
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    48:
      x: 0
      "y": 715
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    49:
      x: 0
      "y": 836
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    50:
      x: 0
      "y": 957
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    51:
      x: 0
      "y": 1078
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    52:
      x: 0
      "y": 1199
      width: 275
      height: 121
      groupedLed: false
      zone: "Left"
    53:
      x: 0
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom left"
    54:
      x: 182
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom left"
    55:
      x: 364
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom left"
    56:
      x: 546
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom left"
    57:
      x: 728
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom left"
    58:
      x: 910
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom left"
    59:
      x: 1092
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom left"
    60:
      x: 1274
      "y": 1325
      width: 182
      height: 115
      groupedLed: false
      zone: "Bottom left"
  Letterbox:
    1:
      x: 1984
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom right"
    2:
      x: 2166
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom right"
    3:
      x: 2348
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom right"
    4:
      x: 2530
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom right"
    5:
      x: 2712
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom right"
    6:
      x: 2894
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom right"
    7:
      x: 3076
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom right"
    8:
      x: 3258
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom right"
    9:
      x: 3165
      "y": 1059
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    10:
      x: 3165
      "y": 973
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    11:
      x: 3165
      "y": 887
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    12:
      x: 3165
      "y": 801
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    13:
      x: 3165
      "y": 715
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    14:
      x: 3165
      "y": 629
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    15:
      x: 3165
      "y": 543
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    16:
      x: 3165
      "y": 457
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    17:
      x: 3165
      "y": 371
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    18:
      x: 3165
      "y": 285
      width: 275
      height: 86
      groupedLed: false
      zone: "Right"
    19:
      x: 3293
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    20:
      x: 3150
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    21:
      x: 3007
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    22:
      x: 2864
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    23:
      x: 2721
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    24:
      x: 2578
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    25:
      x: 2435
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    26:
      x: 2292
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    27:
      x: 2149
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    28:
      x: 2006
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    29:
      x: 1863
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    30:
      x: 1720
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    31:
      x: 1577
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    32:
      x: 1434
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    33:
      x: 1291
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    34:
      x: 1148
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    35:
      x: 1005
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    36:
      x: 862
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    37:
      x: 719
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    38:
      x: 576
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    39:
      x: 433
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    40:
      x: 290
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    41:
      x: 147
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    42:
      x: 4
      "y": 205
      width: 143
      height: 82
      groupedLed: false
      zone: "Top"
    43:
      x: 0
      "y": 285
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    44:
      x: 0
      "y": 371
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    45:
      x: 0
      "y": 457
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    46:
      x: 0
      "y": 543
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    47:
      x: 0
      "y": 629
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    48:
      x: 0
      "y": 715
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    49:
      x: 0
      "y": 801
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    50:
      x: 0
      "y": 887
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    51:
      x: 0
      "y": 973
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    52:
      x: 0
      "y": 1059
      width: 275
      height: 86
      groupedLed: false
      zone: "Left"
    53:
      x: 0
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom left"
    54:
      x: 182
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom left"
    55:
      x: 364
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom left"
    56:
      x: 546
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom left"
    57:
      x: 728
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom left"
    58:
      x: 910
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom left"
    59:
      x: 1092
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom left"
    60:
      x: 1274
      "y": 1153
      width: 182
      height: 82
      groupedLed: false
      zone: "Bottom left"
  Pillarbox:
    1:
      x: 1900
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom right"
    2:
      x: 2025
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom right"
    3:
      x: 2150
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom right"
    4:
      x: 2275
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom right"
    5:
      x: 2400
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom right"
    6:
      x: 2525
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom right"
    7:
      x: 2650
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom right"
    8:
      x: 2775
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom right"
    9:
      x: 2712
      "y": 1201
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    10:
      x: 2712
      "y": 1080
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    11:
      x: 2712
      "y": 959
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    12:
      x: 2712
      "y": 838
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    13:
      x: 2712
      "y": 717
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    14:
      x: 2712
      "y": 596
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    15:
      x: 2712
      "y": 475
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    16:
      x: 2712
      "y": 354
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    17:
      x: 2712
      "y": 233
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    18:
      x: 2712
      "y": 112
      width: 188
      height: 121
      groupedLed: false
      zone: "Right"
    19:
      x: 2798
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    20:
      x: 2700
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    21:
      x: 2602
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    22:
      x: 2504
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    23:
      x: 2406
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    24:
      x: 2308
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    25:
      x: 2210
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    26:
      x: 2112
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    27:
      x: 2014
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    28:
      x: 1916
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    29:
      x: 1818
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    30:
      x: 1720
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    31:
      x: 1622
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    32:
      x: 1524
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    33:
      x: 1426
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    34:
      x: 1328
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    35:
      x: 1230
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    36:
      x: 1132
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    37:
      x: 1034
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    38:
      x: 936
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    39:
      x: 838
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    40:
      x: 740
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    41:
      x: 642
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    42:
      x: 544
      "y": 0
      width: 98
      height: 115
      groupedLed: false
      zone: "Top"
    43:
      x: 540
      "y": 112
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    44:
      x: 540
      "y": 233
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    45:
      x: 540
      "y": 354
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    46:
      x: 540
      "y": 475
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    47:
      x: 540
      "y": 596
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    48:
      x: 540
      "y": 717
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    49:
      x: 540
      "y": 838
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    50:
      x: 540
      "y": 959
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    51:
      x: 540
      "y": 1080
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    52:
      x: 540
      "y": 1201
      width: 188
      height: 121
      groupedLed: false
      zone: "Left"
    53:
      x: 540
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom left"
    54:
      x: 665
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom left"
    55:
      x: 790
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom left"
    56:
      x: 915
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom left"
    57:
      x: 1040
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom left"
    58:
      x: 1165
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom left"
    59:
      x: 1290
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom left"
    60:
      x: 1415
      "y": 1325
      width: 125
      height: 115
      groupedLed: false
      zone: "Bottom left"

Relevant log output

[Instance #1] 2024-07-31 11:55:44,710 INFO o.d.FireflyLuciferin [main] Starting default instance
[Instance #1] 2024-07-31 11:55:45,259 INFO o.d.FireflyLuciferin [JavaFX Application Thread] ** Log level -> INFO **
[Instance #1] 2024-07-31 11:55:46,379 INFO o.d.m.UpgradeManager [JavaFX Application Thread] Checking for Firefly Luciferin Update
[Instance #1] 2024-07-31 11:55:46,946 INFO o.d.FireflyLuciferin [JavaFX Application Thread] MQTT disabled.
[Instance #1] 2024-07-31 11:55:46,950 INFO o.d.n.t.UdpServer [JavaFX Application Thread] Local IP= 192.168.52.100
[Instance #1] 2024-07-31 11:55:46,952 INFO o.d.n.t.UdpServer [JavaFX Application Thread] Network adapter in use=enp5s0
[Instance #1] 2024-07-31 11:55:46,952 INFO o.d.n.t.UdpServer [JavaFX Application Thread] Broadcast address found=/192.168.52.255
[Instance #1] 2024-07-31 11:55:46,955 INFO o.d.g.ImageProcessor [JavaFX Application Thread] GStreamer path in use=opt/fireflyluciferin/lib/app/classes
[Instance #1] 2024-07-31 11:55:47,937 INFO o.d.m.DisplayManager [JavaFX Application Thread] Width: 1280.0 Height: 400.0 Scaling: 1.0 MinX: 3440.0 MinY: 0.0
[Instance #1] 2024-07-31 11:55:47,937 INFO o.d.m.DisplayManager [JavaFX Application Thread] Width: 3440.0 Height: 1440.0 Scaling: 1.0 MinX: 0.0 MinY: 0.0
[Instance #1] 2024-07-31 11:56:06,946 INFO o.d.m.UpgradeManager [pool-5-thread-1] Checking for Glow Worm Luciferin Update

How to reproduce

First, it should be noted that I also have KDE on this machine, also running a Wayland session, and it starts and runs just fine.

Steps under Hyprland:

  1. Run /opt/fireflyluciferin/bin/FireflyLuciferin in a terminal
  2. Screen capture permission dialog pops up
  3. Allow screen capture
  4. Nothing more happens from a UI perspective

The executable outputs the following to the terminal

[Instance #1] 11:55:44.710 [main] INFO org.dpsoftware.FireflyLuciferin - Starting default instance Jul 31, 2024 11:55:44 AM com.sun.javafx.application.PlatformImpl startup WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @309e345f' [Instance #1] 11:55:45.259 [JavaFX Application Thread] INFO org.dpsoftware.FireflyLuciferin - Log level -> INFO [Instance #1] 11:55:46.379 [JavaFX Application Thread] INFO o.dpsoftware.managers.UpgradeManager - Checking for Firefly Luciferin Update [Instance #1] 11:55:46.946 [JavaFX Application Thread] INFO org.dpsoftware.FireflyLuciferin - MQTT disabled. [Instance #1] 11:55:46.950 [JavaFX Application Thread] INFO o.d.network.tcpUdp.UdpServer - Local IP= 192.168.52.100 [Instance #1] 11:55:46.952 [JavaFX Application Thread] INFO o.d.network.tcpUdp.UdpServer - Network adapter in use=enp5s0 [Instance #1] 11:55:46.952 [JavaFX Application Thread] INFO o.d.network.tcpUdp.UdpServer - Broadcast address found=/192.168.52.255 UDP broadcast listen on /0:0:0:0:0:0:0:0 [Instance #1] 11:55:46.955 [JavaFX Application Thread] INFO o.dpsoftware.grabber.ImageProcessor - GStreamer path in use=opt/fireflyluciferin/lib/app/classes Exception in Application start method [Instance #1] 11:55:47.937 [JavaFX Application Thread] INFO o.dpsoftware.managers.DisplayManager - Width: 1280.0 Height: 400.0 Scaling: 1.0 MinX: 3440.0 MinY: 0.0 [Instance #1] 11:55:47.937 [JavaFX Application Thread] INFO o.dpsoftware.managers.DisplayManager - Width: 3440.0 Height: 1440.0 Scaling: 1.0 MinX: 0.0 MinY: 0.0

Then it repeats these two lines 105 times

check_group_uucp(): error testing lock file creation Error details:Permission deniedcheck_lock_status: No permission to create lock file. FAILED TO OPEN: No such file or directory

And it ends with this

(FireflyLuciferin:25037): Gdk-WARNING **: 11:55:48.074: XSetErrorHandler() called with a GDK error trap pushed. Don't do that. Exception in thread "main" java.lang.RuntimeException: Exception in Application start method at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:893) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196) at java.base/java.lang.Thread.run(Unknown Source) Caused by: org.freedesktop.dbus.exceptions.DBusExecutionException: Sources not selected at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(Unknown Source) at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Unknown Source) at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source) at org.freedesktop.dbus.messages.Error.getException(Error.java:111) at org.freedesktop.dbus.messages.Error.throwException(Error.java:138) at org.freedesktop.dbus.RemoteInvocationHandler.executeRemoteMethod(RemoteInvocationHandler.java:237) at org.freedesktop.dbus.RemoteInvocationHandler.executeRemoteMethod(RemoteInvocationHandler.java:250) at org.freedesktop.dbus.RemoteInvocationHandler.executeRemoteMethod(RemoteInvocationHandler.java:153) at org.freedesktop.dbus.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:97) at jdk.proxy2/jdk.proxy2.$Proxy12.Start(Unknown Source) at org.dpsoftware.managers.PipelineManager.getXdgStreamDetails(PipelineManager.java:144) at org.dpsoftware.managers.PipelineManager.getLinuxPipelineParams(PipelineManager.java:167) at org.dpsoftware.grabber.GrabberManager.launchAdvancedGrabber(GrabberManager.java:108) at org.dpsoftware.FireflyLuciferin.launchGrabberAndConsumers(FireflyLuciferin.java:324) at org.dpsoftware.FireflyLuciferin.start(FireflyLuciferin.java:283) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:839) at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:483) at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:456) at java.base/java.security.AccessController.doPrivileged(Unknown Source) at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:455) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method) at com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$10(GtkApplication.java:264) ... 1 more [Instance #1] 11:56:06.946 [pool-5-thread-1] INFO o.dpsoftware.managers.UpgradeManager - Checking for Glow Worm Luciferin Update

sblantipodi commented 3 months ago

Hi @sorcererlc, welcome back, I appreciate that you are using Luciferin on "other platforms".

I'll try to reproduce it and fix it when possible.

Can you try to run Luciferin as a root user to see if the situation improves please? Thanks

sorcererlc commented 3 months ago

I tried running as root and I got no UI activity. It just crashed with this message:

[Instance #1] 12:44:23.756 [main] INFO org.dpsoftware.FireflyLuciferin - Starting default instance Jul 31, 2024 12:44:23 PM com.sun.javafx.application.PlatformImpl startup WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @309e345f' Authorization required, but no authorization protocol specified

Authorization required, but no authorization protocol specified

Exception in thread "main" java.lang.UnsupportedOperationException: Unable to open DISPLAY at com.sun.glass.ui.gtk.GtkApplication.lambda$new$5(GtkApplication.java:165) at java.base/java.security.AccessController.doPrivileged(Unknown Source) at com.sun.glass.ui.gtk.GtkApplication.(GtkApplication.java:163) at com.sun.glass.ui.gtk.GtkPlatformFactory.createApplication(GtkPlatformFactory.java:40) at com.sun.glass.ui.Application.run(Application.java:145) at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:290) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:292) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:162) at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:651) at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:671) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196) at java.base/java.lang.Thread.run(Unknown Source)

PS: I realize that my setup is sort of niche so I'm more than happy to run any tests you might need to identify the source of this issue :)

sblantipodi commented 3 months ago

Running Hyprland inside a VM has nearly no sense for this purpose. Running it natively requires more time for me so I can't comment a lot on this at the moment.

Are you running one of the compiled binaries or did you compiled it by yourself?

PS: I realize that my setup is sort of niche

and this is why I like your issues, thanks for spending time testing Luciferin on that niche setups ;)

sorcererlc commented 3 months ago

I am running compiled binaries. I installed the .rpm release from Github.

thanks for spending time testing Luciferin on that niche setups ;) My pleasure :)

I could run more tests with a modified binary that dumps more info to logs if you have time to set up something like that and if you think it would help.

sblantipodi commented 3 months ago

it could help... log level can be set in the FireflyLucifrerin.yaml config file, you can find it in the ~Documents/FireflyLuciferin folder. just set this: extendedLog: "INFO" to this: extendedLog: "TRACE" and restart the app.

are you using an Nvidia/AMD/Intel GPU? is the video drivers correctly installed?

Luciferin does not work well when GPU drivers "are uncertain".

sorcererlc commented 3 months ago

I ran it with log level trace and attached the log file. I got the same error in the terminal but now I am seeing what seems to be communication between Luciferin and GlowWorm.

FireflyLuciferin.log

I also got a notification about a new version so something about the UI does work. I updated to 2.16.4 and it behaves the same as 2.15.4. I have attached the log generated after the update.

FireflyLuciferin_after_update.log

I am running an Nvidia 3080 GPU with the proprietary driver installed and Nouveau explicitly disabled.

sorcererlc commented 3 months ago

I have an interesting update. I got the idea to try running Luciferin on a laptop running Arch and Hyprland and see what it does on that machine since it's almost the same setup I have on my Fedora machine but it's not a bloated mess yet :)

I unpacked the .rpm release and ran the binary. The first time I ran it, it rendered the main UI and I was able to set up the LEDs. I left everything else as default. On subsequent tries it didn't render the main UI anymore (same as #201 ) but it did display dialogs asking me to select the Pipewire source and to notify me of a Glow Worm update. I assume the main window is not displayed on purpose but since it doesn't create a tray icon (something I also noticed on Fedora/KDE) I can't open it again after the initial launch. However, screen capture over Pipewire worked as expected.

After that I came back to the Fedora machine, renamed the config directory, started Luciferin again and saw the same behavior from the Arch machine. I was able to configure the LEDs and everything else and after that it worked just fine. Very weird since the new config file it generated looks identical to the old one except for a few settings I had changed before like setting the frame rate to 90 and disabling power saving.

sblantipodi commented 3 months ago

Hi @sorcererlc, thanks for sponsoring the project and for your continued help in testing Luciferin on exotic systems, I really appreciate it. :) very very weird, I still need to try to reproduce it... please share any other findings in the #201, if any...

I haven't understood one thing, did you seleted the screen you want to capture and then clicked the "share" button in the dialog that asks for it?

thanks!

sorcererlc commented 3 months ago

thanks for the sponsoring the project and for your continued help in testing Luciferin on exotic systems

My pleasure. I've been using Luciferin for several years now and I really like it so I thought I would help a little in return :)

did you seleted the screen you want to capture and then clicked the "share" button in the dialog that asks for it?

No, I just selected the screen and checked "Allow restore token" or whatever it was called. I didn't see a "Share" button anyway.

This is what the screen selection dialog looks like for me: image

sblantipodi commented 3 months ago

there should be some problems in the Pipewire token creation once you allow the screen capture. I'll add some debug logs on that part to help discover the problem... thanks for the infos 👍