Dominik Riebeling | c75a844 | 2006-04-04 21:48:47 +0000 | [diff] [blame] | 1 | % $Id$ % |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 2 | \section{\label{ref:database}Database} |
Dominik Riebeling | c75a844 | 2006-04-04 21:48:47 +0000 | [diff] [blame] | 3 | |
| 4 | \subsection{Introduction} |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 5 | This chapter describes the Rockbox music database system. Using the information |
Nils Wallménius | 86171f2 | 2006-09-03 16:43:06 +0000 | [diff] [blame] | 6 | contained in the tags (ID3v1, ID3v2% |
| 7 | \opt{SWCODEC}{, Vorbis Comments, Apev2, etc.}% |
| 8 | ) in your audio files, Rockbox builds and maintains a database of the music |
| 9 | files on your player and allows you to browse them by Artist, Album and Genre. |
Dominik Riebeling | c75a844 | 2006-04-04 21:48:47 +0000 | [diff] [blame] | 10 | |
Steve Bavin | 20d8e8d | 2007-03-15 13:03:37 +0000 | [diff] [blame] | 11 | \subsection{Initializing the database} |
Dominik Riebeling | 97f2146 | 2007-03-14 22:16:27 +0000 | [diff] [blame] | 12 | The first time you use the database, Rockbox will scan your disk for audio files. |
| 13 | This can take quite a while depending on the number of files on your \dap{}. |
| 14 | This scan happens in the background, so you can choose to return to the |
| 15 | Main Menu and continue to listen to music. |
| 16 | If you shut down your player, the scan will continue next time you turn it on. |
| 17 | After the scan is finished you may be prompted to restart your \dap{} before |
| 18 | you can use the database. |
Dominik Riebeling | c75a844 | 2006-04-04 21:48:47 +0000 | [diff] [blame] | 19 | |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 20 | \subsection{\label{ref:databasemenu}The Database Menu} |
Michael DiFebbo | 642d74d | 2006-07-27 02:02:18 +0000 | [diff] [blame] | 21 | |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 22 | \begin{description} |
| 23 | \opt{SWCODEC}{ |
Dominik Riebeling | 0597826 | 2006-09-17 20:48:56 +0000 | [diff] [blame] | 24 | \item[Load To Ram.] |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 25 | The database can either be kept on disk (to save memory), or |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 26 | loaded into RAM (for fast browsing). Setting this to \setting{Yes} loads |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 27 | the database to RAM, allowing faster browsing and searching. Setting this |
| 28 | option to \setting{No} keeps the database on the disk, meaning slower |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 29 | browsing but it does not use extra RAM and saves some battery on boot up. |
| 30 | |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 31 | \note{If you browse your music frequently using the database, you should |
| 32 | load to RAM, as this will reduce the overall battery consumption because |
| 33 | the disk will not need to spin on each search.} |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 34 | } |
| 35 | |
Dominik Riebeling | 0597826 | 2006-09-17 20:48:56 +0000 | [diff] [blame] | 36 | \item[Auto Update.] |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 37 | If \setting{Auto update} is set to \setting{on}, each time the \dap{} |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 38 | boots, the database will automatically be updated. |
Nils Wallménius | 86171f2 | 2006-09-03 16:43:06 +0000 | [diff] [blame] | 39 | \opt{SWCODEC}{ |
| 40 | \note{The \setting{Auto Update} will only check for deleted files if the |
Nils Wallménius | 909b946 | 2007-03-03 00:07:31 +0000 | [diff] [blame] | 41 | \setting{Directory Cache} (\setting{Settings $\rightarrow$ General |
| 42 | Settings $\rightarrow$ System $\rightarrow$ Disk $\rightarrow$ |
| 43 | Directory Cache}) is enabled. \setting{Update now} includes that check |
| 44 | whether dircache has been enabled or not.} |
Nils Wallménius | 86171f2 | 2006-09-03 16:43:06 +0000 | [diff] [blame] | 45 | }% |
| 46 | \opt{MASCODEC}{\setting{Auto Update} does not detect deleted files. To remove |
| 47 | deleted files from the database you need to run \setting{Update Now}.}% |
| 48 | |
Steve Bavin | 20d8e8d | 2007-03-15 13:03:37 +0000 | [diff] [blame] | 49 | \item[Initialize Now.] |
Dominik Riebeling | 97f2146 | 2007-03-14 22:16:27 +0000 | [diff] [blame] | 50 | You can force Rockbox to rescan your disk for tagged files by |
Steve Bavin | 20d8e8d | 2007-03-15 13:03:37 +0000 | [diff] [blame] | 51 | using the \setting{Initialize Now} function in the \setting{Database |
Nils Wallménius | 86171f2 | 2006-09-03 16:43:06 +0000 | [diff] [blame] | 52 | Menu}. |
Steve Bavin | 20d8e8d | 2007-03-15 13:03:37 +0000 | [diff] [blame] | 53 | \warn{\setting{Initialize Now} removes all database files (removing |
Nils Wallménius | 86171f2 | 2006-09-03 16:43:06 +0000 | [diff] [blame] | 54 | runtimedb data also) and rebuilds the database from scratch.} |
Nils Wallménius | 86171f2 | 2006-09-03 16:43:06 +0000 | [diff] [blame] | 55 | |
Dominik Riebeling | 0597826 | 2006-09-17 20:48:56 +0000 | [diff] [blame] | 56 | \item[Update Now.] |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 57 | \setting{Update now} causes the database to detect new and deleted files |
Nils Wallménius | 86171f2 | 2006-09-03 16:43:06 +0000 | [diff] [blame] | 58 | \opt{SWCODEC}{ |
| 59 | \note{Unlike the \setting{Auto Update} function, \setting{Update Now} |
| 60 | will update the database regardless of whether the \setting{Directory Cache} |
| 61 | is enabled. Thus, an update using \setting{Update now} may take a long |
| 62 | time. |
| 63 | } |
| 64 | } |
Steve Bavin | 20d8e8d | 2007-03-15 13:03:37 +0000 | [diff] [blame] | 65 | Unlike \setting{Initialize Now}, the \setting{Update Now} function |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 66 | does not remove runtime database information. |
| 67 | |
Robert Kukla | 226cb7b | 2007-03-26 15:08:59 +0000 | [diff] [blame] | 68 | \item[Gather Runtime Data.] |
| 69 | When enabled, rockbox will record how often and how long a track is being played, |
| 70 | when it was last played and its rating. This information can be displayed in |
| 71 | the WPS and is used in the database browser to, for example, show the most played, |
| 72 | unplayed and most recently played tracks. |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 73 | |
Dominik Riebeling | 0597826 | 2006-09-17 20:48:56 +0000 | [diff] [blame] | 74 | \item[Export modifications.] |
Dominik Riebeling | 2e508af | 2007-03-07 15:44:03 +0000 | [diff] [blame] | 75 | This allows for the runtime data to be exported to the file \\ |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 76 | \fname{/.rockbox/database\_changelog.txt}, which backs up the runtime data in |
| 77 | ASCII format. This is needed when database structures change, because new |
| 78 | code cannot read old database code. But, all modifications |
| 79 | exported to ASCII format should be readable by all database versions. |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 80 | |
Dominik Riebeling | 0597826 | 2006-09-17 20:48:56 +0000 | [diff] [blame] | 81 | \item[Import modifications.] |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 82 | Allows the \fname{/.rockbox/database\_changelog.txt} backup to be |
Dominik Riebeling | 2e508af | 2007-03-07 15:44:03 +0000 | [diff] [blame] | 83 | conveniently loaded into the database. If \setting{Auto Update} is |
Steve Bavin | 20d8e8d | 2007-03-15 13:03:37 +0000 | [diff] [blame] | 84 | enabled this is performed automatically when the database is initialized. |
Martin Arver | 8570911 | 2006-08-15 10:53:14 +0000 | [diff] [blame] | 85 | |
| 86 | \end{description} |
Michael DiFebbo | 642d74d | 2006-07-27 02:02:18 +0000 | [diff] [blame] | 87 | |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 88 | \subsection{Using the database} |
Steve Bavin | 20d8e8d | 2007-03-15 13:03:37 +0000 | [diff] [blame] | 89 | Once the database has been initialized, you can browse your music by Artist, |
Nils Wallménius | 909b946 | 2007-03-03 00:07:31 +0000 | [diff] [blame] | 90 | Album, Genre and Song Name. To use the database, go to the \setting{Main Menu} |
| 91 | and select \setting{Database}.\\ |
Michael DiFebbo | 642d74d | 2006-07-27 02:02:18 +0000 | [diff] [blame] | 92 | |
| 93 | \note{You may need to increase the value of the \setting{Max files in dir |
Nils Wallménius | 909b946 | 2007-03-03 00:07:31 +0000 | [diff] [blame] | 94 | browser} setting (\setting{Settings $\rightarrow$ General Settings |
| 95 | $\rightarrow$ System $\rightarrow$ Limits}) in order to view long lists of |
| 96 | tracks in the ID3 database browser.\\ |
Michael DiFebbo | 642d74d | 2006-07-27 02:02:18 +0000 | [diff] [blame] | 97 | |
Jonas Häggqvist | 6b1d2cb | 2006-11-25 09:42:06 +0000 | [diff] [blame] | 98 | There is no option to turn off database completely. If you do not want |
Michael DiFebbo | 642d74d | 2006-07-27 02:02:18 +0000 | [diff] [blame] | 99 | to use it just don't do the initial build of the database and do not load it |
Dominik Riebeling | a18bd16 | 2006-04-20 16:44:26 +0000 | [diff] [blame] | 100 | to RAM.} |
| 101 | % |
Dominik Riebeling | c75a844 | 2006-04-04 21:48:47 +0000 | [diff] [blame] | 102 | \begin{table} |
| 103 | \begin{center} |
Dominik Riebeling | 0597826 | 2006-09-17 20:48:56 +0000 | [diff] [blame] | 104 | \begin{tabularx}{.75\textwidth}{XX}% |
| 105 | \toprule% |
| 106 | \textbf{Supported Tags} & \textbf{Unsupported Tags} \\ |
Dominik Riebeling | c75a844 | 2006-04-04 21:48:47 +0000 | [diff] [blame] | 107 | \midrule |
| 108 | Artist & Comment \\ |
| 109 | Album & Performer\\ |
| 110 | Bitrate & \\ |
| 111 | Composer & \\ |
| 112 | Genre & \\ |
| 113 | Length & \\ |
| 114 | Title & \\ |
| 115 | Track Number & \\ |
| 116 | \bottomrule |
| 117 | \end{tabularx} |
| 118 | \end{center} |
| 119 | \end{table} |