SlideShare una empresa de Scribd logo
1 de 30
API Walkthrough @ MusicHackDay Stockholm '13

                            Òscar Celma (@ocelma)

these slides are already available at   http://slideshare.net/ocelma
Gracenote
●
    Founded in 1998
●
    Offices in the U.S. (SF Bay Area), Japan, Korea,
    Taiwan and Germany
●
    300+ employees
Business Verticals




              Music                           Video                             Automotive


Music recognition for Cloud     Interactive Program Guide – TV    Music recognition, playlisting and
  services and Apps             Listings                          metadata clean-up

                                Audio and video recognition for   Cover Art and Artist Images
Discovery and playlisting       Second screen Apps

Linking                                                           Enhanced voice recognition
                                Smart recommendations
Some numbers...
Business Verticals




              Music                           Video                             Automotive


Music recognition for Cloud     Interactive Program Guide – TV    Music recognition, playlisting and
  services and Apps             Listings                          metadata clean-up

                                Audio and video recognition for   Cover Art and Artist Images
Discovery and playlisting       Second screen Apps

Linking                                                           Enhanced voice recognition
                                Smart recommendations
Business Verticals




              Music                           Video                             Automotive


Music recognition for Cloud     Interactive Program Guide – TV    Music recognition, playlisting and
  services and Apps             Listings                          metadata clean-up

                                Audio and video recognition for   Cover Art and Artist Images
Discovery and playlisting       Second screen Apps

Linking                                                           Enhanced voice recognition
                                Smart recommendations
3 developer platforms
Web API
●
    Delivers a rich set of music metadata (XML)
●
    Text Search Query
●
    Returns
       – Artist: genres, origin, decades, images, bio, …
       – Album: cover art, track listing, …
       – Track: tempo, mood, …
Web API
●
    Wrappers
       ●
           Python
            https://github.com/cweichen/pygn 
       ●
           PHP
            https://github.com/richadams/php­gracenote
       ●
           Java
            https://github.com/richadams/java­gracenote
Web API
●
    Wrappers
       ●
           Python
            https://github.com/cweichen/pygn 
       ●
           PHP
            https://github.com/richadams/php­gracenote
       ●
           Java
            https://github.com/richadams/java­gracenote
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')


            Medium Tempo, Heavy Brooding song

         by a Swedish Defiant Punk band from the 1990's
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')


            Medium Tempo, Heavy Brooding song

         by a Swedish Defiant Punk band from the 1990's
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')


            Medium Tempo, Heavy Brooding song

         by a Swedish Defiant Punk band from the 1990's
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')


            Medium Tempo, Heavy Brooding song

         by a Swedish Defiant Punk band from the 1990's
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')


            Medium Tempo, Heavy Brooding song

         by a Swedish Defiant Punk band from the 1990's
Web API

 import pygn # Get it at https://github.com/cweichen/pygn 

 clientID = 'XXXXXX­XXXXXXXXXXXXXXXXXX'
 userID   = pygn.register(clientID) # only call it once!

 metadata = pygn.searchTrack(clientID, userID, 
                           'Backyard Babies', 
                           '', 
                           'Minus Celsius')


            Medium Tempo, Heavy Brooding song

         by a Swedish Defiant Punk band from the 1990's
3 developer platforms
Mobile Client
●
    iOS & Android SDK

●
    Provides all Web API functionality PLUS
        ●
            Library identification (audio fingerprinting)
        ●
            Streaming "Over The Air" identification

●
    Sample iOS & Android application in SDK
3 developer platforms
GNSDK
●
    Good for hardcore C programmers!

●
    Desktop applications
        ●
            Library identification (audio fingerprinting)

●
    Example apps
        ●
            Mood Grid & Playlisting (local collection)
GNSDK
●
    Moodgrid
GNSDK
●
    Playlist generation
    GENERATE PLAYLIST 
    WHERE 
      GN_Tempo > 120 AND 
      GN_Mood LIKE SEED AND
      GN_Genre LIKE SEED
    LIMIT 5 PER GN_ArtistName
GNSDK
Prizes
●
    Theme “please, not another iP*d or Android!”
●
    $300 (per team) Shopping Cart. Select from:




       Arduino        Raspberry Pi               Makey Makey



                                                    ???

     Nike FuelBand           Sony
                      (waterproof! or similar)
Ideas
●
    Facebook likes (or Last.fm music activity) + Gracenote
     metadata create a visualization of a user’s music collection and tastes,
    or his/her friend’s music tastes
●
    Mood-based exploration/navigation of your local collection
●
    Mood Lighting Change the ambient of a room, according to the
    mood/tempo of the song
Contact


https://

                  @GracenoteDev
                Oscar Celma (@ocelma)


                  Get These Slides at

           http://slideshare.net/ocelma

Más contenido relacionado

Similar a Gracenote API - MusicHackDay

Making Music on the Web with MIDI Technology - Music China
Making Music on the Web with MIDI Technology - Music ChinaMaking Music on the Web with MIDI Technology - Music China
Making Music on the Web with MIDI Technology - Music ChinaRyoya Kawai
 
MWC/ADC 2013 Using the Nokia Music Windows Phone APIs
MWC/ADC 2013 Using the Nokia Music Windows Phone APIsMWC/ADC 2013 Using the Nokia Music Windows Phone APIs
MWC/ADC 2013 Using the Nokia Music Windows Phone APIsMicrosoft Mobile Developer
 
Mining the social web for music-related data: a hands-on tutorial
Mining the social web for music-related data: a hands-on tutorialMining the social web for music-related data: a hands-on tutorial
Mining the social web for music-related data: a hands-on tutorialBen Fields
 
Mining the social web for music-related data: a hands-on tutorial
Mining the social web for music-related data: a hands-on tutorialMining the social web for music-related data: a hands-on tutorial
Mining the social web for music-related data: a hands-on tutorialclaudio b
 
Going Platinum: How to Make a Hit API by Bill Doerrfeld, Nordic APIs
Going Platinum: How to Make a Hit API by Bill Doerrfeld, Nordic APIsGoing Platinum: How to Make a Hit API by Bill Doerrfeld, Nordic APIs
Going Platinum: How to Make a Hit API by Bill Doerrfeld, Nordic APIsNordic APIs
 
Machine learning for creative AI applications in music (2018 nov)
Machine learning for creative AI applications in music (2018 nov)Machine learning for creative AI applications in music (2018 nov)
Machine learning for creative AI applications in music (2018 nov)Yi-Hsuan Yang
 
Juraj vysvader - Python developer's CV
Juraj vysvader - Python developer's CVJuraj vysvader - Python developer's CV
Juraj vysvader - Python developer's CVJuraj Vysvader
 
Podcasting & Vodcasting 101
Podcasting & Vodcasting 101Podcasting & Vodcasting 101
Podcasting & Vodcasting 101Emily Lewis
 
Using software modules welcome to hell!
Using software modules   welcome to hell!Using software modules   welcome to hell!
Using software modules welcome to hell!Baruch Sadogursky
 
Audio Analysis with Spotify's Web API
Audio Analysis with Spotify's Web APIAudio Analysis with Spotify's Web API
Audio Analysis with Spotify's Web APIMark Koh
 
Wp dev day_using_the_nokia_music_apis
Wp dev day_using_the_nokia_music_apisWp dev day_using_the_nokia_music_apis
Wp dev day_using_the_nokia_music_apisSteve Robbins
 
2012 djb software_features & topology
2012 djb software_features & topology2012 djb software_features & topology
2012 djb software_features & topologyDJBSoftware
 
Building Android games using LibGDX
Building Android games using LibGDXBuilding Android games using LibGDX
Building Android games using LibGDXJussi Pohjolainen
 
Intro to Building Android Games using libGDX
Intro to Building Android Games using libGDXIntro to Building Android Games using libGDX
Intro to Building Android Games using libGDXJussi Pohjolainen
 
Deep dive into Android’s audio latency problem
Deep dive into Android’s audio latency problemDeep dive into Android’s audio latency problem
Deep dive into Android’s audio latency problemSirawat Pitaksarit
 
Building AI-powered Serverless Applications on AWS
Building AI-powered Serverless Applications on AWSBuilding AI-powered Serverless Applications on AWS
Building AI-powered Serverless Applications on AWSAdrian Hornsby
 
Introduction GStreamer
Introduction GStreamerIntroduction GStreamer
Introduction GStreamerShih-Yuan Lee
 

Similar a Gracenote API - MusicHackDay (20)

Making Music on the Web with MIDI Technology - Music China
Making Music on the Web with MIDI Technology - Music ChinaMaking Music on the Web with MIDI Technology - Music China
Making Music on the Web with MIDI Technology - Music China
 
MWC/ADC 2013 Using the Nokia Music Windows Phone APIs
MWC/ADC 2013 Using the Nokia Music Windows Phone APIsMWC/ADC 2013 Using the Nokia Music Windows Phone APIs
MWC/ADC 2013 Using the Nokia Music Windows Phone APIs
 
Mining the social web for music-related data: a hands-on tutorial
Mining the social web for music-related data: a hands-on tutorialMining the social web for music-related data: a hands-on tutorial
Mining the social web for music-related data: a hands-on tutorial
 
Mining the social web for music-related data: a hands-on tutorial
Mining the social web for music-related data: a hands-on tutorialMining the social web for music-related data: a hands-on tutorial
Mining the social web for music-related data: a hands-on tutorial
 
Going Platinum: How to Make a Hit API by Bill Doerrfeld, Nordic APIs
Going Platinum: How to Make a Hit API by Bill Doerrfeld, Nordic APIsGoing Platinum: How to Make a Hit API by Bill Doerrfeld, Nordic APIs
Going Platinum: How to Make a Hit API by Bill Doerrfeld, Nordic APIs
 
Machine learning for creative AI applications in music (2018 nov)
Machine learning for creative AI applications in music (2018 nov)Machine learning for creative AI applications in music (2018 nov)
Machine learning for creative AI applications in music (2018 nov)
 
Juraj vysvader - Python developer's CV
Juraj vysvader - Python developer's CVJuraj vysvader - Python developer's CV
Juraj vysvader - Python developer's CV
 
Podcasting & Vodcasting 101
Podcasting & Vodcasting 101Podcasting & Vodcasting 101
Podcasting & Vodcasting 101
 
Using software modules welcome to hell!
Using software modules   welcome to hell!Using software modules   welcome to hell!
Using software modules welcome to hell!
 
Audio Analysis with Spotify's Web API
Audio Analysis with Spotify's Web APIAudio Analysis with Spotify's Web API
Audio Analysis with Spotify's Web API
 
Wp dev day_using_the_nokia_music_apis
Wp dev day_using_the_nokia_music_apisWp dev day_using_the_nokia_music_apis
Wp dev day_using_the_nokia_music_apis
 
Information Aesthetics
Information AestheticsInformation Aesthetics
Information Aesthetics
 
Web & sound
Web & soundWeb & sound
Web & sound
 
Otto AI
Otto AIOtto AI
Otto AI
 
2012 djb software_features & topology
2012 djb software_features & topology2012 djb software_features & topology
2012 djb software_features & topology
 
Building Android games using LibGDX
Building Android games using LibGDXBuilding Android games using LibGDX
Building Android games using LibGDX
 
Intro to Building Android Games using libGDX
Intro to Building Android Games using libGDXIntro to Building Android Games using libGDX
Intro to Building Android Games using libGDX
 
Deep dive into Android’s audio latency problem
Deep dive into Android’s audio latency problemDeep dive into Android’s audio latency problem
Deep dive into Android’s audio latency problem
 
Building AI-powered Serverless Applications on AWS
Building AI-powered Serverless Applications on AWSBuilding AI-powered Serverless Applications on AWS
Building AI-powered Serverless Applications on AWS
 
Introduction GStreamer
Introduction GStreamerIntroduction GStreamer
Introduction GStreamer
 

Más de Oscar Celma

MusicHackDay - Stockholm 2013
MusicHackDay - Stockholm 2013MusicHackDay - Stockholm 2013
MusicHackDay - Stockholm 2013Oscar Celma
 
MusicDiscoBerry: the bittersweet high-hanging fruit
MusicDiscoBerry: the bittersweet high-hanging fruitMusicDiscoBerry: the bittersweet high-hanging fruit
MusicDiscoBerry: the bittersweet high-hanging fruitOscar Celma
 
Bmat ELLA Music Hack Day Barcelona
Bmat ELLA Music Hack Day BarcelonaBmat ELLA Music Hack Day Barcelona
Bmat ELLA Music Hack Day BarcelonaOscar Celma
 
Music Recommendation and Discovery in the Long Tail
Music Recommendation and Discovery in the Long TailMusic Recommendation and Discovery in the Long Tail
Music Recommendation and Discovery in the Long TailOscar Celma
 
The Quest for Musical Genres: Do the Experts and the Wisdom of Crowds Agree?
The Quest for Musical Genres: Do the Experts and the Wisdom of Crowds Agree?The Quest for Musical Genres: Do the Experts and the Wisdom of Crowds Agree?
The Quest for Musical Genres: Do the Experts and the Wisdom of Crowds Agree?Oscar Celma
 
From hits to niches? ...or how popular artists can bias music recommendation ...
From hits to niches? ...or how popular artists can bias music recommendation ...From hits to niches? ...or how popular artists can bias music recommendation ...
From hits to niches? ...or how popular artists can bias music recommendation ...Oscar Celma
 
Music Recommendation and Discovery in...which Web?
Music Recommendation and Discovery in...which Web?Music Recommendation and Discovery in...which Web?
Music Recommendation and Discovery in...which Web?Oscar Celma
 
Annotating Music Collections: How Content-Based Similarity Helps to Propagate...
Annotating Music Collections: How Content-Based Similarity Helps to Propagate...Annotating Music Collections: How Content-Based Similarity Helps to Propagate...
Annotating Music Collections: How Content-Based Similarity Helps to Propagate...Oscar Celma
 
Music Recommendation Tutorial
Music Recommendation TutorialMusic Recommendation Tutorial
Music Recommendation TutorialOscar Celma
 

Más de Oscar Celma (11)

Mhd nyc-2013
Mhd nyc-2013Mhd nyc-2013
Mhd nyc-2013
 
MusicHackDay - Stockholm 2013
MusicHackDay - Stockholm 2013MusicHackDay - Stockholm 2013
MusicHackDay - Stockholm 2013
 
MusicDiscoBerry: the bittersweet high-hanging fruit
MusicDiscoBerry: the bittersweet high-hanging fruitMusicDiscoBerry: the bittersweet high-hanging fruit
MusicDiscoBerry: the bittersweet high-hanging fruit
 
Buddhafy
BuddhafyBuddhafy
Buddhafy
 
Bmat ELLA Music Hack Day Barcelona
Bmat ELLA Music Hack Day BarcelonaBmat ELLA Music Hack Day Barcelona
Bmat ELLA Music Hack Day Barcelona
 
Music Recommendation and Discovery in the Long Tail
Music Recommendation and Discovery in the Long TailMusic Recommendation and Discovery in the Long Tail
Music Recommendation and Discovery in the Long Tail
 
The Quest for Musical Genres: Do the Experts and the Wisdom of Crowds Agree?
The Quest for Musical Genres: Do the Experts and the Wisdom of Crowds Agree?The Quest for Musical Genres: Do the Experts and the Wisdom of Crowds Agree?
The Quest for Musical Genres: Do the Experts and the Wisdom of Crowds Agree?
 
From hits to niches? ...or how popular artists can bias music recommendation ...
From hits to niches? ...or how popular artists can bias music recommendation ...From hits to niches? ...or how popular artists can bias music recommendation ...
From hits to niches? ...or how popular artists can bias music recommendation ...
 
Music Recommendation and Discovery in...which Web?
Music Recommendation and Discovery in...which Web?Music Recommendation and Discovery in...which Web?
Music Recommendation and Discovery in...which Web?
 
Annotating Music Collections: How Content-Based Similarity Helps to Propagate...
Annotating Music Collections: How Content-Based Similarity Helps to Propagate...Annotating Music Collections: How Content-Based Similarity Helps to Propagate...
Annotating Music Collections: How Content-Based Similarity Helps to Propagate...
 
Music Recommendation Tutorial
Music Recommendation TutorialMusic Recommendation Tutorial
Music Recommendation Tutorial
 

Gracenote API - MusicHackDay