https://bugs.kde.org/show_bug.cgi?id=525902

            Bug ID: 525902
           Summary: TagLibExtractor returns wrong/missing audio properties
                    when reused across a bulk scan (Duration missing,
                    Channels wrong)
    Classification: Frameworks and Libraries
           Product: frameworks-kfilemetadata
      Version First 6.30.0
       Reported In:
          Platform: Fedora RPMs
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

Created attachment 196324
  --> https://bugs.kde.org/attachment.cgi?id=196324&action=edit
Elisa Bug Report

Component: kfilemetadata (TagLibExtractor)
Version: kf6-kfilemetadata 6.30.0, taglib 2.3
Platform: Fedora 44 aarch64 (Asahi Remix), Plasma 6, Qt 6.11.2

Problem:

Running Elisa's library scan over a few thousand FLAC files, a lot of them come
back with no Duration/BitRate/SampleRate at all. One file even got a flat-out
wrong value: Sweetbox - Adagio - 1 - Liberty.flac was reported as 4 channels,
but it's plain stereo (confirmed with ffprobe: channels=2).

Running kfilemetadata_dump6 on the exact same file by itself gives correct,
complete results every time. So it's not the file, and it's not a general
TagLib parsing bug - it only shows up when the same extractor keeps getting
reused across many files in one scan.

I checked thread IDs in the debug log and the failures happen even on a single
thread, back to back, so it's not a race between threads either. Looks more
like leftover state from one file's parse bleeding into the next one.

To reproduce:

Point Elisa at a large FLAC library
Run with QT_LOGGING_RULES="org.kde.elisa*=true" and watch the per-file
extraction output
Compare against kfilemetadata_dump6 <file> run standalone on a file that came
back incomplete/wrong in the scan

Expected: same correct output either way.
Actual: bulk scan drops or corrupts properties for a large chunk of the
library; standalone extraction is always correct.

End result on the Elisa side: any file missing Duration fails isValid() and
just silently disappears from the library view, no error shown to the user.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to