Xmp-justlog plugin

Started by sveakul,

piovrauz

strange enough, on a clean "install" xmplay (usb drive) justlog doesn't show up anymore... system is window10, kind of puzzled since the old key used to work fine (I didn't copy xmplay folder, just regot the stuff I needed)

saga

Different plugins may use different runtime versions. What exactly is missing can be found out by using Dependency Walker (or better this modern replacement) and loading the DLL file into it. In this particular case, it will tell you that xmp-justlog.dll depends on msvcr100.dll and msvcp100.dll, which are part of the Visual C++ 2010 runtime. You can download it here: https://download.microsoft.com/download/5/B/C/5BC5DBB3-652D-4DCE-B14A-475AB85EEF6E/vcredist_x86.exe

tbrg-22

Plugin did not work for me either.. I never had it installed before, because I only discovered XMPlay last month! o)

I tried installing vcredist_x86.exe, but it said, I already had a newer version, so it would not install.

XMPlay will also just stop playing when trying to add the plugin with the "Add" button, nothing else happens and XMPlay process won't quit anymore, needs task manager to kill it. Do you have any other ideas how to get this plugin working?

Keltic Danor

#43
I'm sure there is a way to remove the dependencies but I'm not sure what that is, I may just compile it in Visual Studio 2019+ so presumably you would have the runtime in that case anyway.

For now however attached is a version of xmp-justlog1.8.2 that has been compiled in NetBeans instead so has no visual studio dependencies albeit at the cost of being quite a bit larger. Note that I have not testing this compiled version very much but it seems to work okay in a quick play around.

Just a FYI, there is a bug I'm aware of in JustLog that prevents relative pathing from working correctly if you use certain visual plugins, I'm not 100% sure why that is but I know the fix, just need to get around to doing it.


New version available with fixes and tweaks below.

saga

QuoteI'm sure there is a way to remove the dependencies but I'm not sure what that is
You need to set the Runtime Library property of the project to "Multi-Threaded (/MT)" instead of "Multi-Threaded DLL (/MD)". Note that for debug configurations this should typically be "Multi-Threaded Debug (/MTd)" instead.
The resulting DLL will be a bit larger but it won't have any dependencies on the MSVC runtime. The advantage of using the runtime DLL is that this overhead is instead shared between all applications that use the same MSVC runtime, so all in all reduced disk usage at the expensive of having to install a separate component.

Keltic Danor

#45
v1.9
  • Compiled with /MT flag to remove runtime dependencies
  • Relative paths should now always work relative to XMPlay.exe
  • Config now has a path display and test button to show view relative paths easier
Just Log v1.9
GitHub Source Updated

Thanks saga, you're a legend. 8)

piovrauz

#46
The plugin just stopped working on one of my setups.
XMPlay runs on a USB key, and log was saved on \xmplay subfolder.
no idea what happened, can someone else test it? thanks

It's a windows11 setup, in case it matters.

piovrauz

Just posting an update: solved deleting the xmplay folder on the usb key and copying the local one on it; works now, who knows what happened.

Keltic Danor

Quote from: piovrauzJust posting an update: solved deleting the xmplay folder on the usb key and copying the local one on it; works now, who knows what happened.

If you happen to run into the problem again can you shoot your .ini settings over to me? Can have a shot at working out what the mystery is.  :)

piovrauz

I was wondering if it could be possible to add a conditional filter of sort this plugin.
I see some streams I listen too are missing the title sometimes, so I'd like to be able to not have them logged.
Something along the lines of "if title is empty skip else log time - author - title"?

Keltic Danor

Quote from: piovrauzI was wondering if it could be possible to add a conditional filter of sort this plugin.
I see some streams I listen too are missing the title sometimes, so I'd like to be able to not have them logged.
Something along the lines of "if title is empty skip else log time - author - title"?
Been a while since I took a look at it, I was going to say "Exclude Untitled" should do that but I imagine you have that unchecked to log the filename when there is no tags.
Maybe a new more specific option for "Exclude Untitled Stream" would do the trick?

piovrauz

Yes, it will work, as long it checks the stream data and not the custom log line.
In my case it would be something like "date time - ", ... which is not empy.

edit: I checked, and I do have "Exclude Untitled" checked, and since I only log streams... "Exclude Files is checked too". 
formatting for streams is %y-%m-%d %h:%i:%s %1

Keltic Danor

#52
Quote from: piovrauzYes, it will work, as long it checks the stream data and not the custom log line.
In my case it would be something like "date time - ", ... which is not empy.

edit: I checked, and I do have "Exclude Untitled" checked, and since I only log streams... "Exclude Files is checked too". 
formatting for streams is %y-%m-%d %h:%i:%s %1
It's a bit hard for me to test it given the scenario but I don't think the exclude untitled option was working at all, I've uploaded an update for you to try.

v1.91
  • Fixed the exclude untitled option ...maybe.

piovrauz[offline]

Putting a bit more synapses on this I found that the affected stream is sending a "-" character when switching between tracks. :P
Xmp-justlog would obviously interpret it as a title: I guess a filter based on title leght may work better?
Would that be feasible?

piovrauz[not-logged]

well, some time passed with no news about this last request of mine. my log file is full of stuff like "2023-08-28 12:21:38 -"... T__T

I still think a length based filter would work well here and should be easy to implement.
ie: don't log if title is shorter than 23 chars (in my case 22 is the length of the timestamp plus the " -").

Keltic Danor

Quote from: piovrauz[not-logged]well, some time passed with no news about this last request of mine. my log file is full of stuff like "2023-08-28 12:21:38 -"... T__T

I still think a length based filter would work well here and should be easy to implement.
ie: don't log if title is shorter than 23 chars (in my case 22 is the length of the timestamp plus the " -").
I've tweaked it a bit for Exclude Untitled to also exclude titles of - so hopefully that'll do the trick.

v1.92
  • Exclude untitled will now count - as also being untitled

https://support.xmplay.com/files_view.php?file_id=717

piovrauz

ehrm, sadly (in my case) it doesn't work, I just tried.

I use this formatting string for streams: %y-%m-%d %h:%i:%s %1

If the title string is empty, the timestamp isn't... so something like "2023-08-28 12:21:38 -" stays there. :(

Keltic Danor

Quote from: piovrauzehrm, sadly (in my case) it doesn't work, I just tried.

I use this formatting string for streams: %y-%m-%d %h:%i:%s %1

If the title string is empty, the timestamp isn't... so something like "2023-08-28 12:21:38 -" stays there. :(
Ah pickles, can you give me the stream you are using? I'll give it a try.

piovrauz[away]

Keltic Danor

Quote from: piovrauz[away]one affected stream is: https://radiorecord.hostingradio.ru/liquidfunk96.aacp
all streams from there are "affected".
Round 2! Added debug option for fun but the exclude untitled has been further revised.

v1.93
  • - Show debug option added.

https://support.xmplay.com/files_view.php?file_id=717