Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - CharlieJiang

Pages: 12
1
Plugins / Re: Desktop Lyrics: Display lyrics on your desktop!
« on: July 17, 2023, 07:55:10 PM »
@CharlieJiang

Running your Desktop Lyrics plugin (dll v1.8 ) through VirusTotal, it gets triggered by 14 antivirus engines saying it contains a Trojan virus:



Can you comment on this?
 
 

I too tried to run the dlls in VirusTotal and got the same result, which is rather weird. The project has its source code publish at https://github.com/cqjjjzr/MusicBee-DesktopLyrics and the codebase is small (not so small as NeteaseLyrics, ~1900 SLOC of C#, but still quite controlable) so it can be easily audited, and you can build the project and again put it into VirusTotal.

I rebuilt the project from scratch using VS2022 (17.6.1) and the result is the same, so I believe it's either

1. False positive from Antivirus engines. I used Fody Costura to weave dependency DLLs into single DLL so this is highly likely the case! (see https://github.com/Fody/Costura/issues/161 );
2. The dependency is posioned. Again the dependency details is published in the GitHub repo (in packages.config). The project has only 5 dependencies (Costura.Fody 3.2.2, Fody 3.3.5, MSBuildTasks 1.5.0.235, Newtonsoft.Json 13.0.1, Cyotek.Windows.Forms.ColorPicker 1.7.2), and none has been reported as posioned as far as I can search, so the possibility for dependency posioning is slim.

I severly doubt that this is a case of false positive. Could you try to rebuild the project from source and see if the virus flags persist?

Reposted from the replies of the NeteaseLyrics plugin:

Someone in the GitHub issue suggested changing the GUID of the dll in AssemblyInfo.cs, and it did fixed the problem. The original one (c1acdbd8-6b22-4807-bba3-d0237ccd74c1) in my plugins are surprising the same since I copied the AssemblyInfo.cs from the MusicBee SDK demo untouched. Changing them to different ones solved the issue.



It seems that the AV softwares are indeed to be blame. I'll release further versions of those plugins with new GUIDs, but I'd like not to bother to release a version just for rolling the GUID.

2
P.S.
Do you happen to know about this plugin for QQ Lyrics?: https://getmusicbee.com/addons/plugins/473/qq-lyrics/

It also gets flagged by Google: https://getmusicbee.com/forum/index.php?topic=39622.msg214268#msg214268

I have no idea, sorry.

Someone in the GitHub issue suggested changing the GUID of the dll in AssemblyInfo.cs, and it did fixed the problem. The original one (c1acdbd8-6b22-4807-bba3-d0237ccd74c1) in my plugins are surprising the same since I copied the AssemblyInfo.cs from the MusicBee SDK demo untouched. Changing them to different ones solved the issue.



It seems that the AV softwares are indeed to be blame. I'll release further versions of those plugins with new GUIDs, but I'd like not to bother to release a version just for rolling the GUID.

3
Plugins / Re: Desktop Lyrics: Display lyrics on your desktop!
« on: July 17, 2023, 07:29:59 PM »
@CharlieJiang

Running your Desktop Lyrics plugin (dll v1.8 ) through VirusTotal, it gets triggered by 14 antivirus engines saying it contains a Trojan virus:



Can you comment on this?
 
 

I too tried to run the dlls in VirusTotal and got the same result, which is rather weird. The project has its source code publish at https://github.com/cqjjjzr/MusicBee-DesktopLyrics and the codebase is small (not so small as NeteaseLyrics, ~1900 SLOC of C#, but still quite controlable) so it can be easily audited, and you can build the project and again put it into VirusTotal.

I rebuilt the project from scratch using VS2022 (17.6.1) and the result is the same, so I believe it's either

1. False positive from Antivirus engines. I used Fody Costura to weave dependency DLLs into single DLL so this is highly likely the case! (see https://github.com/Fody/Costura/issues/161 );
2. The dependency is posioned. Again the dependency details is published in the GitHub repo (in packages.config). The project has only 5 dependencies (Costura.Fody 3.2.2, Fody 3.3.5, MSBuildTasks 1.5.0.235, Newtonsoft.Json 13.0.1, Cyotek.Windows.Forms.ColorPicker 1.7.2), and none has been reported as posioned as far as I can search, so the possibility for dependency posioning is slim.

I severly doubt that this is a case of false positive. Could you try to rebuild the project from source and see if the virus flags persist?

4
@CharlieJiang

Running your Netease Lyrics plugin dll (v1.8.1) through VirusTotal, it gets triggered by 12 antivirus engines saying it contains a Trojan virus:



Can you comment on this?
 
 

I too tried to run the dlls in VirusTotal and got the same result, which is rather weird. The project has its source code publish at https://github.com/cqjjjzr/MusicBee-NeteaseLyrics and the codebase is extremely small so it can be easily audited, and you can build the project and again put it into VirusTotal.

I rebuilt the project from scratch using VS2022(17.6.1) and the result is the same, so I believe it's either

1. False positive from Antivirus engines. I used Fody.Weaver to weave dependency DLLs into single DLL so this may trigger false positive.;
2. The dependency is posioned. Again the dependency details is published in the GitHub repo (in packages.config). The project has only 4 dependencies (Costura.Fody 3.2.2, Fody 3.3.5, MSBuildTasks 1.5.0.235, Newtonsoft.Json 13.0.1), and none has been reported as posioned as far as I can search, so the possibility for dependency posioning is slim.

Could you try to rebuild the project from source and see if the virus flags persist?

5
Plugins / Re: Windows 10 Media Control Overlay
« on: May 15, 2023, 04:49:22 PM »
I've noticed some minor issues in alexdo's version:

1. I didn't register global media keys in MusicBee, so there's no actually double register issue for me. Therefore, the fix against double registration directly disabled my media keys.
2. The display isn't updated in time. When I click the Next track button in the overlay, the display isn't updated until it appears again.
3. The player and the overlay may get confused and lag if I spam-click the buttons in the overlay.

Therefore, I wrote a small fixed version for these 3 issues. Note that I disabled alexdo's fix for the double register problem, but you may need it! If that's the case, at the Line 29 in the `MediaControl.cs`, replace "0" to "2000", and recompile.

Here's the code and DLL files (I didn't upload this to GitHub because I don't know what's the open-source license):

https://1drv.ms/f/s!AicHZ6DLvCtXgYhCqD050XH_TeJF8Q?e=SDaFnQ

The key is to call `SetDisplayValues` and `SetPlayerState` right after any operation is done, and before calling `Player_PlayPause`, check if we really need to do that by calling `Player_GetPlayState` (When the player is paused, and the user issued a Pause command may be due to lag in UI update, you wouldn't want `Player_PlayPause` to be called because it actually starts the playback).

Several things to note:

1. Direct dependency on UWP DLLs is replaced to NuGet package `Microsoft.Windows.SDK.Contracts`, which handles the references to SMTC classes.
2. packages.config migrated to PackageReference.
3. Fody is used to weave global mouse key hook DLL into the final plugin DLL.
4. .NET Framework version is changed to 4.8.
5. The compiler complains that `BackgroundMediaPlayer` is obsolete, but I didn't find a better way to obtain `SystemMediaTransportControls` object in a desktop (non-UWP) app - advice needed!
6. @froschfinger It's certainly doable via `SystemMediaTransportControlsTimelineProperties` in the SMTC feature. However, I'm now using Windows 10 instead of Windows 11, so I don't have the chance to test such a feature, sorry...

It should be easier to compile this codebase than the original version due to the first 3 changes above. Notably, I expect that the compiler won't complain about the missing reference to UWP namespaces.

6
If this method is the only way to enable skin on plugins, I'm not into it because it's a pretty dirty hack and it's undocumented.
The comment and the code in the referenced link are from MB's developer. So I don't see what your objecting to. If you don't want to skin the controls, then just say so. Don't blame it on what you consider an undocumented hack.

Well, I'm fully aware that Steven is MB's developer. I don't see why you're so eager to correct me in an unfriendly tone :) If I really don't want to, I'll never bother to search the forum.

Steven mentioned that this was undocumented and "might work". For the combobox it's OK to call `MB_AddPanel`, but what about the checkbox?

7
A quick search brought me here: https://getmusicbee.com/forum/index.php?topic=32292.msg177876#msg177876

If this method is the only way to enable skin on plugins, I'm not into it because it's a pretty dirty hack and it's undocumented.

8
Plugins / Re: Desktop Lyrics: Display lyrics on your desktop!
« on: June 14, 2020, 03:27:46 PM »
It's been bugging me for a while but irrespective of skin used the View>Desktop lyrics option is always selected when starting MusicBee. Even if I untick it, the next time I run MusicBee it is ticked again and the on-screen display of the track title is displayed an the default location (even if you move it next time you run MusicBee it returns to it's default position). It's really annoying when I'm working as the track title keeps getting in the way of my work. Is it a bug or intended activity?

It would better to offer this proposal in the GitHub Issues of the plugin. And unfortuneately, because I have little spare time currently due to heavy schoolwork :(, it would be hard for me to fix the problem you've mentioned(To fix it, the display settings must be persisted onto setting files.). I would appreciate if you could send a pull request to the repository :)

9
Plugins / Re: Netease Lyrics: Retrieve lyrics from Netease Cloud Music!
« on: August 30, 2019, 02:35:30 PM »
I can see that now the plugin is version 1.4.0 and congrats !


but I just came here to ask why there's no option to turn off censorship. im listening to rap/hiphop and I just can see an enormous amount of censors kinda beats the purpose of the service. if songs have parental advisory on them probably the users are ready for badwords so why censor them with no option to dissable it.

also, most songs have wrong lyrics and some is just brutal specially with more popular songs while with some less popular ones, I can see that its either complete wrong or it came from musixmatch which is totally fine and maybe better but censorship is still there to ruin it. I recommend getting an assistance with google.com if y'all wanna do the lyrics manually

I can see that you did a lot of work for this plugin I totally appreciate and acknowledge that. I could say this is really cool on the surface but totally needs more work with lyrics and cersorship, either are equally bad and annoying good thing editing is there. atleast its just better than the original lyrics provider of musicbee

i could be wrong about anything that i said because i've only been using this plugin for a day but the flaws are just obvious. but i can see the potential of this plugin getting better keep it up guys  ;)

Thanks a lot for using the plugin!

1. As for the censorship, actually I can do nothing to help that :( because the lyrics I get from Netease API are censored, so there's no option for that. 
2. Originally I have the plan to improve the music searching function, but sadly I have no more time for that :( Also, actually you could manually edit the lyric by editing it in the track details tab.

10
Plugins / Desktop Lyrics: Display lyrics on your desktop!
« on: September 03, 2018, 02:22:28 PM »
Hi all, it's CharlieJiang.
This plugin is for showing lyrics on your desktop, just like clients of very many popular online music services does(such as Netease Cloud Music, QQ Music, Kugou Music, etc.).

The lyrics must in LRC format, synchronized. Offset label is supported.

It can work with NeteaseLyrics plugin in order to display double-line lyrics, if you can provide lrc splitted with slash "/" it can also correctly handled.

To use this plugin, download it from links below:
For users who are in China:
Baidu Netdisk Download, passcode 1sr3  
For users who aren't in China:
OneDrive Download

Just install this plugin in the Plugins tab in the Settings or put the DLL file into the Plugins of your MusicBee installation, and then enable it, set the lyrics style in the settings, and you're ready to rock!

Also, lyrics style can be modified in the Plugins tab. And you can hide or show the desktop lyrics in the MusicBee Menu(View->Desktop Lyrics).

Source Code: GitHub repo:https://github.com/cqjjjzr/MusicBee-DesktopLyrics

Coming Update:  
Pronunciation Marks, Opacity settings.



11
Plugins / Re: Netease Lyrics: Retrieve lyrics from Netease Cloud Music!
« on: August 31, 2018, 02:21:28 AM »
v1.3.0 release.
logs in the GitHub release desc.

12
Quote
but you may get translation you don't like. in the coming version probably I'll add option to disable that.

yeah this would be great. Right now the translation is annoying :/



Updated :), just update and go to the preferences to disable

13
Hi all,
I think MusicBee is really an amazing music player but there is a problem is because songs and artist in my library are pretty unpopular so MusicBee always download wrong artist pictures from Internet and some of them are really ridiculous.
So a option to disable getting pictures from Internet does help a lot. Now I can only prevent the problem by disable the writing permission for the artwork folder, which is obviously not a permanent solution.
Thanks!

14
Questions / What's the skin shown on the mainpage?
« on: February 02, 2018, 03:38:37 PM »
Hi all,
I found the screenshots on the mainpage are so beautiful but I can't find the skin on my MusicBee. I would like to ask what skin it is.

Thanks!

15
Hi. I'm working on a plugin to sync .lrc lyrics to the connected device(because Steven seems not to want to add this option).
So my plugin need to be notified when syncing a track from the lib to the device.
The event should called every time before or after syncing a track file. Like this:
public delegate void TrackSyncDone(string trackName, string path, string pathOnDevice);
And i should be able to write my plugin with it.
Thanks!

Pages: 12