Open danoryl opened 12 years ago
Hi,
the metadata expierience entirely depends on what the underlying ffmpeg/libav version provides. Unknown genre is written in the db by forked daapd only if genre is not set or it does not see it.
A simple check would be to #ffmpeg -i filename for the files in question and see what it returns for genre.
Further checks of interest might be to open the db in sqlite3 cmd line tool (#sqlite3 /var/cache/forked_daapd/yourdb.db) and query the files table i.e. like that: >> select fname,title,genre from files; (load the sql extension beforehand for proper unicode support >> .load /usr/lib/forked-daapd/forked-daapd-sqlext.so; All of this assumes standard installation paths) But that likely won't reveal anything new as I guess it shows the same as it itunes)
If you happen to compile forked daapd yourself you may want to enable the metadata dump in filescanner_ffmpeg.c line 223. This will dump all metadata ffmpeg sees in the logs (full rescan of library require though i.e by deleting your db)
I had the same problem with m4a files, so I submitted some relevant patches to libav. From mid-October, libav and ffmpeg have been able to extract MP4/MOV/M4A genre metadata (both gnre and ©gen), tracknumbers/tracktotals and discnumbers/disctotals), plus all that was included in the Ace Jones ffmpeg tv metadata patch that's in the tree. You must update your libav or ffmpeg version (I believe the latest ffmpeg, 0.9, already includes the patches, otherwise use git), possibly rebuild forked-daapd against it (never tried without this step) and then rebuild the database.
Great to hear someone finaly got on to the task supplying those patches to ffmpeg/libav. This is good news. Thanks. I never got myself convinced to get involved with supplying those patches to ffmpeg. Though libav may be different now.
I am not familiar with the intricacies of the Big Split between ffmpeg and libav, but it appears that the two camps closely monitor each others' commits and mostly adopt what the other team is doing. So when I finally managed to get the patches good enough for the libav team to be accepted, they almost immediately showed up in the ffmpeg tree, too. Even better.
Should danosavi be unable to upgrade ffmpeg/libav just yet, I have a temporary workaround. Just open all the "unknown genre" M4A files in iTunes and add a space at the end of the genre name. The problem with ffmpeg/libav until recently was that the ID3 genre tags (i.e. the gnre atom: standard genres like Rock, Jazz, Blues etc) were not picked up, only the custom ones in the ©gen atom (i.e. "Radical Metal from Poland" etc). Adding a space at the end of a gnre atom turns it into a ©gen atom and thus parsable by older ffmpeg/libav versions.
For the record, Western Digital's new "My Book Live" NAS ships with Debian Linux and a copy of this project for its iTunes server. As of the writing of this comment, the latest version of their device software includes outdated ffmpeg libraries that do not have this fix attached.
I'll contact WD and let them know to roll out an update to address this issue.
Hi, I've just installed forked-daapd on Xubuntu 11.10 and it works flawlessly, except for one problem. I use iTunes on a Mac to connect to my linuxbox, and even if all the library shows up and is scanned correctly, most of the songs are shown with "Unknown genre" tag.
All the songs were made using the same encoder and in the same format (m4a aac). Other tags are scanned correctly, even all the album artwork.
For example, in this picture you can see two albums which were made the same day, with the same software, from the same source. One is showing the correct genre, the other not.
Is there something I can do?