Load ID3 extended data from current stream. (UNICODE version) Only in version 2.00 and above.
virtual __stdcall int LoadID3ExW(TID3InfoExW * pId3Info, unsigned int fDecodeEmbededPicture) = 0;
Parameters |
Description |
TID3InfoExW * pId3Info |
Pointer to TID3InfoExW structure receiving ID3 data. User must allocate memory for this structure. |
unsigned int fDecodeEmbededPicture |
Set to 1 to decode attached jpeg, png picture to HBITMAP. See Remarks section. |
Return Values |
Description |
1 |
All OK. |
0 |
Error. To get error message read here. |
Check supported formats for info tag support. Some formats can support some sort of "Info tags", but not all.
libZPlay library implements "ID3 tag" interface to different info tags (VORBIS comment, RIFF Info, ...). So, you can retrieve ID3 informations from different streams (mp3, ogg, flac, wav) because library will convert "format specific tag" to ID3 tag info.
Note: |
This function can retrieve attached picture from info tag. If you need to draw this picture on screen, set fDecodeEmbededPicture parameter to 1 to decode attached picture into HBITMAP. Library can decode jpeg and png image. To draw picture on screen use DrawBitmapToHDC or DrawBitmapToHWND with hBitmap member from TID3Picture. If attached image format is not supported by internal image decoder, use PictureData and PictureDataSize members from TID3Picture and decode these data with your own image decoder. Use MIMEType to determine format of attached image (image/gif, image/tiff, ...). |
Load ID3 info from current stream and draw picture on screen.
TID3InfoExW id3_info; if(instance->LoadID3ExW(&id3_info, 1)) { wprintf(L"Title: %s\n", id3_info.Title); wprintf(L"Artist: %s\n", id3_info.Artist); wprintf(L"Album: %s\n", id3_info.Album); wprintf(L"Year: %s\n", id3_info.Year); wprintf(L"Comment: %s\n", id3_info.Comment); wprintf(L"Genre: %s\n", id3_info.Genre); wprintf(L"Track: %s\n", id3_info.TrackNum); if(id3_info.Picture.CanDrawPicture) instance->DrawBitmapToHWND(NULL, 0, 0, 0, 0, id3_info.Picture.hBitmap); else { // can't decode attached image to hBitmap, use PictureData and PictureDataSize // to decode this format by your own image decoder } }
Copyright (c) 2010. Zoran Cindori - All rights reserved.
Web: http://libzplay.sourceforge.net/ Email: zcindori@inet.hr |