Changeset 5624:ec1593cc8525 in roaraudio for roard/codecfilter_flac.c
- Timestamp:
- 08/18/12 02:04:07 (12 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
roard/codecfilter_flac.c
r5381 r5624 116 116 const FLAC__StreamMetadata_VorbisComment * vc; 117 117 FLAC__uint32 i; 118 struct roar_stream_rpg rpg; 118 119 const char * key, * value; 119 120 char keycopy[ROAR_META_MAX_NAMELEN]; 120 121 int type; 121 float rpg_track = 0, rpg_album = 0 ;122 float rpg_track = 0, rpg_album = 0, rpg_final = 0; 122 123 123 124 if ( metadata->type == FLAC__METADATA_TYPE_VORBIS_COMMENT ) { … … 171 172 } 172 173 173 if ( rpg_album ) { 174 self->ss->mixer.rpg_div = 2718; // = int(exp(1)*1000) 175 self->ss->mixer.rpg_mul = (float)rpg_album*2718; 176 } else if ( rpg_track ) { 177 self->ss->mixer.rpg_div = 2718; 178 self->ss->mixer.rpg_mul = (float)rpg_track*2718; 174 if ( streams_get_rpg(ROAR_STREAM(self->ss)->id, &rpg) != -1 ) { 175 rpg_final = 0; 176 177 switch (rpg.mode) { 178 case ROAR_RPGMODE_NONE: rpg_final = 0.; break; 179 case ROAR_RPGMODE_USER: rpg_final = -1.; break; 180 case ROAR_RPGMODE_ALBUM: rpg_final = rpg_album; break; 181 case ROAR_RPGMODE_TRACK: rpg_final = rpg_track; break; 182 case ROAR_RPGMODE_ALBUMTRACK: rpg_final = rpg_album ? rpg_album : rpg_track; break; 183 case ROAR_RPGMODE_TRACKALBUM: rpg_final = rpg_track ? rpg_track : rpg_album; break; 184 } 185 186 if ( rpg_final > 0 ) { 187 self->ss->mixer.rpg_div = 2718; 188 self->ss->mixer.rpg_mul = (float)rpg_final*2718; 189 } else if ( !rpg_final ) { 190 self->ss->mixer.rpg_div = 1; 191 self->ss->mixer.rpg_mul = 1; 192 } 179 193 } 180 194
Note: See TracChangeset
for help on using the changeset viewer.