{"id":11351,"date":"2008-08-27T23:51:09","date_gmt":"2008-08-27T20:51:09","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=11351"},"modified":"2008-08-27T23:51:09","modified_gmt":"2008-08-27T20:51:09","slug":"convert-russian-mp3-id3-tags-from-koi8-cp1251-to-utf8","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2008\/08\/27\/convert-russian-mp3-id3-tags-from-koi8-cp1251-to-utf8\/","title":{"rendered":"mp3 collection maintenance"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>I have a rather large MP3 collection.\u00a0 The directories and files are named correctly more or less, but ID3 tags used to be a mess until very recently.\u00a0 Two applications helped me to bring some order in that mess.<\/p>\n<p><a href=\"http:\/\/easytag.sourceforge.net\/\">EasyTag<\/a>, a GUI application, that helped me to fix lots of broken and add lots of missing comments to my MP3 files.\u00a0 The smart thing about this program is that it can figure out a lot of data from the names of the files and directories, and that it can grab and replicate partial data from within the albums.<\/p>\n<p>The second program that I wanted to mention, I just found out about today (thanks to <a href=\"http:\/\/delicious.com\/nite_man\">Michael Stepanov&#8217;s delicious bookmarks<\/a>).\u00a0 It&#8217;s called <a href=\"http:\/\/sourceforge.net\/projects\/tag2utf\">tag2utf<\/a>.\u00a0 It&#8217;s a little Python script that converts the encoding of ID3 tags from koi8 or cp1251 (two most widely used Russian encodings) to utf8.\u00a0 It&#8217;s very easy to install (the only requirement my system needed was python-eye3d library, which exists in Fedora repository) and use.\u00a0 Just run it from the command line with no parameters and it will recursively look in the current directory for any files that have ID3 tags in non-utf8 encoding.\u00a0 It will then give you a choice of two encodings to select from (koi8 or cp1251), a &#8220;skip&#8221; option, and a &#8220;manual&#8221; option.\u00a0 All you will have to do is take a quick look at the files, and chose to either convert them from one of the two options, skip them or convert manually one by one.\u00a0 You will have to make this choice for every directory with non-utf8 files.\u00a0 Optionally, you can specify on the command line which directories to scan.\u00a0 In case you need to convert from some other non-Russian encoding to utf8, the script is trivial to modify.<\/p>\n<p>Both tools are excellent pieces of software.\u00a0 It took me practically no time at all to fix my mp3 collection.\u00a0 Now I can search it better, and all files display nicely in any mp3 player.\u00a0 Brilliant stuff!<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>I have a rather large MP3 collection.\u00a0 The directories and files are named correctly more or less, but ID3 tags used to be a mess until very recently.\u00a0 Two applications helped me to bring some order in that mess. EasyTag, a GUI application, that helped me to fix lots of broken and add lots of &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2008\/08\/27\/convert-russian-mp3-id3-tags-from-koi8-cp1251-to-utf8\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">mp3 collection maintenance<\/span><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_links_to":"","_links_to_target":""},"categories":[1,31,133,62],"tags":[944,1597,2909,39,19,1595],"keyring_services":[],"class_list":["post-11351","post","type-post","status-publish","format-standard","hentry","category-general","category-music","category-sysadmin","category-technology","tag-entertainment","tag-maintenance","tag-russia","tag-software","tag-tools","tag-utf8"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":8319,"url":"https:\/\/mamchenkov.net\/wordpress\/2004\/12\/10\/disappearing-files\/","url_meta":{"origin":11351,"position":0},"title":"Disappearing files","author":"Leonid Mamchenkov","date":"December 10, 2004","format":false,"excerpt":"Some known facts can use more reminders... Fedora Core Linux 2, as well as many other Linux and Unix machines, has a script (\/etc\/cron.daily\/tmpwatch) that is regularly executed by cron, which goes around your temporary directories and removes old files. This is a very useful utilty which helps to keep\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":9078,"url":"https:\/\/mamchenkov.net\/wordpress\/2005\/06\/15\/telling-gnu-arch-the-truth\/","url_meta":{"origin":11351,"position":1},"title":"Telling Gnu Arch the truth","author":"Leonid Mamchenkov","date":"June 15, 2005","format":false,"excerpt":"Yet another problem (and solution) that I've stumbled across while using Gnu Arch. We have two branches in our archive: program--vendor--0.1 and program--local--0.1. Vendor's version has all the source files in SomeDirectory, while our local version has all source files in somedir. Except for the name and few local changes,\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":31955,"url":"https:\/\/mamchenkov.net\/wordpress\/2019\/02\/05\/dotfile-madness\/","url_meta":{"origin":11351,"position":2},"title":"Dotfile madness","author":"Leonid Mamchenkov","date":"February 5, 2019","format":false,"excerpt":"\"Dotfile madness\" is an excellent look at the problem of hidden data and configuration files that seem to be multiplying lately in the users' home directories: We are no longer in control of our home directories.My own home directory contains 25 ordinary files and 144 hidden files. The dotfiles contain\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":9488,"url":"https:\/\/mamchenkov.net\/wordpress\/2005\/09\/23\/finding-files-in-linux\/","url_meta":{"origin":11351,"position":3},"title":"Finding files in Linux","author":"Leonid Mamchenkov","date":"September 23, 2005","format":false,"excerpt":"Many beginning Linux users experience difficulties getting used to the filesystem structure. Indeed, there are many files and directories, the structure of which are not as obvious as it could be. Choosing an appropriate location for a new file or directory is difficult and many choose to follow their own\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":9038,"url":"https:\/\/mamchenkov.net\/wordpress\/2005\/06\/03\/recursively-adding-files-and-directories-in-gnu-arch\/","url_meta":{"origin":11351,"position":4},"title":"Recursively adding files and directories in Gnu Arch","author":"Leonid Mamchenkov","date":"June 3, 2005","format":false,"excerpt":"One of the little annoyances of Gnu Arch is that it does not add files and directories recursively. Not to worry, though. Here is a little shell script that can assist with that task: #!\/bin\/bash # Find all files and directories, skipping .\/{arch} for FILE in `find . -path '.\/{arch}'\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":9592,"url":"https:\/\/mamchenkov.net\/wordpress\/2005\/10\/20\/synchronizing-directories-with-perl-and-ssh\/","url_meta":{"origin":11351,"position":5},"title":"Synchronizing directories with Perl and SSH","author":"Leonid Mamchenkov","date":"October 20, 2005","format":false,"excerpt":"For a while now I have been using ICQ both at home and at work. Instead of having two different copies of data or running ICQ remotely, I was simply copying all data files over between these two locations. rsync with scp were doing the job just fine. The problem\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/11351","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=11351"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/11351\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=11351"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=11351"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=11351"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=11351"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}