Neil Patrick's Mansion

    mpris-service

    2.1.2 • Public • Published

    mpris-service

    Build Status

    Node.js implementation for the MPRIS D-Bus Interface Specification to create a mediaplayer service.

    Documentation

    Chat

    var Player = require('mpris-service');
    
    var player = Player({
    	name: 'nodejs',
    	identity: 'Node.js media player',
    	supportedUriSchemes: ['file'],
    	supportedMimeTypes: ['audio/mpeg', 'application/ogg'],
    	supportedInterfaces: ['player']
    });

    Implemented interfaces:

    Examples are available in examples/.

    Default interface

    player.on('quit', function () {
    	process.exit();
    });

    Events:

    • raise
    • quit
    • fullscreen

    Properties:

    • identity
    • name
    • supportedUriSchemes
    • supportedMimeTypes
    • desktopEntry

    Player

    // See http://www.freedesktop.org/wiki/Specifications/mpris-spec/metadata/
    player.metadata = {
    	'mpris:trackid': player.objectPath('track/0'),
    	'mpris:length': 60 * 1000 * 1000, // In microseconds
    	'mpris:artUrl': 'https://pbs.twimg.com/profile_images/378800000822867536/3f5a00acf72df93528b6bb7cd0a4fd0c.jpeg',
    	'xesam:title': 'Best song',
    	'xesam:album': 'Best album',
    	'xesam:artist': ['Best singer']
    };
    
    player.playbackStatus = 'Playing';

    See examples/player.js.

    Events:

    • next
    • previous
    • pause
    • playpause
    • stop
    • play
    • seek
    • open
    • loopStatus
    • rate
    • shuffle
    • volume

    Properties:

    • playbackStatus
    • loopStatus
    • rate
    • shuffle
    • volume
    • metadata
    • minimumRate
    • maximumRate
    • canGoNext
    • canGoPrevious
    • canPlay
    • canPause
    • canSeek
    • canControl

    Methods:

    • seeked(position)
    • getPosition() (should be overridden to return the current position)

    TrackList

    Events:

    • addTrack
    • removeTrack
    • goTo

    Properties:

    • tracks
    • canEditTracks

    Methods:

    • addTrack(track)
    • removeTrack(trackId)

    Playlists

    Events:

    • activatePlaylist

    Properties:

    • playlists
    • activePlaylist

    Methods:

    • setPlaylists(playlists)
    • setActivePlaylist(playlistId)

    Install

    npm i mpris-service

    DownloadsWeekly Downloads

    1,336

    Version

    2.1.2

    License

    MIT

    Unpacked Size

    197 kB

    Total Files

    34

    Last publish

    Collaborators

    • tonyctl
    • emersion