Project

General

Profile

Problem with subsongs support

Added by Matti Tiainen over 9 years ago

Hi,

I started working on plugin for UADE (http://zakalwe.fi/uade/), but hit a problem with subsongs.

It seems that subsongs only work (in Audacious 3.5.1) if the input plugin defines explicit file extensions or URI schemes, otherwise the subsong data in a Tuple returned from probe_for_tuple() call is ignored.

I think the problem is that subsongs are only checked in adder.c/add_file(), which in turn only considers the file extension or scheme (via probe.c/file_find_decoder()).
Otherwise the tuple is read via scanner.c code, which doesn't seem to know anything about subsongs defined in the Tuple.

This is a bit inconvenient for Amiga music files, which are usually distributed using a file format prefix rather than suffix (MOD.klisje_paa_klisje, cust.ingame1-7 etc.).

Any help would be appreciated, thanks.

- Matti


Replies (3)

RE: Problem with subsongs support - Added by John Lindgren over 9 years ago

Matti Tiainen wrote:

It seems that subsongs only work (in Audacious 3.5.1) if the input plugin defines explicit file extensions or URI schemes, otherwise the subsong data in a Tuple returned from probe_for_tuple() call is ignored.

Yes, that's true in the current design. I'll have to think about a way to solve this problem.

RE: Problem with subsongs support - Added by John Lindgren over 9 years ago

Having thought about it some more ...

In the current design, the idea is, when opening files, to get them added to the playlist as quickly as possible so that we can begin playing them. To that end, we just look at filename extensions and try to avoid probing file contents until after the files are in the playlist, when we can do it in the background. But for your use case, you have subtunes in files that can only be identified by probing. So we really need to look at the file contents before adding the files to the playlist. I don't want to make everybody's music player run slower in order to fix one somewhat unusual use case, so I've added an option: "Probe content of files with no recognized filename extension".

https://github.com/audacious-media-player/audacious/commit/ca6f0431f3ba4eec26775e8a3cc656dc8b870c94

    (1-3/3)