j-holub / Node-MPV

A NodeJs Module for MPV Player
https://www.npmjs.com/package/node-mpv
MIT License
116 stars 73 forks source link

playlistRemove on last playlist item while playing kills MPV #65

Closed twilson90 closed 4 years ago

twilson90 commented 4 years ago

Bug Description

If I'm in the middle of playing the final item of a playlist and I call playlistRemove, the mpv window is closed but node-mpv doesn't detect a quit, and there doesn't appear to be any way to restore mpv afterwards, besides restarting the node process. If I then try to send a command to mpv via ipc I get 'property unavailable'.

I'm not sure if this is the expected behaviour of mpv, but if it is it should be handled better by node-mpv.

Software Versions
Additional context

Anything else you might want to add

j-holub commented 4 years ago

Hey there,

sorry for getting back to this problem so late. Can you give me some steps to reproduce this? I tried the following and it worked as expected

await player.load('song1.mp3');
await player.load('song2.mp3', mode='append');
// skip to the second song
await player.next()
// remove the currently playing second and last track in the playlist
await player.playlistRemove(1)

// mpv is still running

// song is being played
await player.load('song3.mpv');
twilson90 commented 4 years ago

In recent tests, with simpler MPV command line arguments I haven't been able to recreate this. The behaviour I was experiencing was probably related to this issue: https://github.com/mpv-player/mpv/issues/7524#issuecomment-599595562 Thanks for testing this. I'm pretty sure now it's an invalid issue so I'm closing.

j-holub commented 4 years ago

Cool :)