Google's new Pixel 2 lineup can recognize music playing around them thanks to a new feature called 'Now Playing', and an XDA Developers member by the name of Kieron Quinn has managed to pull and deconstruct the database file that shows all of the more than 10,000 songs that are included in the feature. This database, among other bits, allows the feature to work offline, and makes recognition easier, allowing the phone to figure out what song is playing with minimal effort and without having to open up any foreground apps. There are 17,300 titles listed, including some duplicates, though it is possible that the tool used to pull and parse the database did not catch every song.
The full measure of the database is staggering at a glance, but in practicality, those with eclectic music tastes, especially in the international sense, may find themselves wanting. While a ton of American music made the list, there's a tiny selection of Korean pop, a relatively popular international genre, and an almost equally small number of Latin tunes. If Rammstein was your gateway to German folk metal or you're into the flashy, quirky scene that is Japanese visual kei, you'll find that your Pixel 2 or Pixel 2 XL won't be able to keep pace; even popular names like Subway To Sally and Acid Black Cherry were missing. Google has stated that this database could be updated in the future, however, so those whose music tastes venture out of the bounds of the current database may find the feature responding to their unconventional tastes a bit better as time goes by.
The database itself is all contained within a matcher.leveldb file hidden in the Pixel 2's system files. The database file, in the incarnation that Quinn pulled and decoded, weighs in at 53MB. While that's not a lot in terms of space on modern devices, the database itself seems to be a text-only affair, so there's either another element to the database that the APK tool and script could not extract, or the song names and metadata for over 10,000 songs can simply get out of hand in regards to file size. Even after this teardown, it's still unclear how the file will be updated, and whether the process will require user input.