Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I'm new in Ubuntu, I'm running Ubuntu 12.04.1 LTS x64, and I have some songs in Arabic. Rhythmbox plays them alright but it doesn't show the album artist or the song titles in Arabic Characters.

I tried to change the regional format to Arabic but it didnt help. In a similar situation in Windows, the solution is to change the non-unicode language to Arabic. I dont know if the solution here is the same, and if it is how to do it.

I am liking Ubuntu very much and its a pity that I have this problem, it would be perfect for me if it can be fixed. Any help or support would be appreciated.

share|improve this question
2  
Which format is your music in: flac, ogg, mp3, wav, something else? I had some arabic tags in mp3s, probably in ID3v2.3 or 2.4 format, encoded in UTF-8 and they display ok in rhythmbox. –  taneli Sep 17 '12 at 0:07
    
most of the files are mp3s, i made some research and i found out that those files are tagged in ID3v1 which is the reason why they cannot be recognized, so i have to change the tag version manually, any recommendation to make this job easier is appreciated –  user90916 Sep 18 '12 at 13:49

1 Answer 1

For a single file, the only option(*) that I could make to work was this:

id3v2 -a "$(mp3info -p "%a" foo.mp3|iconv -f windows-1256 -t utf-8)"\
-A "$(mp3info -p "%l" foo.mp3|iconv -f windows-1256 -t utf-8)"\
-t "$(mp3info -p "%t" foo.mp3|iconv -f windows-1256 -t utf-8)" foo.mp3

for a single file called foo.mp3. It resulted in ID3v1 (or 1.1) tags in windows-1256 being converted v2.3 tags in utf-8. The following caveats apply:

  • If your tags are not Windows-1256 (for example, they're instead ISO-8859-6 or not arabic at all), the command will irrecoverably mangle them, without warning
  • I only tested it with one file, that had no album info, so might not work for all cases
  • It may or may not convert other tags, such as track number, year, genre, etc.
  • I don't have Windows, so no clue whether the resulting files work there

If it works, put the command in a file, call it "retag.sh", replace foo.mp3 with "$1" (including the quotes). Then make a copy of all relevant mp3s cp -a Music/mp3 Music/retagged-mp3 and replace with abandon: find Music/retagged-mp3 -type f -print0|xargs -0 retag.sh. Once verified that they show ok and play ok and none were lost in conversion, replace the original mp3s with retagged ones.

(*) I tried lltag and id3v2 for reading the tags on command line, but that didn't work. puddletag, exfalso and easytag wouldn't show the tags at all, and tagtool would show them assuming ISO-8859-1 encoding.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.