spAudio
Loading...
Searching...
No Matches
spWave.h File Reference
#include <sp/spDefs.h>
#include <sp/spAudioDefs.h>
Include dependency graph for spWave.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  spWaveInfo
 
struct  spSongInfo
 
struct  spSongInfoV2
 

Macros

#define SP_WAVE_FILE_TYPE_SIZE   32
 
#define SP_WAVE_FILE_DESC_SIZE   128
 
#define SP_WAVE_FILE_FILTER_SIZE   32
 
#define SP_SONG_NO_INFO   0
 
#define SP_SONG_TRACK_MASK   (1L<<0)
 
#define SP_SONG_TITLE_MASK   (1L<<1)
 
#define SP_SONG_ARTIST_MASK   (1L<<2)
 
#define SP_SONG_ALBUM_MASK   (1L<<3)
 
#define SP_SONG_GENRE_MASK   (1L<<4)
 
#define SP_SONG_RELEASE_MASK   (1L<<5)
 
#define SP_SONG_COPYRIGHT_MASK   (1L<<6)
 
#define SP_SONG_ENGINEER_MASK   (1L<<7)
 
#define SP_SONG_SOURCE_MASK   (1L<<8)
 
#define SP_SONG_SOFTWARE_MASK   (1L<<9)
 
#define SP_SONG_SUBJECT_MASK   (1L<<10)
 
#define SP_SONG_COMMENT_MASK   (1L<<11)
 
#define SP_SONG_ALBUM_ARTIST_MASK   (1L<<12)
 
#define SP_SONG_COMPOSER_MASK   (1L<<13)
 
#define SP_SONG_LYRICIST_MASK   (1L<<14)
 
#define SP_SONG_PRODUCER_MASK   (1L<<15)
 
#define SP_SONG_ISRC_MASK   (1L<<16)
 
#define SP_SONG_TRACK_TOTAL_MASK   (1L<<17)
 
#define SP_SONG_DISC_MASK   (1L<<18)
 
#define SP_SONG_DISC_TOTAL_MASK   (1L<<19)
 
#define SP_SONG_TEMPO_MASK   (1L<<20)
 
#define SP_SONG_ID3V1_MASK   (1L<<24)
 
#define SP_SONG_ID3V2_2_MASK   (1L<<25)
 
#define SP_SONG_ID3V2_3_MASK   (1L<<26)
 
#define SP_SONG_ID3V2_4_MASK   (1L<<27)
 
#define SP_SONG_UTF8_STRING_IN_FILE_MASK   (1L<<28)
 
#define SP_SONG_ISO8859_1_STRING_IN_FILE_MASK   (1L<<29)
 
#define SP_SONG_ID3V2_SUPPORT_MASK   (SP_SONG_TRACK_MASK|SP_SONG_TITLE_MASK|SP_SONG_ARTIST_MASK|SP_SONG_ALBUM_MASK|SP_SONG_GENRE_MASK|SP_SONG_RELEASE_MASK|SP_SONG_COPYRIGHT_MASK|SP_SONG_ENGINEER_MASK|SP_SONG_SOURCE_MASK|SP_SONG_SOFTWARE_MASK|SP_SONG_COMMENT_MASK|SP_SONG_ALBUM_ARTIST_MASK|SP_SONG_COMPOSER_MASK|SP_SONG_LYRICIST_MASK|SP_SONG_ISRC_MASK|SP_SONG_TRACK_TOTAL_MASK|SP_SONG_DISC_MASK|SP_SONG_DISC_TOTAL_MASK|SP_SONG_TEMPO_MASK)
 
#define SP_SONG_ID3V2_2_SUPPORT_MASK   (SP_SONG_ID3V2_SUPPORT_MASK|SP_SONG_ID3V2_2_MASK)
 
#define SP_SONG_ID3V2_3_SUPPORT_MASK   (SP_SONG_ID3V2_SUPPORT_MASK|SP_SONG_ID3V2_3_MASK)
 
#define SP_SONG_ID3V2_4_SUPPORT_MASK   (SP_SONG_ID3V2_SUPPORT_MASK|SP_SONG_ID3V2_4_MASK)
 
#define SP_SONG_ID3V2_ALL_SUPPORT_MASK   (SP_SONG_ID3V2_SUPPORT_MASK|SP_SONG_ID3V2_2_MASK|SP_SONG_ID3V2_3_MASK|SP_SONG_ID3V2_4_MASK)
 
#define SP_SONG_INFO_SIZE   128
 
#define SP_SONG_INFO_GENRE_SIZE   32
 
#define SP_SONG_INFO_ALBUM_ARTIST_SIZE   96
 
#define SP_SONG_INFO_RELEASE_SIZE   48
 
#define SP_SONG_INFO_PRODUCER_SIZE   64
 
#define SP_SONG_INFO_SOURCE_SIZE   48
 
#define SP_SONG_INFO_COMPOSER_SIZE   80
 
#define SP_SONG_INFO_SOFTWARE_SIZE   48
 
#define SP_SONG_INFO_LYRICIST_SIZE   80
 
#define SP_SONG_INFO_SUBJECT_SIZE   104
 
#define SP_SONG_INFO_ISRC_SIZE   24
 

Functions

spBool spInitWaveInfo (spWaveInfo *wave_info)
 
spBool spCopyWaveInfo (spWaveInfo *dest_info, spWaveInfo *src_info)
 
spBool spInitSongInfo (spSongInfo *song_info)
 
spBool spInitSongInfoV2 (spSongInfoV2 *song_info)
 
spBool spCopySongInfo (spSongInfo *dest_info, spSongInfo *src_info)
 
spBool spCopySongInfoV2 (spSongInfoV2 *dest_info, spSongInfoV2 *src_info)
 
spBool spEqSongInfo (spSongInfo *info1, spSongInfo *info2)
 
spBool spEqSongInfoV2 (spSongInfoV2 *info1, spSongInfoV2 *info2)
 
spBool spShowSongInfo (spSongInfo *song_info, const char *indent, FILE *fp)
 
spBool spShowSongInfoV2 (spSongInfoV2 *song_info, const char *indent, FILE *fp)
 

Function Documentation

◆ spInitWaveInfo()

spBool spInitWaveInfo ( spWaveInfo * wave_info)
extern

Initialize contents of spWaveInfo .

Examples
rec.c.

◆ spCopyWaveInfo()

spBool spCopyWaveInfo ( spWaveInfo * dest_info,
spWaveInfo * src_info )
extern

Copy contents of spWaveInfo to another.

◆ spInitSongInfo()

spBool spInitSongInfo ( spSongInfo * song_info)
extern

Initialize contents of spSongInfo .

◆ spInitSongInfoV2()

spBool spInitSongInfoV2 ( spSongInfoV2 * song_info)
extern

Initialize contents of spSongInfoV2 .

◆ spCopySongInfo()

spBool spCopySongInfo ( spSongInfo * dest_info,
spSongInfo * src_info )
extern

Copy contents of spSongInfo to another.

◆ spCopySongInfoV2()

spBool spCopySongInfoV2 ( spSongInfoV2 * dest_info,
spSongInfoV2 * src_info )
extern

Copy contents of spSongInfoV2 to another.

◆ spEqSongInfo()

spBool spEqSongInfo ( spSongInfo * info1,
spSongInfo * info2 )
extern

Check if contents of two spSongInfo variables are identical.

◆ spEqSongInfoV2()

spBool spEqSongInfoV2 ( spSongInfoV2 * info1,
spSongInfoV2 * info2 )
extern

Check if contents of two spSongInfoV2 variables are identical.

◆ spShowSongInfo()

spBool spShowSongInfo ( spSongInfo * song_info,
const char * indent,
FILE * fp )
extern

Display contents of spSongInfo information.

◆ spShowSongInfoV2()

spBool spShowSongInfoV2 ( spSongInfoV2 * song_info,
const char * indent,
FILE * fp )
extern

Display contents of spSongInfoV2 information.