Skip to content

Commit 11cc06f

Browse files
committed
Adding additional logging for Preference hardware decoder testing
1 parent a417cac commit 11cc06f

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

src/windows/preferences.py

+15-5
Original file line numberDiff line numberDiff line change
@@ -297,11 +297,13 @@ def Populate(self, filter=""):
297297
value_list.remove(value_item)
298298

299299
# Remove hardware mode items which cannot decode the example video
300+
log.debug("Preparing to test hardware decoding: %s" % (value_list))
300301
for value_item in list(value_list):
301302
v = value_item["value"]
302-
if not self.testHardwareDecode(v, 0) and \
303-
not self.testHardwareDecode(v, 1):
303+
if not self.testHardwareDecode(value_list, v, 0) and \
304+
not self.testHardwareDecode(value_list, v, 1):
304305
value_list.remove(value_item)
306+
log.debug("Completed hardware decoding testing")
305307

306308
# Replace %s dropdown values for hardware acceleration
307309
if param["setting"] in ("graca_number_en", "graca_number_de"):
@@ -536,10 +538,11 @@ def dropdown_index_changed(self, widget, param, index):
536538
# Check for restart
537539
self.check_for_restart(param)
538540

539-
def testHardwareDecode(self, decoder, decoder_card="0"):
541+
def testHardwareDecode(self, all_decoders, decoder, decoder_card="0"):
540542
"""Test specific settings for hardware decode, so the UI can remove unsupported options."""
541543
is_supported = False
542544
example_media = os.path.join(info.RESOURCES_PATH, "hardware-example.mp4")
545+
decoder_name = next(item for item in all_decoders if item["value"] == str(decoder)).get("name", "Unknown")
543546

544547
# Persist decoder card results
545548
if decoder_card not in self.hardware_tests_cards:
@@ -552,6 +555,9 @@ def testHardwareDecode(self, decoder, decoder_card="0"):
552555
# Keep track of previous settings
553556
current_decoder = openshot.Settings.Instance().HARDWARE_DECODER
554557
current_decoder_card = openshot.Settings.Instance().HW_DE_DEVICE_SET
558+
current_decoder_name = \
559+
next(item for item in all_decoders if item["value"] == str(current_decoder)).get("name", "Unknown")
560+
log.debug("Current hardware decoder: %s (%s-%s)" % (current_decoder_name, current_decoder, current_decoder_card))
555561

556562
try:
557563
# Temp override hardware settings (to test them)
@@ -566,17 +572,21 @@ def testHardwareDecode(self, decoder, decoder_card="0"):
566572
reader.Open()
567573

568574
# Test decoded pixel values for a valid decode (based on hardware-example.mp4)
575+
log.debug("Testing hardware decoder: %s (%s-%s)" % (decoder_name, decoder, decoder_card))
569576
if reader.GetFrame(0).CheckPixel(0, 0, 2, 133, 255, 255, 5):
570577
is_supported = True
571578
self.hardware_tests_cards[decoder_card].append(int(decoder))
579+
log.debug("Successful hardware decoder! %s (%s-%s)" % (decoder_name, decoder, decoder_card))
572580
else:
573-
log.warning("CheckPixel failed testing hardware decoding in preferences (i.e. wrong color found): %s-%s" % (decoder, decoder_card))
581+
log.debug("CheckPixel failed testing hardware decoding (i.e. wrong color found): %s (%s-%s)" %
582+
(decoder_name, decoder, decoder_card))
574583

575584
reader.Close()
576585
clip.Close()
577586

578587
except:
579-
log.warning("Exception trying to test hardware decoding in preferences (this is expected): %s-%s" % (decoder, decoder_card))
588+
log.debug("Exception trying to test hardware decoding (this is expected): %s (%s-%s)" %
589+
(decoder_name, decoder, decoder_card))
580590

581591
# Resume current settings
582592
openshot.Settings.Instance().HARDWARE_DECODER = current_decoder

0 commit comments

Comments
 (0)