SACD ISO playback in MPD

Discuss client development (or even MPD development if you feel so inclined), ask questions about the client libs, MPD feature requests from client developers, etc...
manisiutkin
Posts: 21
Joined: September 28th, 2014, 5:43 pm

Re: SACD ISO playback in MPD

Post by manisiutkin » December 20th, 2014, 9:39 pm

conta wrote: Do you intend to integrate this sacd-iso-plugin in the main program? Would make things much easier. :)
Does it make sense? Playback of SACD/DVDA ISOs is not very popular on Linux...
About tagging - do you see a chance to change the tags in the sacd-iso directly? Same again - would make things much easier. :D
Technically possible, but it needs to develop an application to edit these only tags. I think the right way is to put tags in different file in format, which is editable by more-or-less standard tag editor.

afalout
Posts: 13
Joined: September 21st, 2014, 7:46 am

Re: SACD ISO playback in MPD

Post by afalout » January 1st, 2015, 11:28 pm

manisiutkin wrote:
conta wrote: Do you intend to integrate this sacd-iso-plugin in the main program? Would make things much easier. :)
Does it make sense? Playback of SACD/DVDA ISOs is not very popular on Linux...
Well there was no way to play SACD/DVDA ISOs on Linux, before you ported this plug-ins, so of course it was not popular - it was not possible :)

(Excluding commertial, GUI-only jRiver Linux port)

And this thread is the only way people can currently find out that they CAN play SAVD/DVDA ISOs on Linux. So it's not that very many people actually know about it.

Asking for a Git pull to main MPD tree would both make sure that:

- your excelent work is not lost (as code tends to drift overt time, soon needs to be rebased, and when this is not done after a while it all falls under "too hard" - too easy, and becomes abandoneware)
- MPD users actually find out about it :)
- And also that DST playback is merged into MPD trunk, as MPD currently cannot play DST
- That people without skills to compile MPD ca use it, by installing pre-compiled packages taht are built from MPD main project code.

So yes, I support this very much. Please let me know if I can be of any help in doing this.
About tagging - do you see a chance to change the tags in the sacd-iso directly? Same again - would make things much easier. :D
Maxim in the meantime implemented xml tag compatibility with FooBar, so now you can edit your tags in Foobar, save XML file with ISO file in same directory, and MPD will read that on scan. For this to work, set tags_with_iso "true" in plugin "dvdaiso" and/or plugin "sacdiso" sections of your MPD config file.

You can alternatively place all your XML tag files in a separate directory using tags_path, but I cant see a good reason to do that...

Andrej

conta
Posts: 99
Joined: October 31st, 2013, 4:59 pm

Re: SACD ISO playback in MPD

Post by conta » January 2nd, 2015, 11:55 pm

Yes, thats exactly my opinion too! :)

Thanks for the hint with the xml-tag-files, which work now also with MPD - i did not know that.
And i very much agree to the following:
afalout wrote:
manisiutkin wrote: - That people without skills to compile MPD ca use it, by installing pre-compiled packages taht are built from MPD main project code.
I have to confess, thats exactly my situation - it is hard enough to compile MPD, MPD with addons is too much for me.
With a good How-To maybe, but without there is no chance... :oops:

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 11th, 2015, 7:06 pm

Can someone please explain to me what git commands I need to fetch all the required files so that I can build this?

The last software revision tool I used was RCS :)

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 12th, 2015, 3:04 am

jason_a69 wrote:Can someone please explain to me what git commands I need to fetch all the required files so that I can build this?

The last software revision tool I used was RCS :)
I did manage to get git working and mpd built.

I am having problems opening SACD iso files though, I get this error in /var/log/mpd/mpd.log for example

++ WARN: unexpected PVD type 0
Jan 12 03:01 : iso9660: Failed to open ISO9660 file /var/lib/mpd/music/USB/SACD/David Bowie/Scary Monsters.iso

my mpd verson is

Music Player Daemon 0.20 (2c0dac8)

Copyright (C) 2003-2007 Warren Dukes <warren.dukes@gmail.com>
Copyright (C) 2008-2014 Max Kellermann <max@duempel.org>
This is free software; see the source for copying conditions. There is NO
warranty; not even MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Database plugins:
simple proxy upnp

Storage plugins:
local

Decoders plugins:
[mad] mp3 mp2
[mpg123] mp3
[vorbis] ogg oga
[oggflac] ogg oga
[flac] flac
[sndfile] wav aiff aif au snd paf iff svx sf voc w64 pvf xi htk caf sd2
[audiofile] wav au aiff aif
[dsdiff] dff
[dsf] dsf
[faad] aac
[mpcdec] mpc
[wavpack] wv
[modplug] 669 amf ams dbm dfm dsm far it med mdl mod mtm mt2 okt s3m stm ult umx xm
[ffmpeg] 16sv 3g2 3gp 4xm 8svx aa3 aac ac3 afc aif aifc aiff al alaw amr anim apc ape asf atrac au aud avi avm2 avs bap bfi c93 cak cin cmv cpk daud dct divx dts dv dvd dxa eac3 film flac flc fli fll flx flv g726 gsm gxf iss m1v m2v m2t m2ts m4a m4b m4v mad mj2 mjpeg mjpg mka mkv mlp mm mmf mov mp+ mp1 mp2 mp3 mp4 mpc mpeg mpg mpga mpp mpu mve mvi mxf nc nsv nut nuv oga ogm ogv ogx oma ogg omg opus psp pva qcp qt r3d ra ram rl2 rm rmvb roq rpl rvc shn smk snd sol son spx str swf tgi tgq tgv thp ts tsp tta xa xvid uv uv2 vb vid vob voc vp6 vmd wav webm wma wmv wsaud wsvga wv wve
[sacdiso] dat iso
[pcm]

Tag plugins:
id3tag

Output plugins:
shout null fifo alsa ao oss jack httpd recorder

Encoder plugins:
null vorbis lame twolame wave flac

Archive plugins:
[iso] iso

Input plugins:
file alsa archive curl ffmpeg mms

Playlist plugins:
extm3u m3u pls xspf asx rss soundcloud cue embcue

Protocols:
file:// http:// https:// mms:// mmsh:// mmst:// mmsu:// gopher:// rtp:// rtsp:// rtmp:// rtmpt:// rtmps:// alsa://


I wonder if it has anything to do with my archive plugin.

manisiutkin
Posts: 21
Joined: September 28th, 2014, 5:43 pm

Re: SACD ISO playback in MPD

Post by manisiutkin » January 12th, 2015, 5:04 pm

jason_a69 wrote:I wonder if it has anything to do with my archive plugin.
Have you tried ./configure --enable-sacdiso --disable-iso9660

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 12th, 2015, 5:17 pm

manisiutkin wrote:
jason_a69 wrote:I wonder if it has anything to do with my archive plugin.
Have you tried ./configure --enable-sacdiso --disable-iso9660
No but I will now, thank you.

I am just thinking that if I want to get multi-channel audio from my PI it has to be fed into my receiver via HDMI and the Pi by itself does not have enough grunt for that. A dac would not help because it would not be HDMI.
Still, I can try the 2 channel route for now...

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 13th, 2015, 12:35 am

Unfortunately that did not work.

Should mpd be able to read the SACD ISO files or do I need to extract them first?

afalout
Posts: 13
Joined: September 21st, 2014, 7:46 am

Re: SACD ISO playback in MPD

Post by afalout » January 13th, 2015, 2:44 am

jason_a69 wrote:Unfortunately that did not work.

Should mpd be able to read the SACD ISO files or do I need to extract them first?
The whole point of this plugin is to enable MPD to read SACD and DVDA ISOs.

WHat exactly do you mean by "that did not work"?

Andrej

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 13th, 2015, 4:37 pm

afalout wrote:
jason_a69 wrote:Unfortunately that did not work.

Should mpd be able to read the SACD ISO files or do I need to extract them first?
The whole point of this plugin is to enable MPD to read SACD and DVDA ISOs.

WHat exactly do you mean by "that did not work"?

Andrej
Yes, sorry, some debug information would help.

I got this in /var/log/mpd/mpd.log

++ WARN: unexpected PVD type 0
Jan 13 16:36 : iso9660: Failed to open ISO9660 file /var/lib/mpd/music/USB/sacd/David/Scary.iso

manisiutkin
Posts: 21
Joined: September 28th, 2014, 5:43 pm

Re: SACD ISO playback in MPD

Post by manisiutkin » January 13th, 2015, 8:46 pm

Could you try this:

mpd --kill /etc/mpd.conf
rm /var/lib/mpd/tag_cache
git clone git://git.musicpd.org/manisiutkin/mpd.git
./autogen.sh
./configure --enable-sacdiso --disable-iso9660
make
make install
mpd /etc/mpd.conf

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 13th, 2015, 10:00 pm

It failed to build with this error. I passed --enable-despotify=no to configure.sh

src/lib/despotify/DespotifyUtils.cxx:86:12: error: invalid use of incomplete type ‘const struct ds_track’
if (!track.has_meta_data)
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
src/lib/despotify/DespotifyUtils.cxx:93:51: error: invalid use of incomplete type ‘const struct ds_track’
snprintf(tracknum, sizeof(tracknum), "%d", track.tracknumber);
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
src/lib/despotify/DespotifyUtils.cxx:99:43: error: invalid use of incomplete type ‘const struct ds_track’
snprintf(date, sizeof(date), "%d", track.year);
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
src/lib/despotify/DespotifyUtils.cxx:107:10: error: invalid use of incomplete type ‘const struct ds_track’
track.file_bitrate / 1000,
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
src/lib/despotify/DespotifyUtils.cxx:108:10: error: invalid use of incomplete type ‘const struct ds_track’
track.geo_restricted ? "" : "not ");
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
src/lib/despotify/DespotifyUtils.cxx:112:30: error: invalid use of incomplete type ‘const struct ds_track’
tag.AddItem(TAG_TITLE, track.title);
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
src/lib/despotify/DespotifyUtils.cxx:113:31: error: invalid use of incomplete type ‘const struct ds_track’
tag.AddItem(TAG_ARTIST, track.artist->name);
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
src/lib/despotify/DespotifyUtils.cxx:114:30: error: invalid use of incomplete type ‘const struct ds_track’
tag.AddItem(TAG_ALBUM, track.album);
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
src/lib/despotify/DespotifyUtils.cxx:115:46: error: invalid use of incomplete type ‘const struct ds_track’
tag.SetDuration(SignedSongTime::FromMS(track.length));
^
In file included from src/lib/despotify/DespotifyUtils.cxx:20:0:
src/lib/despotify/DespotifyUtils.hxx:25:8: error: forward declaration of ‘const struct ds_track’
struct ds_track;
^
make[1]: *** [src/lib/despotify/libinput_a-DespotifyUtils.o] Error 1
make[1]: Leaving directory `/home/pi/mpd2'
make: *** [all] Error 2

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 13th, 2015, 11:51 pm

I managed to get it to build with the configure above.

Unfortunately I am still getting this error
++ WARN: unexpected PVD type 0
Jan 13 23:50 : iso9660: Failed to open ISO9660 file /var/lib/mpd/music/USB/sacd/David/Scary.iso

afalout
Posts: 13
Joined: September 21st, 2014, 7:46 am

Re: SACD ISO playback in MPD

Post by afalout » January 14th, 2015, 12:48 am

jason_a69 wrote:I managed to get it to build with the configure above.

Unfortunately I am still getting this error
++ WARN: unexpected PVD type 0
Jan 13 23:50 : iso9660: Failed to open ISO9660 file /var/lib/mpd/music/USB/sacd/David/Scary.iso
The fact that "iso9660" appears above, clearly shows you either did not use --disable-iso9660 ./configure flag, and/or are not running the mpd instance that was compiled using --disable-iso9660 flag, and / or the code configure using --disable-iso9660 was not compiled successfully.

In essence, message is telling that ISO9660 plugin does not know how to read SACD ISO file. Which is to be expected. You want SACD ISO plugin to read SACD ISO files.

Andre

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 14th, 2015, 12:51 am

afalout wrote:
jason_a69 wrote:I managed to get it to build with the configure above.

Unfortunately I am still getting this error
++ WARN: unexpected PVD type 0
Jan 13 23:50 : iso9660: Failed to open ISO9660 file /var/lib/mpd/music/USB/sacd/David/Scary.iso
The fact that "iso9660" appears above, clearly shows you either did not use --disable-iso9660 ./configure flag, and/or are not running the mpd instance that was compiled using --disable-iso9660 flag, and / or the code configure using --disable-iso9660 was not compiled successfully.

In essence, message is telling that ISO9660 plugin does not know how to read SACD ISO file. Which is to be expected. You want SACD ISO plugin to read SACD ISO files.

Andre
OK I will check the path and date of the mpd file that is started, probably on Friday as I'm away on business tomorrow and Thursday. Thanks for your kind assistance.

jason_a69
Posts: 14
Joined: January 11th, 2015, 12:56 pm

Re: SACD ISO playback in MPD

Post by jason_a69 » January 14th, 2015, 1:11 am

jason_a69 wrote:
afalout wrote:
jason_a69 wrote:I managed to get it to build with the configure above.

Unfortunately I am still getting this error
++ WARN: unexpected PVD type 0
Jan 13 23:50 : iso9660: Failed to open ISO9660 file /var/lib/mpd/music/USB/sacd/David/Scary.iso
The fact that "iso9660" appears above, clearly shows you either did not use --disable-iso9660 ./configure flag, and/or are not running the mpd instance that was compiled using --disable-iso9660 flag, and / or the code configure using --disable-iso9660 was not compiled successfully.

In essence, message is telling that ISO9660 plugin does not know how to read SACD ISO file. Which is to be expected. You want SACD ISO plugin to read SACD ISO files.

Andre
OK I will check the path and date of the mpd file that is started, probably on Friday as I'm away on business tomorrow and Thursday. Thanks for your kind assistance.
Actually, I just checked it now, you were correct, it was pointing to the wrong file. I made the following change to /etc/init.d/mpd
DAEMON=/usr/local/bin/mpd

Now I need to compile it on my Qnap, the Pi does not have enough grunt to play these without a DAC.

Thanks once again for your help.

conta
Posts: 99
Joined: October 31st, 2013, 4:59 pm

Re: SACD ISO playback in MPD

Post by conta » March 5th, 2015, 11:44 am

Too bad.
I tried to initialize the integration of of the SACD-ISO-playback-capability into main-MPD.

http://bugs.musicpd.org/view.php?id=4321

But it seems not to work out. The software is not free, so its illegal to use it in MPD. What a pity!

tuxx
Posts: 16
Joined: March 21st, 2015, 5:21 pm

Re: SACD ISO playback in MPD

Post by tuxx » March 21st, 2015, 5:23 pm

Hi manisiutkin!

Thank you very much for this feature!

I managed to build this version in my archlinuxarm box and it plays sacd isos fine.

I hope that this code will be a part of official mpd development tree very soon.

Cheers,

Michael

tuxx
Posts: 16
Joined: March 21st, 2015, 5:21 pm

Re: SACD ISO playback in MPD

Post by tuxx » March 23rd, 2015, 2:05 pm

Hi manisiutkin,

I managed to build it successfuly with sacd iso support using in mpd.conf

decoder {
plugin "sacdiso"
dstdec_threads "4"
edited_master "true"
lsbitfirst "false"
}


Will I need a new decoder section for dvdaiso?

DuffyMoon
Posts: 11
Joined: May 12th, 2015, 10:31 pm

Re: SACD ISO playback in MPD

Post by DuffyMoon » May 12th, 2015, 11:41 pm

manisiutkin wrote:Could you try this:

mpd --kill /etc/mpd.conf
rm /var/lib/mpd/tag_cache
git clone git://git.musicpd.org/manisiutkin/mpd.git
./autogen.sh
./configure --enable-sacdiso --disable-iso9660
make
make install
mpd /etc/mpd.conf
Hi. sorry I'm a total Linux noob but I'd like to get this working on my Beaglebone Black if I can.

I entered the above but got:

Code: Select all

-bash git:command not found
Last edited by DuffyMoon on May 18th, 2015, 1:32 am, edited 2 times in total.

Post Reply