Jump to content

Amarok: Organizacja - Skanowanie kolekcji

From KDE Wiki Sandbox
Revision as of 17:52, 28 November 2011 by Florek (talk | contribs) (Created page with "===== Pasek postępu / Czas skanowania =====")

Collection Scanning

Za każdym razem, gdy Amarok wyświetla kolekcję, informacja o utworach i albumach musi pochodzić z jakiegoś źródła. Źródłem może być urządzenie przenośne, usługa internetowa lub baza danych. Dla utworów przechowywanych w systemie plików Amarok używa bazy danych, aby mieć szybki dostęp do wymaganych meta-danych. Dane muszą być najpierw zaimportowane do bazy, co jest zwykle wykonywane poprzez skanowanie katalogów kolekcji w poszukiwaniu plików audio. Ten proces nazywa się skanowaniem kolekcji.

Dobrze jest rozumieć proces skanowania, by wygodniej pracować z programem Amarok.

Skanowanie Przyrostowe / Aktualizacja Kolekcji

Tak zwane skanowanie przyrostowe skanuje katalogi kolekcji w poszukiwaniu zmienionych plików. Zwykle jest to wykonywane co minute, ale może być wywołane manualnie poprzez przycisk Update Collection w menu

Skanowanie przyrostowe sprawdzi datę modyfikacji każdego katalogu w kolekcji z datą ostatniej znanej zmiany. Ma to następujące skutki:

  • Możesz wykonać przeskanowanie jednego katalogu, zmieniając jego datę ostatniej modyfikacji (na przykład używając touch w konsoli).
  • Jeśli pliki w katalogach zmienią się skaner nie zauważy tego, ponieważ modyfikacja pliku zmienia jego datę modyfikacji, a nie folderu w którym się znajduje.
  • Jeśli katalogi kolekcji znajdują się na bardzo wolnej partycji, proces sprawdzania daty ostatniej modyfikacji mogą zająć trochę czasu.

Zwykle ta informacja jest przechowywana przez system operacyjny, jednak w przypadku dużych kolekcji może być to niemożliwe. W takich przypadkach wydawać się może, że skaner pracuje ciągle. W przypadku kolekcji powyżej 5000 utworów lub gdy kolekcja przechowywana jest na dysku sieciowym lub partycji NTFS zaleca się wyłączenie opcji Watch folders for change.

Jeśli masz problemy z usuniętymi utworami nadal pojawiającymi się w kolekcji, lub chcesz zaktualizować okładki albumów (które nie są aktualizowane przez zwykłe "zaktualizowanie kolekcji"), to możesz użyć Pełne skanowanie opcji w oknie ustawień. Pełne skanowanie nie sprawdza daty modyfikacji. Nie usunie twoich statystyk, przywróci jednak ocenę' oraz ilość odtworzeń jeśli przechowywane w pliku.

Pasek postępu / Czas skanowania

The progress bar will show the progress of the scanning. Up to 50% the scanner will scan the file system and just buffer the result. Times above 50% indicate that the scanner is committing the results to the database. Usually the second step is much faster than the first so don't be surprised if the progress bar seems to jump. Up to 50% aborting the scan is possible. After 50%, the committing of the files can not be stopped.

The scanning time depends on your disk speed and other factors. Usually the first scan is a lot slower than subsequent scans where the files are cached by the operating system. A scan of 10000 files should take around three minutes on a modern computer. 50000 files should be around 13 minutes.

Backup of collection

With the default settings Amarok is storing all the collection information in a directory called ~.kde/share/apps/amarok/mysqle/ . It can be a good idea to make a backup of this directory from time to time, especially when you didn't enable the writing back of statistics information.

About unique ids

Amarok is tracking files by an id that is either stored in the audio track or computed by the artist, album title and track title meta information. This id helps Amarok to identify tracks that are moved to other locations so that statistics informations (rating, score, playcount) are not lost. Currently Amarok will not import tracks with duplicate unique ids. This leads to the surprising behavior that copied tracks still appear only once in Amarok.

In some circumstances even different tracks can end up with the same unique id. That is very uncommon and usually the result of running years of unstable Amarok releases. Such a problem can be seen by the debug output (start Amarok with the --debug option) while scanning.

If you are using 2.4 beta you might run into a case where most of the collection is not imported. This can be easily seen by the failing sql commands in the debug output. In such a case just use 2.4 final.

About Albums

The scanner can only read single tracks but Amarok will display those sorted by album and compilation (an album without one specific artist). Amarok can't rely on the directory in which the files are located, since directory organizational schemes vary so widely.

The scanner is therefore doing the following:

  • Tracks without an album artist or an artist (or a composer in case of a classical track) are placed in a compilation.
  • Tracks that have the compilation flag set or an album artist other than "various artists" will be placed in an album.
  • Tracks that have the compilation flag set to 0 are placed in a compilation.
  • Albums called "Live", "Greatest Hits" and a couple of other names are always regarded as an album.
  • If we end up having tracks with several different artists left over they are placed inside a compilation, or else we make one album out of them.

This process is quite complicated. However usually the outputs of the scanner can help in figuring out why the tracks are sorted as they are.

In such a case try executing (on a command line)

amarokcollectionscanner -r ~/Music/directory

Look for "compilation" tags and tracks with different "artist" and "albumartist" tags.

You can remove the tag from mp3 files with the following command:

id3v2 -r TCMP your fileename here