Module pdb

Module pdb 

Source
Expand description

Parser for Pioneer DeviceSQL database exports (PDB).

The Rekordbox DJ software uses writes PDB files to /PIONEER/rekordbox/export.pdb.

Most of the file format has been reverse-engineered by Henry Betts, Fabian Lesniak and James Elliott.

Modules§

bitfields
Packed fields/bitfields used in PDB files.
ext
Parser for the extended Pioneer DeviceSQL database exports (exportExt.pdb).
offset_array
Module for reading and writing offset arrays.
string
binrw-based implementation for DeviceSQLStrings capable of parsing and serializing DeviceSQLStrings

Structs§

Album
Contains the album name, along with an ID of the corresponding artist.
AlbumId
Identifies an album.
Artist
Contains the artist name and ID.
ArtistId
Identifies an artist.
Artwork
Contains the artwork path and ID.
ArtworkId
Identifies an artwork item.
Color
Contains numeric color ID
ColumnEntry
Contains the kinds of Metadata Categories tracks can be browsed by on CDJs.
DataPageContent
The data-containing part of a page.
DataPageContentBinReadArgBuilder
A builder for DataPageContentBinReadArgs objects. Compatible with binrw::args!.
DataPageContentBinReadArgs
Named arguments for the BinRead::read_options implementation of DataPageContent.
DataPageContentBinWriteArgBuilder
A builder for DataPageContentBinWriteArgs objects. Compatible with binrw::args!.
DataPageContentBinWriteArgs
Named arguments for the BinWrite::write_options implementation of DataPageContent.
DataPageHeader
The header of the data-containing part of a page.
Genre
Represents a musical genre.
GenreId
Identifies a genre.
Header
The PDB header structure, including the list of tables.
HistoryEntry
Represents a history playlist.
HistoryPlaylist
Represents a history playlist.
HistoryPlaylistId
Identifies a history playlist.
IndexEntry
An entry in an index page.
IndexPageContent
The content of an index page.
IndexPageContentBinWriteArgBuilder
A builder for IndexPageContentBinWriteArgs objects. Compatible with binrw::args!.
IndexPageContentBinWriteArgs
Named arguments for the BinWrite::write_options implementation of IndexPageContent.
IndexPageHeader
The header of the index-containing part of a page.
Key
Represents a musical key.
KeyId
Identifies a key.
Label
Represents a record label.
LabelId
Identifies a label.
Menu
This table defines the active menus on the CDJ.
Page
A table page.
PageContentBinReadArgBuilder
A builder for PageContentBinReadArgs objects. Compatible with binrw::args!.
PageContentBinReadArgs
Named arguments for the BinRead::read_options implementation of PageContent.
PageContentBinWriteArgBuilder
A builder for PageContentBinWriteArgs objects. Compatible with binrw::args!.
PageContentBinWriteArgs
Named arguments for the BinWrite::write_options implementation of PageContent.
PageHeader
The header of a page.
PageIndex
Points to a table page and can be used to calculate the page’s file offset by multiplying it with the page size (found in the file header).
PlaylistEntry
Represents a track entry in a playlist.
PlaylistTreeNode
Represents a node in the playlist tree (either a folder or a playlist).
PlaylistTreeNodeId
Identifies a playlist tree node.
RowGroup
A group of row indices, which are built backwards from the end of the page. Holds up to sixteen row offsets, along with a bit mask that indicates whether each row is actually present in the table.
Subtype
Carries additional information about a row (if present, always as the first field of a row)
Table
Tables are linked lists of pages containing rows of a single type, which are organized into groups.
Track
Contains the album name, along with an ID of the corresponding artist.
TrackId
Identifies a track.
TrackStrings
String fields stored via the offset table in Track rows
TrailingName
Represents a trailing name field at the end of a row, used for album and artist names.

Enums§

DatabaseType
The type of the database were looking at. This influences the meaning of the the pagetypes found in tables.
MenuVisibility
Visibility state for a Menu on the CDJ.
PageContent
The content of a page, which can be of different types.
PageType
The type of pages found inside a Table.
PdbError
An error that can occur when parsing a PDB file.
PlainPageType
The type of pages found inside a Table of export.pdb files.
PlainRow
A table row contains the actual data.
Row
A table row contains the actual data.