How to ensure my FLAC files don't contain ID3 tags? |
![]() ![]() |
How to ensure my FLAC files don't contain ID3 tags? |
Nov 2 2012, 06:11
Post
#1
|
|
|
Group: Members Posts: 1 Joined: 2-November 12 Member No.: 104261 |
Hi all,
XBMC supports ID3 tags and it seems that they natively favour them over Vorbis comments. I have a library of FLAC and I want the proper tags to show. For the most part, there are no ID3 tags, but there are some FLAC files that had them, and this meant it had wrong, or unstandardized tags, which bother me. What I'm asking is this, Is there anyway to know if a FLAC file has ID3 tags? Also, is there anyway to get rid of them automatically? I'm willing to learn how to script... component, anything, I really want to fix this issue! Thanks all! |
|
|
|
Nov 2 2012, 07:49
Post
#2
|
|
![]() Group: Members Posts: 379 Joined: 14-September 11 From: Szczecin, PL Member No.: 93712 |
There's Windows Explorer utility/shell extension called Media Info - freeware (GPL/LGPL) available at Sourceforge. If you open FLAC file in it you will be able to see it. I used it quite long time ago so I'm not sure right now weather it simply reported ID3 frame or MDCI frame, but as far as I remember it was synonymous for my files, ripped with EAC with adding ID3 enabled while ripping.
|
|
|
|
Nov 2 2012, 08:33
Post
#3
|
|
![]() Group: Developer Posts: 295 Joined: 22-November 10 From: Japan Member No.: 85902 |
ID3v2 tag is located at the beginning of the file, and starts with a string "ID3". Therefore you can easily check if it exists by just looking at first 3 byte .
If you are using shell, try something like the following: CODE dd if=foo.flac of=/dev/stdout bs=1 count=3 2>/dev/null It will show first 3 chars of your FLAC file, and it will be either "ID3" or "fLa" or "Ogg". On the other hand, ID3v1 tag is located at the end of the file, and is of exactly 128 bytes length. ID3v1 starts with a string "TAG". It's not as easy as the ID3v2 case, but you can do something like this: CODE x=$(wc -c foo.flac) # get file size in bytes position=$((${x%% *} - 128)) # seek position: file size - 128 dd if=foo.flac of=/dev/stdout bs=1 skip=$position count=3 2>/dev/null As you can see, if you are willing to learn how to write scripts, if will be a trivial task for any scripting languages. |
|
|
|
Nov 22 2012, 14:31
Post
#4
|
|
![]() Group: Members Posts: 379 Joined: 14-September 11 From: Szczecin, PL Member No.: 93712 |
Here is how it looks in mentioned MediaInfo when FLAC is tagged properly, with Vorbis comment:
![]() And here is how it looks in MediaInfo when FLAC is tagged with ID3: ![]() As I said before - MCDI is present when file isn't correctly tagged. |
|
|
|
Nov 22 2012, 15:40
Post
#5
|
|
![]() Group: Members Posts: 379 Joined: 14-September 11 From: Szczecin, PL Member No.: 93712 |
I forgot to add that MediaInfo has also precompiled versions for Linux as well as source code available that let's you compile it on your own.
This post has been edited by EpicForever: Nov 22 2012, 15:41 |
|
|
|
Nov 22 2012, 20:04
Post
#6
|
|
![]() Group: Members Posts: 1468 Joined: 30-November 06 Member No.: 38207 |
-------------------- geocities.com/hydrogenaudio: http://goo.gl/tqYZj
|
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 22nd May 2013 - 00:13 |