This project has 107 classes.
ECF: manage-mp3.ecf
Source code: directory list
This is a full-blown MP3 collection manager that is designed to work in conjunction with the Rhythmbox media player and has a number of features of particular interest to Tango DJs.
Manger Syntax
el_rhythmbox -manager -config <task-configuration>.pyx
Features
<genre>/<artist-name>/<song-title>.<unique id>.mp3
Manual
For details on how to use, read the source documentation notes in class RHYTHMBOX_MUSIC_MANAGER_APP.
Download
Download the latest executable for Ubuntu 14.04 or Linux Mint 17.x at the bottom of this page. You also need the following command line tools to be installed: sox, swgen, avconv, lame, gvfs-mount.
Warning: Use at your own risk. It is recommended that you have a backup of your MP3 collection and rhythmbox configuration files (Usually in $HOME/.local/share/rhythmbox). The developer does not take any responsibility for any data loss that may occur as a result of using el_rhythmbox.
. /rhythmbox/manager/task/ID3/edit
. /rhythmbox/manager/task/ID3/query
. /rhythmbox/manager/task/export
. /rhythmbox/manager/task/import
. /rhythmbox/manager/task/manage
. /rhythmbox/manager/task/playlist
. /rhythmbox/manager/task/tango
Application root
Build specification
Further Information
Click on class link to see notes.
Finalized executable test sets
Further Information
Click on class link to see notes.
Sub-application to generate class RBOX_DATABASE_FIELD_ENUM from C source file rhythmdb.c
Further Information
Click on class link to see notes.
Id3 editor app
Mp3 audio signature reader app
MP3 manager for the Rhythmbox media player. The manager executes tasks defined by task configuration written in Pyxis format (an XML analog). See example/manage-mp3/doc/tasks for configuration examples.
See the class hierarchy with RBOX_MANAGEMENT_TASK as it's root.
Usage:
el_rhythmbox -manager -config <task-configuration>
The -manager switch is needed to select a sub application from the main application. See class APPLICATION_ROOT.
Further Information
Click on class link to see warning and instructions.
Application to collate a Tango MP3 collection into a directory structure using any available ID3 tag information and renaming the file according to the title and a numeric id to distinguish duplicates.
<genre>/<artist>/<title>.<id>.mp3
Detect rhythmbox command
ID3 editor
Tango mp3 file collator
ID3 tag edits
M3U play list constants
Album fields enumeration from rhythmdb.c for Rhythmbox version 3.0.1
Artist fields enumeration from rhythmdb.c for Rhythmbox version 3.0.1
Composer fields enumeration from rhythmdb.c for Rhythmbox version 3.0.1
Fields from rhythmdb.c for Rhythmbox version 3.0.1
Further Information
Click on class link to see notes.
Field types in `rhythmdb.c for Rhythmbox version 3.0.1
MusicBrainz fields enumeration from rhythmdb.c for Rhythmbox version 3.0.1
Replaygain fields enumeration from rhythmdb.c for Rhythmbox version 3.0.1
Shared instance of RBOX_DATABASE_FIELD_ENUM
Rhythmbox constants
Database of all Rhythmbox songs, playlists, radio entries and ignored entries. It is read from these files:
$HOME/.local/share/rhythmbox/rhythmdb.xml $HOME/.local/share/rhythmbox/playlists.xml $HOME/Music/Playlists/*.pyx
The *.pyx ones are playlists which have been saved using the update_dj_playlists task.
Note that this database save modifications to songs and playlists.
Rhythmbox playlist
Rhythmbox playlist array
Shared access to instance of class conforming to RBOX_DATABASE
Song in playlist query condition
Song query conditions for use with EL_CHAIN routines
query query_if inverse_query_if
Further Information
Click on class link to see descendants.
Rbox cortina song
Rhythmbox ignored file entry (used for Pyxis playlists)
Rhythmbox radio station entry
Fields mapping to Rhythmbox XML Internet Radio station data
Example
<entry type="iradio"> <title>WSUM 91.7 FM (University of Wisconsin)</title> <genre>College Radio</genre> <artist></artist> <album></album> <location>http://vu.wsum.wisc.edu/wsumlive.m3u</location> <date>0</date> <media-type>application/octet-stream</media-type> </entry>
Entry indicating location of external playlist in Pyxis format
Object representing Rhythmbox 3.0.1 song entry in rhythmdb.xml
See field enumeration class RBOX_DATABASE_FIELD_ENUM
Fields mapping to Rhythmbox XML song data
Example Entry
<entry type="song"> <title>L'Autre Valse d'Amélie</title> <genre>Vals (Modern)</genre> <artist>Yann Tiersen</artist> <album>Le Fabuleux Destin d'Amélie Poulain</album> <comment>Composer: Yann Tiersen</comment> <album-artist>Composer: Yann Tiersen</album-artist> <track-number>6</track-number> <duration>93</duration> <file-size>2244105</file-size> <location>file://$MUSIC/Vals%20(Modern)/Yann%20Tiersen/L'Autre%20Valse%20d'Am%C3%A9lie.02.mp3</location> <mtime>1335094508</mtime> <first-seen>1358180915</first-seen> <last-seen>1382259840</last-seen> <bitrate>192</bitrate> <date>730486</date> <media-type>audio/mpeg</media-type> <mb-trackid>CF22F4A6:D9D3:B4A6:674B:3866B6129A3C</mb-trackid> <mb-artistsortname>Tiersen, Yann</mb-artistsortname> <composer>Yann Tiersen</composer> </entry>
Nokia have their own Windows style playlist format
Samsung tablet device
Device to which to mp3 files can be exported
Test storage device
Media item
Media item device sync table
Media sync item
Rhythmbox music manager
Cortina set info
DJ event information
Playlist export info
Volume info
Task that modifies the Rhythmbox database (including playlists)
Default task
Task to query or edit ID3 tag information
Rhythmbox music manager task
Further Information
Click on class link to see descendants.
Add album art from folder album_art_dir and organized in sub-folders matching {TL_PICTURE_TYPE_ENUM}.name for all enumeration types.
Further Information
Click on class link to see notes.
Delete comments task
Remove all UFID's task
Remove unknown album pictures task
Update comments with album artists task
Display songs with incomplete TXXX ID3 tags
Display music brainz info task
Rename 'Comment' comments as 'c0' This is an antidote to a bug in Rhythmbox version 2.97 where editions to 'c0' command are saved as 'Comment' and are no longer visible on reload.
Print ID3 comments task
Export music to device task
Export playlists to device task
Export to device task
List export volumes
M3U playlist import task
Import mp3 not currently in database and set artist and genre according to current location in
Music/<genre>/<artist/composer>
Import videos task
Import M4A video stream from Youtube using youtube-dl
Archive songs task
Collate songs task
Replace songs task
Restores playslist from /home/<user>/.local/share/rhythmbox/playlists.backup.xml
Update DJ playlists tasks. Inserts an ignored entry into database indicating location of Pyxis playlist.
Publish DJ events task
Replace cortina set task
Cortina set
M3U playlist
M3U playlist reader
Nokia playlist
Playlist
Dj events html index
Dj events publisher
Dj event html page
Playlist exported from Rhythmbox in Pyxis format with information about DJ gig.
DJ event publisher config
Html song
Command to generate class RBOX_DATABASE_FIELD_ENUM from C source file rhythmdb.c
Test set for class ADD_ALBUM_ART_TASK
Test set for class COLLATE_SONGS_TASK
Test set for class DISPLAY_MUSIC_BRAINZ_INFO_TASK
Test set for class EXPORT_MUSIC_TO_DEVICE_TASK
Test set for class EXPORT_MUSIC_TO_DEVICE_TASK
Test set for class IMPORT_M3U_PLAYLISTS_TASK
Test set for class IMPORT_NEW_MP3_TASK
Test set for class IMPORT_VIDEOS_TASK
Test set for class PUBLISH_DJ_EVENTS_TASK
Generic test set for tests conforming to RBOX_MANAGEMENT_TASK
Test set for class REPLACE_CORTINA_SET_TASK
Test set for class REPLACE_SONGS_TASK
Test set for class TANGO_MP3_FILE_COLLATOR
Further Information
Click on class link to see notes.
Test set for class UPDATE_DJ_PLAYLISTS_TASK
Import videos test task
Rbox cortina test song
Rythmbox test database
Rbox test song
Replace cortina set test task
Replace songs test task