Skip to main content

Topic: foo_discogs (Read 776056 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • silkcut
  • [*][*]
foo_discogs
Reply #1375
Many thanks bubbleguuum!!  It has helped me out a lot as well.

  • goaman15
  • [*]
foo_discogs
Reply #1376
Post the source code... I'll take a look and maybe update it if I find time... (no promises I'm too busy these days).

Is OAuth support necessary just to access release info? There should be no need to log in to discogs?

  • sfman
  • [*]
foo_discogs
Reply #1377
Thanks for all work You put into this plugin. It helped many people to spent less time on tagging.

  • bubbleguuum
  • [*][*][*][*][*]
  • Developer
foo_discogs
Reply #1378
Here's a dump of the v1.32 source

To build it you need to place the foo_discogs project in a VC++ solution and add these dependencies to the foo_discogs project:

- foobar2000_component_client
- foobar2000_SDK
- foobar2000_SDK_helpers
- pfc


The abstract class IDiscogs encapsulates fetching + parsing Discogs data and populating data structures (classes) representing release, artists, etc.
There's a single implementation in DiscogsXMLParser.cpp.  To support JSON, a new implementation must be written using the XML
implementation as an example to fill the data structures exactly the same way.
For parsing JSON, I had good success with the Jansson lib for another project.

And there's the PITA named OAuth (v1) to handle. It will be required for search requests and probably more as discogs devs have become OAuth freaks.
For this, I suggest to research if an easy C/C++ OAuth lib exists first.

If someone picks up this project let us know to avoid duplicate effort.
  • Last Edit: 15 August, 2014, 01:07:18 PM by bubbleguuum

  • goaman15
  • [*]
foo_discogs
Reply #1379
Thanks bubbleguum. I'm taking a stab at it. Others can feel free to race me. Haven't used C++ since school so I'm pretty rusty. Forgot about the joys of trying to compile and link everything properly on windows. :-)

  • zoomorph
  • [*][*][*][*]
  • Developer
foo_discogs
Reply #1380
Here is a working version (DLL):
https://www.sendspace.com/file/f8926e

It uses the JSON API for searching artist and getting artist releases, but still uses the old XML interface for everything else. It seems a bit slower at loading releases, too.

Big thanks to bubbleguuum for starting this project and releasing the source code.
  • Last Edit: 16 August, 2014, 03:27:06 PM by zoomorph

  • silkcut
  • [*][*]
foo_discogs
Reply #1381
Thanks zoomorph!!

  • j0b0
  • [*]
foo_discogs
Reply #1382
Here is a working version (DLL):
https://www.sendspace.com/file/f8926e

It uses the JSON API for searching artist and getting artist releases, but still uses the old XML interface for everything else. It seems a bit slower at loading releases, too.

Big thanks to bubbleguuum for starting this project and releasing the source code.


It works with searching, but tagging fails in my case (some endpoint related error). Anybody else the same?

  • silkcut
  • [*][*]
foo_discogs
Reply #1383
It works with searching, but tagging fails in my case (some endpoint related error). Anybody else the same?


Same.  When I click "Write Tags" I get

discogs error: release id=xxxxxx: problem connecting to discogs.com

foo_discogs
Reply #1384
Here's a dump ...snip...


I assume this is for a potential developer and not for an end user?

  • zoomorph
  • [*][*][*][*]
  • Developer
foo_discogs
Reply #1385
It works with searching, but tagging fails in my case (some endpoint related error). Anybody else the same?


Same.  When I click "Write Tags" I get

discogs error: release id=xxxxxx: problem connecting to discogs.com

Hmm weird, it works for me and I didn't change anything in the code relating to loading the release info or writing tags. I'm not a C++ expert so maybe I compiled something wrong (I compiled on MSVC 2013 using platform toolset for Windows XP (v120_xp)). By the way, what version of foobar2000 are you using? I'm using the latest official version.

  • lucido
  • [*]
foo_discogs
Reply #1386
Works for me too. Win8.1 x64, foobar2000 1.3.3
Thanks zoomorph and bubleguuum

  • zoomorph
  • [*][*][*][*]
  • Developer
foo_discogs
Reply #1387
Good to hear that lucido!

Here's another build that uses the JSON API exclusively. (According to their website, the rest of the XML API will be shut off on Aug 22.)
https://www.sendspace.com/file/igsvhu

I've not tackled OAuth support as they've bumped the deadline to Oct 14.

  • bubbleguuum
  • [*][*][*][*][*]
  • Developer
foo_discogs
Reply #1388
Good to hear that lucido!

Here's another build that uses the JSON API exclusively. (According to their website, the rest of the XML API will be shut off on Aug 22.)
https://www.sendspace.com/file/igsvhu

I've not tackled OAuth support as they've bumped the deadline to Oct 14.



Thanks for your work! I've updated the components site with your version (1.33).
It will be picked by the foobar2000 auto-updater.
If you make new updates make sure to bump the version number and I'll upload it to the components site.

That's good news OAuth has been pushed back as it give more time to add support for it.
  • Last Edit: 17 August, 2014, 03:56:05 AM by bubbleguuum

  • Forfit
  • [*][*][*][*]
foo_discogs
Reply #1389
Here's another build that uses the JSON API exclusively.

Silent Crash for me after search. WinXP, foobar2000 1.3.3
Thanks zoomorph and bubleguuum
  • Last Edit: 17 August, 2014, 04:16:55 AM by Forfit

  • zoomorph
  • [*][*][*][*]
  • Developer
foo_discogs
Reply #1390
I apologize for any bugs. I'm not sure how compatible my builds are. I'm sure bubbleguuum and others here are more knowledgeable so maybe they can help. Here is the source code using the JSON api: https://bitbucket.org/zoomorph/foo_discogs

  • bubbleguuum
  • [*][*][*][*][*]
  • Developer
foo_discogs
Reply #1391
Here's another build that uses the JSON API exclusively.

Silent Crash for me after search. WinXP, foobar2000 1.3.3
Thanks zoomorph and bubleguuum


Silent as in you do not even see the crash report dialog ?
At which point does it crash (detailed steps to reproduce) ?

  • Forfit
  • [*][*][*][*]
foo_discogs
Reply #1392
Silent as in you do not even see the crash report dialog ?

yes, nothing also in "crash reports" folder.
Quote
At which point does it crash (detailed steps to reproduce) ?

I click button plugin over a previous filled discogos mp3 tag, it open dialog form, i write artist and click "Search", it find and crash.
Sometimes it does not crash immediately but I can scroll through the artists list but after crashes anyway.

  • wojtek
  • [*][*][*][*]
foo_discogs
Reply #1393
Here's a dump of the v1.32 source


Hi,
first of all - thank you for the amazing plugin and all the work!

As for the sources - I guess it would be ok to put them on github or bitbucet or similar?
http://foobar2000.pl/ :: unofficial polish forum

  • foosion
  • [*][*][*][*][*]
  • Moderator
foo_discogs
Reply #1394
That's good news OAuth has been pushed back as it give more time to add support for it.
You should also look into adding HTTPS support.
http://foosion.foobar2000.org/ - my components for foobar2000

  • j0b0
  • [*]
foo_discogs
Reply #1395
The error while writing tags can be resolved by deleting any old foo_discogs.dll.cfg file in the configuration folder of foobar.
Probably foobar 1.3.3. should also be the current version.

Cheers!

  • comox
  • [*]
foo_discogs
Reply #1396
Many Thanks to bubbleguuum and zoomorph for continuing this hilarious plugin. Tagging works fine (although it crashed once until now) but album art is not fetched. Newest version of foobar is installed and i deleted the old foo_discogs.dll.cfg. Anyone else with that problem?
  • Last Edit: 17 August, 2014, 10:05:50 AM by comox

foo_discogs
Reply #1397
1. Is it recommended to uninstall foo_discogs before installing this latest version?

2. Could someone post a brief WiKi of what will work and what won't work?

  • j0b0
  • [*]
foo_discogs
Reply #1398
The problem seems to mapping related. Editing the mapping after deleting the old config brings the error back.
It seems that some or at least one mapping is broken (if you choose all DISCOGS_ ... fields)

  • eahm
  • [*][*][*][*][*]
foo_discogs
Reply #1399
Thanks bubbleguuum and zoomorph, the new version works perfectly. Damn quick update!