Advertisement
Guest User

mp3genre.c

a guest
Feb 20th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.29 KB | None | 0 0
  1. #include "mp3genre.h"
  2.  
  3. void get_mp3_genre(const char* filename, char *id3_genreg) {
  4.         FILE *fp;
  5.         unsigned char id3_genre_num[1];
  6.         char mp3_fbuf[3];
  7.         if (!(fp=fopen(filename,"rb"))) {
  8.                 id3_genreg = malloc(strlen("Unknown") + 1);
  9.                 strncpy ( id3_genreg, "Unknown", strlen("Unknown") );
  10.         }
  11.         if (fseek(fp,-128,SEEK_END)) {
  12.                 id3_genreg = malloc(strlen("Unknown") + 1);
  13.                 strncpy ( id3_genreg, "Unknown", strlen("Unknown") );
  14.         } else {
  15.                 fread(mp3_fbuf,1,3,fp);
  16.                 mp3_fbuf[3] = '\0';
  17.                 id3_genre_num[0]=255;
  18.                 if (!strcmp((const char *)"TAG",(const char *)mp3_fbuf)) {
  19.                         fseek(fp, -1, SEEK_END);
  20.                         fread(id3_genre_num,1,1,fp);
  21.                         if(id3_genre_num[0] != '\0' && id3_genre_num[0] > 0 && id3_genre_num[0] < genre_count) {
  22.                                 *id3_genreg = malloc(strlen(genre_s[id3_genre_num[0]]) + 1);
  23.                                 strncpy  ( id3_genreg, genre_s[id3_genre_num[0]], strlen(genre_s[id3_genre_num[0]]) );
  24.                                 id3_genreg[strlen(genre_s[id3_genre_num[0]])]= '\0';
  25.                         }
  26.                 }
  27.         }
  28. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement