Two instances of LMS both using the same library of music
Both the most recent version of LMS but running on different architecture with different versions of Perl and Audio::Scan
Instance 1
Instance 2
New Music side by side - the indicated tracks are multi tagged with Album Artist as "Graham Parker" and "Graham Parker & The Rumour"
Can anyone explain why the difference?
![]()
Results 8,721 to 8,730 of 9031
Thread: Announce: Material Skin
-
2022-07-07, 01:45 #8721
- Join Date
- Feb 2011
- Location
- Cheshire, UK
- Posts
- 6,587
Is this Material or LMS?
Jim
https://jukeradio.double6.net
VB2.4 storage QNAP TS419p (NFS)
Living Room Joggler & Pi4/Khadas -> Onkyo TXNR686 -> Celestion F20s
Office Joggler & Pi3 -> Denon RCD N8 -> Celestion F10s
Dining Room SB Radio
Bedroom (Bedside) Pi Zero+DAC ->ToppingTP21 ->AKG Headphones
Bedroom (TV) & Bathroom SB Touch ->Denon AVR ->Mordaunt Short M10s + Kef ceiling speakers
Guest Room Joggler > Topping Amp -> Wharfedale Modus Cubes
-
2022-07-07, 01:59 #8722
- Join Date
- Mar 2017
- Posts
- 3,645
Last edited by cpd73; 2022-07-07 at 02:23.
Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.
-
2022-07-07, 07:55 #8723
- Join Date
- Oct 2014
- Location
- Pittsburgh PA
- Posts
- 383
Hey, Craig. Now that the "Denon/Marantz AVR Settings" plugin menu is supported (thanks for your help with that), I am really enjoying using and learning about the MS app. One thing I would really like is to somehow be able to access the plugin menu either directly from the Playing screen or, alternatively, pin it to the Home screen. I don't think either of those possibilities currently exist but is there any way to accomplish it via a customization? It would make the menu much more convenient to use during listening sessions. Thanks!
Sam
-
2022-07-07, 08:28 #8724
- Join Date
- Mar 2017
- Posts
- 3,645
The problem is this plugin is player specific, whereas the homescreen, etc. is not. If you want you can add an entry to the main menu by creating an actions.json with:
Code:{ "system":[ { "title":"Denon", "script":"bus.$emit('dlg.open', 'playersettingsplugin', '$ID', '$NAME', {title:'Denon', actions:{go:{cmd:['avpTop']}}}, false);" } ] }
Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.
-
2022-07-07, 12:53 #8725
- Join Date
- Mar 2017
- Posts
- 3,645
Replying to myself in case you do not see edits, but next release of Material will allow you to add these actions to the player list menu, and (optiojnally) only for certain player IDs. e.g.
Code:{ "players":[ { "players":["01:02:03:04:05:06", "aa:bb:cc:dd:ee:ff"], "title":"Denon", "script":"bus.$emit('dlg.open', 'playersettingsplugin', '$ID', '$NAME', {title:'Denon', actions:{go:{cmd:['avpTop']}}}, false);" } ] }
Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.
-
2022-07-07, 14:13 #8726
- Join Date
- Oct 2014
- Location
- Pittsburgh PA
- Posts
- 383
Thanks, Craig! I tried this and it successfully brings up the main menu but then fails with the following message when a submenu is invoked. The same message is displayed immediately upon invoking the menu for a player not using the plugin:
Code:ERROR: List processing failed TypeError: Cannot read properties of undefined (reading 'startsWith')
P.S. I saw your subsequent posts. Maybe I should just wait and test with the new player list menu customization support.Sam
-
2022-07-08, 07:07 #8727
- Join Date
- Feb 2011
- Location
- Cheshire, UK
- Posts
- 6,587
After running debug I found that the call is identical but the 2 servers respond slightly differently - so not a Material problem.
The weird thing is that I did a full clear and rescan on both instances before running the debug but examination of library.db in both doesn't show any difference in the contributors_albums table for the album ID in question.
I then fired up a third LMS instance also upgraded to latest LMS. It is also a Pi and therefore identical in all respects - perl, Audio:Scan and db server etc to the one reporting multiple album artists but this one does not show multiple album artists although both are in the contributors table and assigned to the album ID in question in contributors_album
@michael - when you do a clear and rescan does it actually drop all tables from the db and create from scratch or is there anything that persists?Jim
https://jukeradio.double6.net
VB2.4 storage QNAP TS419p (NFS)
Living Room Joggler & Pi4/Khadas -> Onkyo TXNR686 -> Celestion F20s
Office Joggler & Pi3 -> Denon RCD N8 -> Celestion F10s
Dining Room SB Radio
Bedroom (Bedside) Pi Zero+DAC ->ToppingTP21 ->AKG Headphones
Bedroom (TV) & Bathroom SB Touch ->Denon AVR ->Mordaunt Short M10s + Kef ceiling speakers
Guest Room Joggler > Topping Amp -> Wharfedale Modus Cubes
-
2022-07-08, 08:35 #8728
- Join Date
- Feb 2011
- Location
- Cheshire, UK
- Posts
- 6,587
Jim
https://jukeradio.double6.net
VB2.4 storage QNAP TS419p (NFS)
Living Room Joggler & Pi4/Khadas -> Onkyo TXNR686 -> Celestion F20s
Office Joggler & Pi3 -> Denon RCD N8 -> Celestion F10s
Dining Room SB Radio
Bedroom (Bedside) Pi Zero+DAC ->ToppingTP21 ->AKG Headphones
Bedroom (TV) & Bathroom SB Touch ->Denon AVR ->Mordaunt Short M10s + Kef ceiling speakers
Guest Room Joggler > Topping Amp -> Wharfedale Modus Cubes
-
2022-07-08, 11:45 #8729
- Join Date
- Oct 2014
- Location
- Pittsburgh PA
- Posts
- 383
I installed the latest version from GitHub and used the new player list menu customization but received the same JS error message, i.e.:
Code:ERROR: List processing failed TypeError: Cannot read properties of undefined (reading 'startsWith')
Successful (Invoked from Player settings menu):
Code:[1:58:19 PM] JSON REQ: ["b8:26:eb:c1:71:f0",["avpDynEq",0,300,"menu:avpDynEq"]] utils.js?r=DEV-2022-07-08-13-32-13:123 [1:58:19 PM] JSON RESP: {"method":"slim.request","params":["b8:26:eb:c1:71:f0",["avpDynEq","0",300,"menu:avpDynEq"]],"id":0,"result":{"count":2,"item_loop":[{"radio":1,"text":"Dynamic EQ and Volume Off","actions":{"do":{"player":0,"cmd":["avpSetDynEq",0,"0"]}}},{"radio":0,"text":"Dynamic EQ On","actions":{"do":{"cmd":["avpSetDynEq",1,"0"],"player":0}}}],"offset":0}}
Code:[1:59:30 PM] JSON REQ: ["b8:26:eb:c1:71:f0",["avpDynEq",0,300,"menu:avpDynEq"]] utils.js?r=DEV-2022-07-08-13-32-13:123 [1:59:30 PM] JSON RESP: {"result":{"item_loop":[{"radio":1,"text":"Dynamic EQ and Volume Off","actions":{"do":{"player":0,"cmd":["avpSetDynEq",0,"0"]}}},{"text":"Dynamic EQ On","radio":0,"actions":{"do":{"player":0,"cmd":["avpSetDynEq",1,"0"]}}}],"offset":0,"count":2},"id":0,"params":["b8:26:eb:c1:71:f0",["avpDynEq","0",300,"menu:avpDynEq"]],"method":"slim.request"}
Code:utils.js?r=DEV-2022-07-08-13-32-13:155 [Fri, 08 Jul 2022 17:59:30 GMT] ERROR:TypeError: Cannot read properties of undefined (reading 'startsWith') []length: 0[[Prototype]]: Array(0)at: ƒ at()concat: ƒ concat()constructor: ƒ Array()copyWithin: ƒ copyWithin()entries: ƒ entries()every: ƒ every()fill: ƒ fill()filter: ƒ filter()find: ƒ find()findIndex: ƒ findIndex()findLast: ƒ findLast()findLastIndex: ƒ findLastIndex()flat: ƒ flat()flatMap: ƒ flatMap()forEach: ƒ forEach()includes: ƒ includes()indexOf: ƒ indexOf()join: ƒ join()keys: ƒ keys()lastIndexOf: ƒ lastIndexOf()length: 0map: ƒ map()pop: ƒ pop()push: ƒ push()reduce: ƒ reduce()reduceRight: ƒ reduceRight()reverse: ƒ reverse()shift: ƒ shift()slice: ƒ slice()some: ƒ some()sort: ƒ sort()splice: ƒ splice()toLocaleString: ƒ toLocaleString()toString: ƒ toString()unshift: ƒ unshift()values: ƒ values()Symbol(Symbol.iterator): ƒ values()Symbol(Symbol.unscopables): {copyWithin: true, entries: true, fill: true, find: true, findIndex: true, …}[[Prototype]]: Object logError @ utils.js?r=DEV-2022-07-08-13-32-13:155 parseBrowseResp @ browse-resp.js?r=DEV-2022-07-08-13-32-13:1186 (anonymous) @ player-settings-plugin.js?r=DEV-2022-07-08-13-32-13:144 Promise.then (async) fetch @ player-settings-plugin.js?r=DEV-2022-07-08-13-32-13:142 click @ VM1850:3 He @ vue.min.js?r=2.6.11:6 n @ vue.min.js?r=2.6.11:6 He @ vue.min.js?r=2.6.11:6 e.$emit @ vue.min.js?r=2.6.11:6 click @ vuetify.min.js?r=1.5.24trim:6 He @ vue.min.js?r=2.6.11:6 n @ vue.min.js?r=2.6.11:6 Yr.o._wrapper @ vue.min.js?r=2.6.11:6
Sam
-
2022-07-08, 13:52 #8730
- Join Date
- Mar 2017
- Posts
- 3,645
Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.