tagreader_c output

Anton Sergunov setosha at gmail.com
Mon Aug 29 02:19:59 UTC 2011


Раз уж тут про русские таги - напишу по русски.

Там два тэга ID3v1, ID3v2. Тот что v2, поддерживает всякие кодировки (они у
него там пишутся вместе со строкой).
А вот тот что ID3v1 там строго Laitin1. Так вот, в стародавние времена
повелось, что пихали туда что хотели :) . В нашем случае CP1251. Но его я
тебе его не рекомендую зашивать. У китайцев она будет другая. Под виндой это
то, что называется "Кодировка для приложений без поддержки unicode".

По хорошему все должно решаться через
static void TagLib::ID3v1::Tag::setStringHandler(const
StringHandler<http://developer.kde.org/~wheeler/taglib/api/classTagLib_1_1ID3v1_1_1StringHandler.html>
 *  *handler* )

Но не тут-то было. По старой памяти такие строки пихают в ID3v2 и ставят
кодировкой Latin1, хотя там и вовсе не она!

Я на qt решил это так

QString toQString(const TagLib::String& str)
{
    if(str.isLatin1())
        return QString::fromLocal8Bit(str.to8Bit().c_str());
    return QString::fromStdWString(str.toWString());
}

Через нее пропускаются ВСЕ строки пришедшие от таглиба. И все ровно. Удачи
:)

2011/8/28 <sf_2000 at mail.ru>

> Здравствуйте, sf.
>
> That was wrong files, really it looks this way:
>
> D:\NEW\Release\Tags\taglib-1.7\bin\examples\Release\Мне
> надо>tagreader_c.exe "abr_Катя Чехова - В твоих глазах (Иван Scratchin' with
> love mix_unicode.mp3"
> ******************** "abr_╩рЄ  ╫хїютр - ┬ Єтюшї уырчрї (╚трэ Scratchin'
> with love mix_unicode.mp3" ********************
> -- TAG --
> title   - "↕ B2>8E 3;070E (↑20= Scratchin' with love mix )"
> artist  - "→0BO '5E>20"
> album   - "ytopia.net"
> year    - "0"
> comment - ""
> track   - "0"
> genre   - "Other"
> -- AUDIO --
> bitrate     - 64
> sample rate - 8000
> channels    - 2
> length      - 3:17
>
> D:\NEW\Release\Tags\taglib-1.7\bin\examples\Release\Мне
> надо>tagreader_c.exe "abr_Катя Чехова - В твоих глазах (Иван Scratchin' with
> love mix_utf-8.mp3"
> ******************** "abr_╩рЄ  ╫хїютр - ┬ Єтюшї уырчрї (╚трэ Scratchin'
> with love mix_utf-8.mp3" ********************
> -- TAG --
> title   - "↕ B2>8E 3;070E (↑20= Scratchin' with love mix )"
> artist  - "→0BO '5E>20"
> album   - "ytopia.net"
> year    - "0"
> comment - ""
> track   - "0"
> genre   - "Other"
> -- AUDIO --
> bitrate     - 64
> sample rate - 8000
> channels    - 2
> length      - 3:17
>
> D:\NEW\Release\Tags\taglib-1.7\bin\examples\Release\Мне
> надо>tagreader_c.exe "abr_Катя Чехова - В твоих глазах (Иван Scratchin' with
> love mix_ansi.mp3"
> ******************** "abr_╩рЄ  ╫хїютр - ┬ Єтюшї уырчрї (╚трэ Scratchin'
> with love mix_ansi.mp3" ********************
> -- TAG --
> title   - "┬ Єтюшї уырчрї (╚трэ Scratchin' with love mix )"
> artist  - "╩рЄ  ╫хїютр"
> album   - "╧юыхЄрхь"
> year    - "2005"
> comment - ""
> track   - "3"
> genre   - "Porn Groove"
> -- AUDIO --
> bitrate     - 64
> sample rate - 8000
> channels    - 2
> length      - 3:17
>
> (http://my.jetscreenshot.com/11/20110827-q9xe-309kb) instead of
> http://my.jetscreenshot.com/11/20110827-hhns-127kb
>
> What does this mean? What should I do to get readable tag strings ?
>
> --
> С уважением,
> Руслан Драгунов                         mailto:sf_2000 at mail.ru
>
> _______________________________________________
> taglib-devel mailing list
> taglib-devel at kde.org
> https://mail.kde.org/mailman/listinfo/taglib-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/taglib-devel/attachments/20110829/c12b3f20/attachment.html>


More information about the taglib-devel mailing list