Amarok/Manual/Organization/CollectionScanning

From KDE UserBase Wiki
Revision as of 07:33, 30 August 2013 by Fri (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Prohledávání sbírky

Pokaždé když Amarok zobrazí sbírku, je potřeba, aby informace o skladbách a albech přišly ze zdroje. Zdrojem může být přenosné zařízení, internetová služba nebo databáze. Pro skladby, jež jsou ve složkách místní sbírky Amarok používá databázi, aby měl rychlý přístup k požadovaným informacím o popisných datech. Nejprve je potřeba tyto informace nahrát do databáze, což je obyčejně provedeno prohledáním adresářů s místní sbírkou na zvukové soubory. Tento postup se nazývá prohledávání sbírky.

Je užitečné rozumět procesu prohledávání kvůli lepší práci s Amarokem.

Přírůstkové hledání / Aktualizace sbírky

Tak zvané přírůstkové hledání kontroluje adresáře se sbírkou na aktualizace. To se dělá každou minutu, pokud je povoleno sledování změn ve složkách (zapnuto ve výchozím nastavení), ale může se také dělat ručně vybráním položky Obnovit sbírku z nabídky.

Přírůstkové hledání pouze ověří datum změny každé složky sbírky proti poslednímu známému datu změny. To má několik důsledků:

  • Můžete spustit znovuprohledání sbírky tím, že změníte její čas (například pomocí touch /path/to/directory v konzoli).
  • Toho, zda jsou soubory v adresáři změněny, si prohledávač nevšimne, protože změna souboru aktualizuje čas jeho změny, ale ne čas rodičovské složky. Na druhou stranu většina programů, jež mění soubory, je ukládá atomicky pomocí dočasného souboru, který je pak přejmenován. Takový postup aktualizuje čas změny adresáře a tudíž spouští znovuprohledání sbírky.
  • Pokud jsou složky se sbírkou na velmi malém diskovém oddílu, může postup ověřování všech časů změn chvíli trvat. Obvykle jsou tyto informace operačním systémem ukládány do vyrovnávací paměti, ale u velkých sbírek toto není možné. V takovém případě se může zdát, že prohledávač pracuje nepřetržitě. U sbírek, jež mají více než tisíc adresářů, nebo když jsou sbírky uloženy na síťovém disku nebo na oddílu NTFS, se doporučuje vypnout volbu pro sledování složek kvůli změnám.

Pokud máte potíže s tím, že se smazané skladby stále objevují ve sbírce, nebo chcete aktualizovat obaly alb (které nejsou aktualizovány pohým Obnovit sbírku), potom můžete použít volbu pro úplné znovuprohledání v dialog pro nastavení. Úplné znovuprohledání se nebude ztarat o časy změn. Nesmaže statistiku o stávajících souborech, Smaže však statistiku skladeb, které zmizely z niní připojených složek se sbírkou. Z toho důvodu se radí provést úplné znovuprohledání, pokud děláte mezi připojeními přesuny skladeb, jen když jsou připojeny všechny složky místní sbírky. Úplné znovuprohledání také obnovuje počet přehrání, pokud je ten uložený ve značkách souborů větší, hodnocení, pokud je píseň nehodnocena a značky souborů zmiňují hodnocení a výsledek (za stejných okolností).

Ukazatel postupu / Doba prohledávání

Ukazatel postupu ukazuje průběh prohledávání. Až do 50 % bude prohledávač prohledávat souborový systém a výsledek jen ukládat do vyrovnávací paměti. Čas nad 50 % naznačuje, že prohledávač výsledky zapisuje do databáze. Obyčejně je druhý krok o hodně rychlejší než první, proto nebuďte překvapen, jestliže postup najednou poskočí. Až do 50 % je možné prohledávání přerušit. Po 50 % nelze zápis souborů zastavit.

Doba prohledávání závisí na rychlosti pevného disku a dalších činitelích. Obvykle je první prohledávání o dost pomalejší než následující, kdy jsou soubory operačním systémem uloženy ve vyrovnávací paměti. Prohledání 10000 souborů by mělo na nejnovějším počítači trvat okolo tří minut. 50000 souborů by mělo zabrat okolo třinácti minut. Samozřejmě že to bude mnohem rychlejší v případě SSD disku.

Zálohování sbírky

Ve výchozím nastavení ukládá Amarok všechny informace o sbírce v adresáři nazvaném ~.kde/share/apps/amarok/mysqle/ . Může být dobrým nápadem dělat čas od času zálohu tohoto adresáře, zvláště když jste nepovolil odepisování statistických informací.

Jedinečné identifikátory

Amarok sleduje soubory podle identifikátorů (ID), které jsou uloženy buďto ve zvukové stopě nebo spočítány pomocí popisných dat k souboru, popisných dat ke značce a prvních několika kilobytů souboru. Tento identifikátor pomáhá Amaroku při rozpoznávání skladeb, jež jsou přesunuty do jiných umístění, takže statistické informace (hodnocení, výsledek, počet přehrání, poprvé přehráno, naposledy hráno) nejsou ztraceny. V současnosti Amarok nebude zavádět skladby se zdvojenými jedinečnými ID. To vede k překvapivému chování, že totiž zkopírované skladby se v Amaroku pořád objevují pouze jednou.

Někdy mohou s týmž identifikátorem skončit dokonce různé skladby. Tento problém lze během prohledávání pozorovat v ladicím výstupu (spusťte Amarok v terminálu s volbou --debug).

Alba

Prohledávač dokáže číst jen jednotlivé skladby, ale Amarok je zobrazí roztříděné podle alba a kompilace (album bez jednoho určitého umělce). Amarok nemůže spoléhat na adresář, ve kterém jsou soubory umístěny, protože adresářová pořádací schémata se značně liší.

Prohledávač proto provádí následující:

  • Skladby bez umělce alba nebo umělce (nebo skladatele u klasických skladeb) jsou umísťovány do kompilace.
  • Skladby s nastaveným příznakem kompilace nebo umělcem alba jiným než "různí umělci" budou umístěny do alba.
  • Skladby příznakem kompilace nastaveným na 0 jsou umístěny do kompilace.
  • Alba nazvaná "Best Of", "Anthology", "Hit collection", "Greatest Hits", "All Time Greatest Hits" a "Live" se vždy pokládají za album.
  • Pokud nám na konci zůstanou skladby s několika různými umělci, jsou umístěny do kompilace, nebo se z nich udělá jedno album.

Toto celé je poněkud složité. Obyčejně ale mohou výstupy prohledávače pomoci s přemýšlením nad tím, proč jsou skladby roztříděny tak, jak jsou.

V tom případě zkuste spustit (v příkazovém řádku)

amarokcollectionscanner -r ~/your/music/directory

Hledejte značky "kompilace" (compilation) a skladby různých "umělců" (artist) a značky "umělců alba" (albumartist).

Značku compilation můžete odstranit ze souborů mp3 následujícím příkazem:

id3v2 -r TCMP zde zadejte název souboru