1

I'm trying to use the Gracenote Mobile Client for android to identify Music through the mic.

So far it is working well and i receive recognition results (using identifyAlbum).

I was wondering, whether it was possible to support an offline scenario. Fingerprinting a recording and submitting the fingerprint to the gracenote servers at a later point (when internet is available).

(i know that it probably would work to store the recording as an audio file and submit that file for identification later. I'm just wondering, whether it was possible to store and retrieve fingerprints instead of recordings)

Help is greatly appreciated.

Greetings and thanks. woellij

woelliJ
  • 1,494
  • 9
  • 17
  • I haven't tried this on Android but according to documentation following APIs may provide what you need. `GnMusicId.fingerprintBegin()` `GnMusicId.fingerprintWrite()` `GnMusicId.fingerprintEnd()` `GnMusicId.fingerprintDataGet()` – Alan Feb 23 '17 at 21:39
  • Hi Alan. Thanks for pointing me into that direction - i wasn't aware of that class. So far i've just implemented something according to the [Android Sample](https://github.com/kevguy/GracenoteSDKSample). Where can i find the documentation? I'm completely lost on the Gracenote Developer page. – woelliJ Feb 24 '17 at 15:35
  • Goto to the following link to download GNSDK for Mobile (Android) - https://developer.gracenote.com/gnsdk . There is API reference in the html docs but I'm afraid there isn't any samples for using the above APIs. – Alan Feb 24 '17 at 17:22
  • Thanks. After finally successfully wrapping it in a Xamarin for Android library i totally forgot about the other downloaded folders and files :) With your help i came across [this question](http://stackoverflow.com/questions/31000227/gracenote-gnsdk-on-android-wear?rq=1) and i think i can manage from here. If you post your comment as an answer i'll gladly accept it since it pointed me in the perfect direction. – woelliJ Feb 24 '17 at 17:30

1 Answers1

0

I haven't tried this on Android but according to documentation following APIs may provide what you need.

  • GnMusicId.fingerprintBegin()
  • GnMusicId.fingerprintWrite()
  • GnMusicId.fingerprintEnd()
  • GnMusicId.fingerprintDataGet()

For more info on the APIs, goto to the following link to download GNSDK for Mobile (Android) - developer.gracenote.com/gnsdk . There is API reference in the html docs but I'm afraid there isn't any samples for using the above APIs.

Alan
  • 667
  • 5
  • 15
  • Thanks again for pointing me into the right direction. I ended up using fingerprintFromSource since i was already using the GnMic. Like: gnMusicId.fingerprintFromSource(gnMic, fingerprintType); String fingerprint = gnMusicId.fingerprintDataGet(); gnMusicId.findAlbums(fingerprint, fingerprintType); And i might just use it instead of GnMusicIdStream everytime - unless there is a certain downside – woelliJ Feb 25 '17 at 08:29