song: added function song_get_duration()
This commit is contained in:
		| @@ -135,8 +135,7 @@ searchStatsInDirectory(struct song *song, void *data) | ||||
|  | ||||
| 	if (locate_song_match(song, stats->criteria)) { | ||||
| 		stats->numberOfSongs++; | ||||
| 		if (song->tag->time > 0) | ||||
| 			stats->playTime += song->tag->time; | ||||
| 		stats->playTime += song_get_duration(song); | ||||
| 	} | ||||
|  | ||||
| 	return 0; | ||||
|   | ||||
| @@ -212,8 +212,7 @@ player_wait_for_decoder(struct player *player) | ||||
| 	player_lock(); | ||||
|  | ||||
| 	/* update player_control's song information */ | ||||
| 	pc.total_time = pc.next_song->tag != NULL | ||||
| 		? pc.next_song->tag->time : 0; | ||||
| 	pc.total_time = song_get_duration(pc.next_song); | ||||
| 	pc.bit_rate = 0; | ||||
| 	audio_format_clear(&pc.audio_format); | ||||
|  | ||||
|   | ||||
| @@ -80,3 +80,12 @@ song_get_uri(const struct song *song) | ||||
| 		return g_strconcat(directory_get_path(song->parent), | ||||
| 				   "/", song->uri, NULL); | ||||
| } | ||||
|  | ||||
| double | ||||
| song_get_duration(const struct song *song) | ||||
| { | ||||
| 	if (song->tag == NULL) | ||||
| 		return 0; | ||||
|  | ||||
| 	return song->tag->time; | ||||
| } | ||||
|   | ||||
| @@ -69,6 +69,9 @@ song_file_update_inarchive(struct song *song); | ||||
| char * | ||||
| song_get_uri(const struct song *song); | ||||
|  | ||||
| double | ||||
| song_get_duration(const struct song *song); | ||||
|  | ||||
| static inline bool | ||||
| song_in_database(const struct song *song) | ||||
| { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Max Kellermann
					Max Kellermann