Collection.MusicSourceOperations on musics
val add :
t ->
SkhcDb.Database.t ->
?music_old:SkhcDb.MusicFile.t ->
compilation:bool ->
string ->
SkhcMetadata.Metadata.t ->
(SkhcDb.MusicFile.t, Sqlite3.Rc.t * string) resultadd collection database ?music_old ~compilation path metadata adds the song located at path with metadata to db. add reads metadata to create or find artists and albums. compilation indicates whether the song is part of a compilation album.
if music_old, add updates music_old.
see SkhcDb.MusicFile.insert for more explainations on music_old.
raise Unix.Unix_error if Unix.stat fails with path.
val remove :
t ->
SkhcDb.Database.t ->
SkhcDb.MusicFile.t ->
(unit, Sqlite3.Rc.t * string) resultremove collection database musicfile removes musicfile from the database. The file in the filesystem is untouched.
path collection music returns the full path of music.
val scrobble :
t ->
SkhcDb.Database.t ->
SkhcDb.MusicFile.t ->
(SkhcDb.MusicFile.t, Sqlite3.Rc.t * string) resultscrobble collection database music_file increases play_count by one, set played_at to Unix.time () and call SkhcDb.MusicFile.update
val set_rating :
t ->
SkhcDb.Database.t ->
SkhcDb.MusicFile.t ->
int option ->
(SkhcDb.MusicFile.t, Sqlite3.Rc.t * string) resultset_rating collection database music rating sets music rating to rating. if SkhcDb.MusicFile.rating music = rating, returns music as is. Otherwise, call SkhcDb.MusicFile.update.
val set_flag :
t ->
SkhcDb.Database.t ->
SkhcDb.MusicFile.t ->
(SkhcDb.MusicFile.t, Sqlite3.Rc.t * string) resultset_flag collection database music_file sets flag to true. if music_file has already flag set to true, this functions returns music_file as is. Otherwise, it calls SkhcDb.MusicFile.update.
val unset_flag :
t ->
SkhcDb.Database.t ->
SkhcDb.MusicFile.t ->
(SkhcDb.MusicFile.t, Sqlite3.Rc.t * string) resultunset_flag collection database music_file sets flag to false. if music_file has already flag set to false, this functions returns music_file as is. Otherwise, it calls SkhcDb.MusicFile.update.
audio collection music_file returns the content of the file pointed by music_file.
raise Sys_error if one of the underlying system calls fails.
val find_with_metadata :
compilation:bool ->
t ->
SkhcDb.Database.t ->
SkhcMetadata.Metadata.t ->
(_, _, _, _, _) SkhcQuery.Field.t SkhcQuery.Query.t ->
(SkhcDb.MusicFile.t
* SkhcDb.Album.t
* (string * SkhcDb.Roles.t) Map.Make(Int64).t
* SkhcMetadata.Metadata.Values.t SkhcMetadata.Metadata.Properties.t)
optionfind_with_metadata ~compilation collection database metadata query tries to find a music within database which has metadata matching metadata with query.