Bug 415180 - Elisa not detecting music
Summary: Elisa not detecting music
Status: RESOLVED FIXED
Alias: None
Product: Elisa
Classification: Applications
Component: general (show other bugs)
Version: 19.12.0
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: Matthieu Gallien
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-12-14 23:45 UTC by poperigby
Modified: 2020-01-22 21:58 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Terminal output when running Elisa (3.09 KB, text/plain)
2019-12-14 23:45 UTC, poperigby
Details
Terminal output when running Elisa w/ QT_LOGGING_RULES="*.elisa.*=true" (17.72 KB, text/plain)
2019-12-15 20:13 UTC, poperigby
Details

Note You need to log in before you can comment on or make changes to this bug.
Description poperigby 2019-12-14 23:45:40 UTC
Created attachment 124492 [details]
Terminal output when running Elisa

SUMMARY
Elisa not detecting music

STEPS TO REPRODUCE
1. Open Elisa
2. Wait for Elisa to try and detect music from ~/Music

OBSERVED RESULT
Elisa's list of songs stays empty

EXPECTED RESULT
Elisa's list of songs is populated with tracks from the ~/Music directory.

SOFTWARE/OS VERSIONS
Linux: 5.4.2-arch1-1
KDE Plasma Version: 5.17.5
KDE Frameworks Version: 5.64.0
Qt Version: 5.13.2

ADDITIONAL INFORMATION
I tried disabling and enabling baloo to no avail.
Comment 1 Matthieu Gallien 2019-12-15 19:47:36 UTC
Thanks for the report. Thanks for taking time to fix this issue.

Could you please post another log but with the following environment variable set:

QT_LOGGING_RULES="*.elisa.*=true"

That will activate much more log and will help understand what is going on.
Comment 2 poperigby 2019-12-15 20:13:57 UTC
Created attachment 124514 [details]
Terminal output when running Elisa w/ QT_LOGGING_RULES="*.elisa.*=true"
Comment 3 Matthieu Gallien 2019-12-16 16:21:36 UTC
(In reply to poperigby from comment #2)
> Created attachment 124514 [details]
> Terminal output when running Elisa w/ QT_LOGGING_RULES="*.elisa.*=true"

Thanks for the data.

It looks like you have tracks without title metadata. Do you know if this is correct ?

I have a work in progress merge request about that. I will restart work on it and keep you informed.
Comment 4 poperigby 2019-12-16 16:25:41 UTC
(In reply to Matthieu Gallien from comment #3)
> It looks like you have tracks without title metadata. Do you know if this is
> correct ?

That would make sense. I got them using `youtube-dl`.
Comment 5 Matthieu Gallien 2019-12-19 12:30:41 UTC
(In reply to poperigby from comment #4)
> (In reply to Matthieu Gallien from comment #3)
> > It looks like you have tracks without title metadata. Do you know if this is
> > correct ?
> 
> That would make sense. I got them using `youtube-dl`.

A still not finished work in progress merge request to address exactly that:
https://invent.kde.org/kde/elisa/merge_requests/13

I will keep you informed when this work can be tested.
Comment 6 Matthieu Gallien 2019-12-21 20:39:59 UTC
(In reply to Matthieu Gallien from comment #5)
> (In reply to poperigby from comment #4)
> > (In reply to Matthieu Gallien from comment #3)
> > > It looks like you have tracks without title metadata. Do you know if this is
> > > correct ?
> > 
> > That would make sense. I got them using `youtube-dl`.
> 
> A still not finished work in progress merge request to address exactly that:
> https://invent.kde.org/kde/elisa/merge_requests/13
> 
> I will keep you informed when this work can be tested.

The merge request is ready to be tested.

If you can test it, I would be really interested to know more about the result.
Comment 7 poperigby 2019-12-21 21:35:19 UTC
(In reply to Matthieu Gallien from comment #6)
> (In reply to Matthieu Gallien from comment #5)
> > (In reply to poperigby from comment #4)
> > > (In reply to Matthieu Gallien from comment #3)
> > > > It looks like you have tracks without title metadata. Do you know if this is
> > > > correct ?
> > > 
> > > That would make sense. I got them using `youtube-dl`.
> > 
> > A still not finished work in progress merge request to address exactly that:
> > https://invent.kde.org/kde/elisa/merge_requests/13
> > 
> > I will keep you informed when this work can be tested.
> 
> The merge request is ready to be tested.
> 
> If you can test it, I would be really interested to know more about the
> result.

How do I test it?
Comment 8 Matthieu Gallien 2019-12-22 10:00:52 UTC
(In reply to poperigby from comment #7)
> (In reply to Matthieu Gallien from comment #6)
> > (In reply to Matthieu Gallien from comment #5)
> > > (In reply to poperigby from comment #4)
> > > > (In reply to Matthieu Gallien from comment #3)
> > > > > It looks like you have tracks without title metadata. Do you know if this is
> > > > > correct ?
> > > > 
> > > > That would make sense. I got them using `youtube-dl`.
> > > 
> > > A still not finished work in progress merge request to address exactly that:
> > > https://invent.kde.org/kde/elisa/merge_requests/13
> > > 
> > > I will keep you informed when this work can be tested.
> > 
> > The merge request is ready to be tested.
> > 
> > If you can test it, I would be really interested to know more about the
> > result.
> 
> How do I test it?

Are you able to build from source ?

In case yes, you can do the following:

1) go to this URL https://invent.kde.org/kde/elisa/merge_requests/13
2) click on the "Checkout branch" button and do the first step
*) git fetch "git@invent.kde.org:mgallien/elisa.git" "insertNoMetadataTracks"
*) git checkout -b "mgallien/elisa-insertNoMetadataTracks" FETCH_HEAD
3) do a normal build from source (as explained here https://community.kde.org/Elisa)
4) execute the locally built version

In case no, somebody else will test and provide feedback. No worry.
Comment 9 poperigby 2019-12-22 20:25:48 UTC
I compiled it from source and it seems to be working now. I did get a few messages in my terminal when I ran it, but they don't seem to be affecting the functionality.

qrc:/qml/NavigationActionBar.qml:248:32: Invalid property assignment: string expected - Assigning null to incompatible properties in QML is deprecated. This will become a compile error in future versions of Qt.
<Unknown File>: QML QQuickLayoutAttached: Binding loop detected for property "preferredHeight"
org.kde.elisa.indexers.manager: Local file system indexer is inactive
org.kde.elisa.indexers.manager: Baloo indexer is unavailable
org.kde.elisa.indexers.manager: Baloo indexer is inactive
org.kde.elisa.database: begin creation of DatabaseVersion table
MediaPlayList::setPersistentState QMap(("currentTrack", QVariant(int, 0))("playList", QVariant(QVariantList, ()))("randomPlay", QVariant(bool, false))("repeatPlay", QVariant(bool, false)))
org.kde.elisa.indexers.manager: Baloo indexer is available
org.kde.elisa.indexers.manager: Baloo indexer is active
org.kde.elisa.indexers.manager: trigger init of baloo file indexer
org.kde.elisa.database: tracksAdded 2
qrc:/qml/ContextView.qml:148:21: Unable to assign [undefined] to QString
Comment 10 Matthieu Gallien 2019-12-22 21:29:22 UTC
(In reply to poperigby from comment #9)
> I compiled it from source and it seems to be working now. I did get a few
> messages in my terminal when I ran it, but they don't seem to be affecting
> the functionality.
> 
> qrc:/qml/NavigationActionBar.qml:248:32: Invalid property assignment: string
> expected - Assigning null to incompatible properties in QML is deprecated.
> This will become a compile error in future versions of Qt.
> <Unknown File>: QML QQuickLayoutAttached: Binding loop detected for property
> "preferredHeight"
> org.kde.elisa.indexers.manager: Local file system indexer is inactive
> org.kde.elisa.indexers.manager: Baloo indexer is unavailable
> org.kde.elisa.indexers.manager: Baloo indexer is inactive
> org.kde.elisa.database: begin creation of DatabaseVersion table
> MediaPlayList::setPersistentState QMap(("currentTrack", QVariant(int,
> 0))("playList", QVariant(QVariantList, ()))("randomPlay", QVariant(bool,
> false))("repeatPlay", QVariant(bool, false)))
> org.kde.elisa.indexers.manager: Baloo indexer is available
> org.kde.elisa.indexers.manager: Baloo indexer is active
> org.kde.elisa.indexers.manager: trigger init of baloo file indexer
> org.kde.elisa.database: tracksAdded 2
> qrc:/qml/ContextView.qml:148:21: Unable to assign [undefined] to QString

Thanks for the feedback. That is really appreciated.
Comment 11 poperigby 2019-12-22 21:41:36 UTC
No problem. I hope what I provided was helpful.
Comment 12 poperigby 2020-01-10 01:38:45 UTC
It still doesn't seem to be fixed in version 19.12.1-1
Comment 13 Matthieu Gallien 2020-01-22 21:58:22 UTC
Git commit 0c042a86095fdf8550ca1211dd9d5db73156b34b by Matthieu Gallien.
Committed on 22/01/2020 at 21:38.
Pushed by mgallien into branch 'release/19.12'.

allow database to contain and get tracks without metadata

display only the filename

I plan to add on top the work done by astippich that uses a sligthly
different approach

the tests are KO

the tracks without metadata are imported again and again. Needs fixing.

use url everywhere we refer to tracks or radios

allow to handle tracks without databaseId like the case of a track
without metadata

M  +72   -2    autotests/databaseinterfacetest.cpp
M  +131  -93   src/databaseinterface.cpp
M  +2    -1    src/models/alltracksproxymodel.cpp
M  +23   -0    src/models/datamodel.cpp
M  +45   -41   src/qml/DataListView.qml
M  +1    -1    src/qml/FileBrowserView.qml
M  +2    -0    src/qml/GridBrowserDelegate.qml
M  +1    -0    src/qml/GridBrowserView.qml
M  +14   -13   src/qml/ListBrowserDelegate.qml
M  +2    -5    src/qml/ListBrowserView.qml
M  +5    -8    src/qml/MediaTrackMetadataView.qml
M  +0    -1    src/qml/PlayListEntry.qml

https://invent.kde.org/kde/elisa/commit/0c042a86095fdf8550ca1211dd9d5db73156b34b