Integration with your Google Play Music library

Google Play integration is aimed at better integrating tracks in your Google Play library with your own tracks … (and by "tracks in your Google Play library" I refer to either tracks which you uploaded to Google, and|or tracks from Google’s subscription streaming service):

• browse these tracks or albums with MediaMonkey
• track their play history with MediaMonkey
• use MediaMonkey, or AlbumPlays, to design playlists for use in your Google Play library
• use AlbumPlays to publish these playlists directly into your Google Play library


“Adopt” tracks or albums from your Google Play library

You can add selected Google tracks or albums from Google’s subscription streaming library, into your own Google “library”. The library is effectively just your own short list of favourites, making it easier to quickly relocate them from amongst the 30+ million tracks on offer in Google’s streaming library.

The AlbumPlays “adoption” facility takes this a step further. It allows you to select items from your Google library, and have AlbumPlays add them into your MediaMonkey database. This has the following benefits:

  • you can track play history for these items, just as you can for the tracks which you own; it is as these Google items are now part of your collection
  • you can use these items in MediaMonkey or AlbumPlays playlists

Some preparation is required before you can adopt Google items; you need to trigger AlbumPlays to obtain the list of tracks and albums in your Google library, and match these against your MediaMonkey database. This matching process will connect together Google’s copy, with your own, for any which you have in common. … Unmatched Google library items are put into a list of adoption candidates. … nb: once done, there is no need to rerun this step unless you add further items into your Google library, and you then want to adopt one or more of those fresh items.

AlbumPlays provides two routes by which you can adopt Google items. The first is directly called by menu item, and is described here. The other route is the Streaming Wizard, which is an optional part of the regular workflow, and is described elsewhere

Adopt menu items
“Adopt” menu items

The Google adoption menu items are found within the Action Menu. There is one menu item to adopt whole albums, and another to adopt selected tracks. … nb: these menu options are not enabled until you have completed the preparation step.

What happens next, is dependant upon how many adoption candidates you have (ie. albums or tracks in your Google library, which are not also in MediaMonkey). If you have very few adoption candidates you will be taken directly to the adoption screen, otherwise you will be asked to select from a set of adoption batches, as illustrated below.

Adoption batches … (click on any image for a larger view)

For this example I requested album-level adoption.

I have a lot of candidates, so I am shown a list candidate batches. The first item in each batch is listed.

  • batch start points are sorted alphabetically by album. This can be changed to Artist sequence by clicking the Artist column heading.
  • select a batch, and then press the F3 key, or the Select button, or activate the Navigate menu item via the Alt+N Alt+A keys.

Adopt some albums

You are taken to the Adoption screen for the selected batch. From here you may select one or more albums, and then press the *Adopt” button, or press the F3 key.

The wheels whirl a little, and then you are returned to the batch selection screen, where you may request further adoption batches.

Once you finished adopting, press the F4 key, or close the window. An audit trail of updates will be displayed.

Adoption update log

Track level adoption

Track adoption is a similar process.

In both cases, you may alter the sort sequence at the top level (ie. the batch selection phase, or in the adoption screen if these are too few candidates to require batches. … The sort sequence is locked once you have entered into a batch.

The adopted items are added into your MediaMonkey database. AlbumPlays will track their play history, and update this into MediaMonkey.

You continue to play the tracks using Google Play Music player. You can use them in MediaMonkey playlists, which AlbumPlays can publish directly into your Google Play library.

Google items in a MediaMonkey database

.. return to top

Publish playlists directly into your Google Play library

MediaMonkey already has strong support for the generation of playlists, so why implement additional playlist support into AlbumPlays?
Click here for an overview of the features and benefits which AlbumPlays brings to playlists.

The music tracks in your Google Play Music library are from either of two sources:

  • you uploaded your own tracks to Google’s server at no charge
  • and|or you have added tracks or albums, from Google’s subscription streaming service, into your Google library, for ease of access

If you want to avoid syncing, and refreshing, small subsets of your Google library, down onto your mobile devices, you will listen by streaming, using one of the Google Play client facilities. … You should chose a player which scrobbles your plays to

Google has no good playlist building tool; both MediaMonkey and AlbumPlays are good playlist building tools.

If you are going to play Google items, using a MediaMonkey or Albumlays playlist, the playlist needs to be published into your Google Play library.

AlbumPlays can automate the publishing, refreshing and housekeeping of playlists directly into your Google Play library:

  • refreshing” the playlist – active playlists can be designed to continuously refresh themselves, ie. “rock and jazz tracks (or albums), which you rated at 4 stars and above, ** and which you haven’t heard for 2+ months**” … a playlist like this will be continuously refreshed as time passes, and you play some of the unheard items
  • automate the publishing” – AlbumPlays has option to automatically refresh your playlists, whenever it receives new play history
  • directly into your Google library” – AlbumPlays can publish and refresh your playlists directly into your library at Google
  • housekeeping” – AlbumPlays can automatically purge playlist tracks or albums which no longer meet the selection criteria of your active playlists, and delete any empty playlists

Some preparation is required before you can use AlbumPlays’ Google integration:

  • for your own tracks, you need to obtain the (hidden) IDs which Google has assigned to your tracks and albums as descibed here
  • for tracks from Google’s subscription library, you need to “adopt” them into your MediaMonkey database, as described here

Here is the index to AlbumPlays playlist documentation.

.. return to top

The Streaming Wizard

The Streaming Wizard is an optional addition to AlbumPlays’ regular Approve processing action. The Wizard is aimed at simplifying the handling of unknown streamed items.

For this illustration I played tracks from two albums which I don’t own, and which are not currently indexed by my MediaMonkey database. … I have configured AlbumPlays to show the Streaming Wizard, and I have registered myself in AlbumPlays as a “whole_album” listener.

  • AlbumPlays detects that unknown items has been played, and pauses the Approve action
  • it displays the Streaming Wizard panel, and waits for input
  • the Streaming Wizard has a row for each unknown “item” which was played … if you registered yourself as being a whole-album player there will be a row per unknown album, otherwise there will be a row for each unknown track
  • for each entry, you have three choices:
    1. do nothing, in which case the scrobble will continue to be ignored … if you play the item again, the same thing will reoccur … ie. where the item was from a streaming source, the implication is that you are continuing to audition the item, and you will decide later whether or not to adopt it
    2. adopt” it … if the item is a known Adoption Candidate in your Google Play library, the row will have an “adopt” check-box … if you check this box, the track or album will be automatically added into your MediaMonkey database … this and any future plays will be matched, and recorded, just as if you owned the track … it will not re-appear in the Streaming Wizard
    3. hide the item, ie flag it as being “streamed” … the scrobble will be ignored, and any future plays will also be ignored … it will not re-appear in future Streaming Wizard panels or action lists … ie. it is a track which you stream but don’t wish to adopt
  • "Streaming Wizard" dialogue box

The intended use of the Streaming Wizard is as follows:

  • add some tracks or albums, from Google’s streaming library, into your Google library
  • run the update procedure, so that AlbumPlays notices your new Google library items, and records them as Adoption Candidates
  • audition them … ie. play them
  • AlbumPlays’ regular Get|Approve cycle will detect the unknown plays, and if you have activated it, the Streaming Wizard panel will be displayed … processing will pause, waiting for your input
  • ignore, adopt, or hide the unmatched items
  • the Approve action resumes, taking into account any Streaming Wizard updates
  • if unmatched items persist, you may deal with them as described here

Further information about the Streaming Wizard is available here.

.. return to top

Preparation; import track IDs from your Google library

  • Google retain their own (hidden) IDs when you add one of the streamable items, from their library, into your Google library
  • and when you upload your own tracks to Google, each be assigned a (hidden) ID by Google

Before you can adopt a Google album or track, or place into a playlist any item stored in your Google library, AlbumPlays needs to know the IDs by which they are identified at Google.

You achieve this by triggering AlbumPlays to import the dictionary of tracks within your Google library. It will then match those dictionary entries against the tracks in your MediaMonkey database. This is done by comparing the tags (Album, Track, Artist & AlbumArtist names) from your Google library against those in your MediaMonkey database.

Have you uploaded your collection to Google?:

  • if not, you will be coming here only to prepare for track or album adoption into MediaMonkey … in this case will have not much work to do … all you want is for your Google library items to be imported, but remain unmatched, so that AlbumPlays can to see them as adoption candidates

  • if you have uploaded your collection to Google, the size and difficulty of this match-up task will fall somewhere within a range of being a simple fully automated process, to a task requiring quite a lot of assistance from yourself. The point at which your library sits within this range depends upon:

    • the size of your Google library
    • the degree of conformity between Google’s and your own track tags
    • the amount of tracks, that you don’t own, which are included in your Google library … these tracks will not be in your MediaMonkey database, so we don’t need to worry about them, but the issue is that a great number of such tracks may obscure your own tracks, which would match except for some tagging difference between youself and Google

You may have assumed that tracks which you have uploaded to Google should match without any difficulty, but this may not be the case. Google speeds the upload of your collection by only uploading tracks and albums which it doesn’t already have copies of. You gain by a quick and cheap upload, but your library ends up having someone else’s track tags, which adds some complication to matching of Google IDs back into your MediaMonkey database. … You also introduce issues where you have re-tagged some of your local tracks since you uploaded them to Google.

This is not as problematic as it sounds, because AlbumPlays has grown to be very good a tag matching, and employs fuzzy logic during the matching process to assist with small tag differences. It also has quite a few tools to assist with resolving tag differences which defeat the fuzzy logic.

The matching tools are described here and here, where they are documented for the purpose of importing historic scrobbles to seed AlbumPlays’ play history. You will need to read those User Guide sections if you have mismatches to deal with.

Steps required

The steps required are the same whether you are preparing to adopt from your Google library, or whether you are connecting the MediaMonkey version of your tracks, to those in your Google library, so that you may use them in MediaMonkey playlists.

a. Firstly (one time only), supply credentials so that AlbumPlays can access your Google library

The household member, whose Google library you wish to access, needs to:

Although AlbumPlays allows multiple household members to provide their Google credentials, currently just a single listener may use AlbumPlays’ Google library support, ie. the one whose Google track IDs have been imported by the following step.

b. Put AlbumPlays into a special Google import mode via the Set Options button

Set Options button
Set options button
Google ID mode
select your AlbumPlays Listener ID

c. Run the GET action while in Google ID mode

Run the GET action while in Google ID mode
get encryption phrase
You will need to resupply the phrase which was used by AlbumPlays to encrypt your Google account credentials

The special Google import ID mode is identified by the red label illustrated in the image on the left. .. nb. once you are in this mode, the only way to exit it, is to close and then restart AlbumPlays.

A white log screen will open while the track dictionary is being imported. It will go black when complete, and a message will be displayed showing your Google library track count.

d. Match the Google track dictionary against MediaMonkey

AlbumPlays has progressed to APPROVE mode, Press RUN again

nb: this step must be run even if you are not expecting any matches, ie. you are just preparing for adoption

Press the Run button. This step will attempt to match your Google tracks against your MediaMonkey tracks. Fuzzy logic is automatically deployed to handle Google tracks which cannot be found within your MediaMonkey database. It searches through all of your unmatched tracks, looking for a track with a tag set which is a close enough match to a unassigned Google track. If found the match is silently and automatically completed.

If everything can be matched, the Google IDs will be recorded into the AlbumPlays database, and preparation is complete.

But the most likely situation will be that there will be at least some unmatched tracks which need some assistance, in which case the Approve action will pause to allow you to deal with the mismatches

e. Deal with any mismatched tracks; create the list of adoption candidates

The follow step depends upon your goal:

Preparing for track or album adoption? (click to open)

You are nearly done. Tracks or albums, which are in both your MediaMonkey database and your Google library, should now be connected together. If you do have items in both places, and they remain unmatched, you may deal with them as described in other drop-down section. This is optional, as they have no impact upon adoption. … The list of unmatched items is available via the Unmatched Tracks button on the Status Report tab.

When you are ready to create the list of adoption candidates you force close the batch of Google imports as illustrated below.

Force close the batch by checking the “Ignore” checkbox, the press the Run button one last time

The Google ID’s for all matched tracks will be stored into the AlbumPlays database, and the ID’s for any unmatched tracks will become the list of adoption candidates.


Connecting MediaMonkey to your Google library uploads, for use in playlists? (click to open)

Use the AlbumPlays tools described here, and expanded upon here, to address the mismatches which you care about.

The general advice is to:

  • process the album-based action list first; you may be able to fix all tracks from the album with just the one correction
  • rule templates for mismatched albums are sequenced by descending album size .. this is so that you can deal with full albums while you still have energy, as it pushes to the back, any mismatched sole streamed tracks that you have added into your library …. nb: albums where neither the album artist, nor the album, are found in your MediaMonkey library, have been flagged as being streamed, and are already filtered away from view
  • if you mark albums, which you are sure that you don’t own, as being “streamed”, when you next run the Approve action, those marked albums will be removed from view, making it easier to focus upon albums that you care about
  • if there are many mismatched albums, the rule templates are presented in batches to save from exhausting either you or your computer
  • view all album-level template batches (“Next” -> “Next” -> “Next” … until “Finished”), or you may give up once you get down into single tracks, which you don’t care about (just press “Finished”)
  • there may be new fuzzy logic suggestions (ie. the combo boxes may already contain pre-entered suggestions) … if you want to use any of these suggestions, you must approve them by pressing The “Update” button at the bottom of the batch, otherwise the suggestions will be discarded … blank out any suggestions which disagree with before pressing the “Update’Button
  • when all album-level templates batches are “updated”, Press the Run button again, to retry the *Approve” action … this will apply any of your entries, along with the approved fuzzy logic suggestions … the count of unmatched albums should decrease

  • maybe run through this twice, and then proceed to track-based rules

  • much the same process …. make as many manual adjustments as you can be bothered with, and approve those new fuzzy logic suggestions that you agree with …. sometimes the best approach is can be to adjust your MediaMonkey tag to agree with Google … but take care if you are already using AlbumPlays to import your scrobbles from or Sonos units … you need to take the potentially conflicting situations into account, ie. tags vs Google tags vs MediaMonkey vs AlbumPlays (see here)

  • you can always come back later to add further matching rules later… you would need to run all steps again, starting with re-importing the track dictionary, but all of the rules, which you have already created or approved in this step, will be retained, and pre-applied, and filtered away from the action lists

  • force close the batch when you are done

Force close the batch by checking the “Ignore” checkbox, the press the Run button one last time

The Google ID’s for all matched tracks will be stored into the AlbumPlays database, and the ID’s for any unmatched tracks will become the list of adoption candidates.



.. return to top

Handling updates; fresh items added to your Google library, or fresh uploads to Google

You may rerun the preparation process at any time. Do this if you have added fresh tracks or albums into your Google library:

  • either from their subscription service, and you now want to adopt some of those into MediaMonkey
  • or you have uploaded more of your own tracks to Google, and you now want to add them to playlists to be published into your Google library

This update process will not disturb tracks and albums which you have already adopted, or those whose ID’s you have already imported into MediaMonkey. You will only need to deal with any newly added tracks which are unmatched, plus any issues that you left unresolved after your prior run.