Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 5 123 ... LastLast
Results 1 to 10 of 48
  1. #1
    Senior Member
    Join Date
    Aug 2012
    Location
    Austria
    Posts
    736

    [Announce] Essentia Integration - music classification (moods, genres, ...)

    Essentia is a music analysis framework, capable of (among lots of other things) statistical classification of music (e.g. by moods, genres, danceability, timbre, ...)

    The Essentia Integration plugin enables importing Essentia's results into the LMS database, making them available to be used by LMS-based applications / plugins (currently, extGUI4LMS and the LMS Playlist Editor).

    Details and installation / usage instructions can be found on the homepage.

  2. #2
    Senior Member
    Join Date
    Apr 2013
    Location
    UK
    Posts
    1,178
    I like this very much.........!


    Transcoded from Matt's brain by Tapatalk
    --
    Hardware: 3x Touch, 1x Radio, 2x Receivers, 1 HP Microserver NAS with Debian+LMS 7.9.0
    Music: ~1300 CDs, as 450 GB of 16/44k FLACs. No less than 3x 24/44k albums..

  3. #3
    Junior Member
    Join Date
    Sep 2017
    Location
    ┼kersberga, Sweden
    Posts
    18

    error message in process ste SVM models: Unable to load library icui18n

    Hi,
    I'm analyzing my flac collection using the LMS Essentia software, but I am a bit confused about an error message that appears for every file. I'm running the software on an x86_64 linux Mint 18 machine, accessing the music files via an NFS mount. Since I have 24000 flac files I decided to separate the analysis and the upload so I can check the results before I submit it to the LMS database. Here's the command line:
    ./ess-analyze.sh -o analyze -s "s#/network/music#/local/volfram1/wav#" -v -j /home/byjo/bin/essentia/jsons -m /network/music/Filmmusik

    Here's the console output for a flac file:

    Code:
    Writing results to file /home/byjo/bin/essentia/jsons/_local_volfram1_wav_Klassisk_Rachmaninov - Piano Concertos Nos. 2 and 3; Prelude in E flat etc (192-24)_07-Prelude in E flat, Op.23, No.6.flac.json.tmp
    Process step: Read metadata
    Process step: Compute md5 audio hash and codec
    Process step: Replay gain
    [   INFO   ] On connection Resample::signal → Trimmer::signal:
    [   INFO   ] BUFFER SIZE MISMATCH: max=2248 - asked for read size 4096
    [   INFO   ] resizing buffer to 36040/4505
    Process step: Compute audio features
    [   INFO   ] On connection Resample::signal → Trimmer::signal:
    [   INFO   ] BUFFER SIZE MISMATCH: max=2248 - asked for read size 4096
    [   INFO   ] resizing buffer to 36040/4505
    [   INFO   ] On connection Resample::signal → Trimmer::signal:
    [   INFO   ] BUFFER SIZE MISMATCH: max=2248 - asked for read size 4096
    [   INFO   ] resizing buffer to 36040/4505
    Process step: Compute aggregation
    adding SVM model: /home/byjo/bin/svm_models/genre_tzanetakis.history
    adding SVM model: /home/byjo/bin/svm_models/genre_dortmund.history
    adding SVM model: /home/byjo/bin/svm_models/genre_electronic.history
    adding SVM model: /home/byjo/bin/svm_models/danceability.history
    adding SVM model: /home/byjo/bin/svm_models/genre_rosamerica.history
    adding SVM model: /home/byjo/bin/svm_models/mood_acoustic.history
    adding SVM model: /home/byjo/bin/svm_models/mood_aggressive.history
    adding SVM model: /home/byjo/bin/svm_models/mood_electronic.history
    adding SVM model: /home/byjo/bin/svm_models/mood_happy.history
    adding SVM model: /home/byjo/bin/svm_models/mood_party.history
    adding SVM model: /home/byjo/bin/svm_models/mood_relaxed.history
    adding SVM model: /home/byjo/bin/svm_models/mood_sad.history
    adding SVM model: /home/byjo/bin/svm_models/timbre.history
    adding SVM model: /home/byjo/bin/svm_models/voice_instrumental.history
    adding SVM model: /home/byjo/bin/svm_models/gender.history
    adding SVM model: /home/byjo/bin/svm_models/tonal_atonal.history
    adding SVM model: /home/byjo/bin/svm_models/ismir04_rhythm.history
    Process step: SVM models
    Unable to load library icui18n "Cannot load library icui18n: (icui18n: cannot open shared object file: No such file or directory)"
    All done
    The error line "Unable to load library icui18n .." appears for every file. I have googled and followed the hints and suggestions (I have libicu55 and it's dependencies and relatives installed) but to no avail.
    Before I continue with the rest of the sub-libraries (my music share subdirectories are organized after genres and record labels) I would appreciate some information on the error message above: is it affecting the analysis, making it less complete?

    I'll also attach a typical output file (JSON file corresponding to the extract above). If anyone can see if the analysis is complete in spite of the message above I'd be grateful :-)

    Looking forward to trying out the Essentia plugin :-)

    /Bosse
    Attached Files Attached Files

  4. #4
    Senior Member
    Join Date
    Aug 2012
    Location
    Austria
    Posts
    736
    Quote Originally Posted by BosseJ View Post
    The error line "Unable to load library icui18n .." appears for every file. I have googled and followed the hints and suggestions (I have libicu55 and it's dependencies and relatives installed) but to no avail.
    icu 58.2 is the version installed on the system used to compile the extractor.

    Before I continue with the rest of the sub-libraries (my music share subdirectories are organized after genres and record labels) I would appreciate some information on the error message above: is it affecting the analysis, making it less complete?
    No. If it affects anything (which I doubt), it would be the metadata, and this is irrelevant, since the one from LMS will be used during normal operation.

    I'll also attach a typical output file (JSON file corresponding to the extract above). If anyone can see if the analysis is complete in spite of the message above I'd be grateful :-)
    Looks fine to me. You can upload a couple of analysis files and browse the data in the web interface to make sure.

    btw, with that many files to analyse, you may want to run as many ess-analyze.sh instances simultaneously as your cpu has cores to speed up things (doing that on the same directory tree should work).

  5. #5
    Junior Member
    Join Date
    Sep 2017
    Location
    ┼kersberga, Sweden
    Posts
    18

    Thanks

    Quote Originally Posted by Roland0 View Post
    icu 58.2 is the version installed on the system used to compile the extractor.


    No. If it affects anything (which I doubt), it would be the metadata, and this is irrelevant, since the one from LMS will be used during normal operation.


    Looks fine to me. You can upload a couple of analysis files and browse the data in the web interface to make sure.

    btw, with that many files to analyse, you may want to run as many ess-analyze.sh instances simultaneously as your cpu has cores to speed up things (doing that on the same directory tree should work).
    Thank you for replying. I'll ignore the libicu-warning and continue. It seems to work very well so far, but I am in no hurry and can easily spare one core for Essentia analysis :-) I estimate the analysis of my collection will take ~70 hours or so.
    Looking at the attached analysis result it is almost cute to see that Rachmaninovs piano concert is "not danceable" with a 99% likelihood :-) It also set the key to "D#" "major" which seems okay given that the recording is entitled "E flat".

    Good job!

  6. #6
    Senior Member bakker_be's Avatar
    Join Date
    May 2009
    Location
    Kwaadmechelen, Belgium
    Posts
    669

    Repo error?

    I get an error when trying to add the repo:
    Code:
    Bad repository https://www.nexus0.net/pub/sw/lmsessentia/repo.xml - Connect timed out: Transport endpoint is not connected
    Main System: Touch; Marantz SR-5004 + TMA Premium 905 + TMA Premium 901 + Teufel Ultima 20 Mk 2 + BK Monolith+ FF + Lenovo T460 + Kodi + Pioneer PDP-LX5090H
    Workshop: iPad 32GB Wifi + Squeezepad (local playback activated)
    Wherever needed: Acer Iconia Tab A700 + Squeezeplayer
    Kitchen: iPhone 5s + iPeng (local playback activated) + NAD 312 + Teufel Ultima 20 Mk 2
    Headphone (cozy corner): Lenovo T550 + Squeezelite-X + Cyrus Soundkey + Topping A30 + Focal Elear
    Car: TBC ...

  7. #7
    Senior Member
    Join Date
    Aug 2012
    Location
    Austria
    Posts
    736
    Quote Originally Posted by BosseJ View Post
    Looking at the attached analysis result it is almost cute to see that Rachmaninovs piano concert is "not danceable" with a 99% likelihood :-) It also set the key to "D#" "major" which seems okay given that the recording is entitled "E flat".
    I'd be interested to hear how accurate the classifications are for your library. I've analyzed ~3000 tracks from mine, and there's quite some variation how well the classifications work (e.g. classical music is detected very well, electronic gets confused a lot with rock, sad / happy is quite accurate, vocal / instrumental less, gender not at all, ...)
    It most likely depends how closely one's music resembles the one used to build the classification models (which probably is of the mainstream / popular type, so the more unusual one's music is, the less accurate the pre-build models will be).
    I'll try to create some classifications based on my collection next to see if I can improve the accuracy that way.

  8. #8
    Senior Member
    Join Date
    Aug 2012
    Location
    Austria
    Posts
    736
    Quote Originally Posted by bakker_be View Post
    I get an error when trying to add the repo:
    Code:
    Bad repository https://www.nexus0.net/pub/sw/lmsessentia/repo.xml - Connect timed out: Transport endpoint is not connected
    Check if your LMS installation is SSL-enabled (e.g. on *nix, the perl modules Net::SSLeay and IO:Socket:SSL need to be installed)
    If it is, check the LMS server logs.

  9. #9
    Senior Member bakker_be's Avatar
    Join Date
    May 2009
    Location
    Kwaadmechelen, Belgium
    Posts
    669
    Quote Originally Posted by Roland0 View Post
    Check if your LMS installation is SSL-enabled (e.g. on *nix, the perl modules Net::SSLeay and IO:Socket:SSL need to be installed)
    If it is, check the LMS server logs.
    Ok, baby steps Seems I was missing IO:Socket:SSL on my Ubuntu ... PlayList Editor, ExtGui & Essentia plugin installed & working. Analysis however doesn't seem to work

    20171126_Essentia_Errors.txt
    Main System: Touch; Marantz SR-5004 + TMA Premium 905 + TMA Premium 901 + Teufel Ultima 20 Mk 2 + BK Monolith+ FF + Lenovo T460 + Kodi + Pioneer PDP-LX5090H
    Workshop: iPad 32GB Wifi + Squeezepad (local playback activated)
    Wherever needed: Acer Iconia Tab A700 + Squeezeplayer
    Kitchen: iPhone 5s + iPeng (local playback activated) + NAD 312 + Teufel Ultima 20 Mk 2
    Headphone (cozy corner): Lenovo T550 + Squeezelite-X + Cyrus Soundkey + Topping A30 + Focal Elear
    Car: TBC ...

  10. #10
    Senior Member
    Join Date
    Aug 2012
    Location
    Austria
    Posts
    736
    Quote Originally Posted by bakker_be View Post
    Analysis however doesn't seem to work
    Maybe your CPU doesn't support certain instructions (AVX, SSE4), either because it is very old (<2008 (SSE) / < 2011 (AVX) ), or low-end (some old Celerons / Pentiums).
    Check the output of
    Code:
    cat /proc/cpuinfo
    The flags should include
    Code:
    flags: sse sse2 ssse3 sse4_1 sse4_2 avx

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •