1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
Amarok (1.4.8) ÕÓÔÒÏÅÎ ÐÒÉÍÅÒÎÏ ÓÌÅÄÕÀÝÉÍ ÏÂÒÁÚÏÍ. åÓÌÉ ÍÙ ÉÍÅÅÍ ÄÅÌÏ Ó
ÌÏËÁÌØÎÙÍÉ ÆÁÊÌÁÍÉ, ÔÏ ×ÓÅ ÔÜÇÉ ÐÏÌÕÞÁÀÔÓÑ ÞÅÒÅÚ Taglib (× ÆÕÎËÃÉÉ
MetaBundle::readTags ÉÚ metabundle.cpp).
ïÄÎÁËÏ, taglib (1.5 É ÒÁÎØÛÅ) ÎÅ ÕÍÅÅÔ ÚÁ ÔÁÇÁÍÉ ÐÏ ÓÅÔÉ ÌÁÚÉÔØ. ðÏ-ÜÔÏÍÕ
smb, nfs É Ô.Ð. ÏÂÒÁÂÁÔÙ×ÁÀÔÓÑ ÐÏ ÄÒÕÇÏÍÕ.
1. ÷Ï-ÐÅÒ×ÙÈ × ÔÏÍÖÅ metabundle.cpp ÅÓÔØ:
MetaBundle::init( const KFileMetaInfo& info )
ËÏÔÏÒÙÊ ÍÏÖÅÔ ÐÒÉÎÉÍÁÔØ ÔÜÇÉ × ÎÅËÏÊ KDEÛÎÏÊ ÓÔÒÕËÔÕÒÕ. ðÏÄÏÚÒÅ×ÁÀ, ÞÔÏ
ÜÔÏ Ó×ÑÚÁÎÏ Ó KIO. ÷ÐÒÏÞÅÍ, ÎÅ×ÁÖÎÏ ÄÌÑ SMB ÆÁÊÌÏ× ÜÔÁ ÆÕÎËÃÉÑ ÎÅ ÚÁÐÕÓËÁÅÔÓÑ.
2. òÅÁÌØÎÏ ÄÌÑ smb ÆÁÊÌÏ× ÔÜÇÉ ÌÏ×ÑÔÓÑ ÆÕÎËÃÉÅÊ slotEngineMetaData (ÉÚ
enginecontroller.cpp). ÷ÙÚÙ×ÁÅÔÓÑ ÄÁÎÎÁÑ ÆÕÎËÃÉÑ ÐÏ ÐÒÉÈÏÄÕ ÓÉÇÎÁÌÁ
"metaData".
îÁÓËÏÌØËÏ Ñ ÐÏÎÑÌ, ÄÁÎÎÙÊ ÓÉÇÎÁÌ ÐÏÓÙÌÁÀÔ ×ÓÑËÉÅ enginÙ, ËÏÔÏÒÙÅ ÐÒÏÉÇÒÙ×ÁÀÔ
ÍÕÚÙËÕ ÄÌÑ ÁÍÁÒÏË. ôÉÐÁ engine/yauap, engine/xine É Ô.Ð. ÷ÏÔ ×ÉÄÁÔØ ÏÎÉ
ÞÉÔÁÀÔ ÔÜÇÉ (ËÒÉ×Ï, ÐÏÓËÏÌØËÕ ÎÅ Ó ÌÉÎËÏ×ÁÎÙ Ó taglib ÉÌÉ ÅÝÅ ÞÅÍ Ó RusXMMS
ÐÁÔÞÅÍ).
3. íÏÖÅÔ ÅÝÅ ÞÅÇÏ ÅÓÔØ ;)
÷ÏÏÂÝÅÍ, ÒÅÚÀÍÅ. ðÁÔÞÉÔØ ÎÁÄÏ ÌÉÂÏ ÜÔÉ Ä×ÉÖËÉ, ÌÉÂÏ, ÞÔÏ ÍÎÅ (ÎÁ ÐÅÒ×ÙÊ ×ÚÇÌÑÄ)
ËÁÖÅÔÓÑ ÐÒÏÝÅ, ÎÁÄÏ ÐÏÄÃÅÐÉÔÓÑ Ë slotEngineMetaData. ôÒÁÂÌÁ ÔÁÍ ÔÏÌØËÏ × ÔÏÍ,
ÞÔÏ ÐÒÉÈÏÄÉÔ ÔÕÄÁ ÔÜÇÉ ÕÖÅ × UTF-8, ÎÅËÏÒÅËÔÎÏ ÐÅÒÅËÏÄÉÒÏ×ÁÎÎÏÍ. ðÏÜÔÏÍÕ,
ÓÎÁÞÁÌÁ ÎÁÄÏ ËÏÎ×ÅÒÔÕÔØ UTF-8 ÏÂÒÁÔÎÏ × Latin1, Á ÕÖÅ ÐÏÔÏÍ ÎÁÔÒÁ×ÌÉ×ÁÔØ
librcc. ÷ÐÒÏÞÅÍ, ÐÅÒÅËÏÄÉÒÏ×ËÕ UTF->Latin ÔÏÖÅ ÍÏÖÎÏ ÓÄÅÌÁÔØ ÞÅÒÅÚ librcc.
|