The roAudioMetadata component provides developers access to audio file metadata included in many audio files. This should enable some audiofiles to deliver the information needed to fill out an roSpringboard screen without passing the info in a separate xml feed. roAudioMetadata currently only works with local file URLs.
Supported Interfaces
Description
The roAudioMetadata requires the use of a dynamically loaded library that is not part of the initially booted image. Therefore, an entry must be added to the manifest of any applications that use the roAudioMetadata component so it can be loaded when the channel is launched. Here's the manifest entry:
requires_audiometadata=1
This object is created without any arguments:
- CreateObject("roAudioMetadata")
Example
REM printAA() is from generalUtils.brs in our sample apps REM and used to print an associative Array Sub SaveCoverArtFile(filename As String) meta = CreateObject("roAudioMetadata") meta.SetUrl(filename) print "------------- GetTags() -------------------------" tags = meta.GetTags() printAA(tags) print "------------- GetAudioProperties() --------------" properties = meta.GetAudioProperties() printAA(properties) print "------------- GetCoverArt() ---------------------" thumbnail = meta.GetCoverArt() if (thumbnail <> invalid) then if (thumbnail.bytes = invalid) then return end if imgtype = thumbnail.type image_ext="" if (imgtype = "image/jpeg" or imgtype = "jpg") then image_ext = "jpg" else if (imgtype = "image/png" or imgtype = "png") then image_ext = "png" else image_ext = "jpg" end if tmp_img = "tmp:/CoverArtImage" + "." + image_ext if (tmp_img <> invalid) then DeleteFile(tmp_img) end if thumbnail.bytes.Writefile(tmp_img) end if End Sub