Skip to content

Try common tags by default for play-tagged command #48

@Splendide-Imaginarius

Description

@Splendide-Imaginarius

Is your feature request related to a problem? Please describe.

When using the play-tagged command, manually checking which tag convention a given file uses is bothersome, as is manually entering that on the command line.

Describe the solution you'd like

If no tags are explicitly specified on the command line for play-tagged, check for commonly used tags and use those if they're found.

I looked at SDL_mixer, and I see that it supports the following:

  • LOOPSTART
  • LOOPLENGTH
  • LOOPEND
  • LOOP_START
  • LOOP_LENGTH
  • LOOP_END
  • LOOP-START
  • LOOP-LENGTH
  • LOOP-END

Meanwhile vgmstream supports the following:

  • LOOP_START
  • LOOPPOINT
  • COMMENT=LOOPPOINT
  • LOOPSTART
  • um3.stream.looppoint.start
  • LOOP_BEGIN
  • LOOP
  • XIPH_CUE_LOOPSTART
  • LOOPS
  • LOOPLENGTH
  • LOOP_END
  • LoopEnd
  • XIPH_CUE_LOOPEND
  • LOOPE

Describe alternatives you've considered (if relevant)

Picking a default tag pair for the tag command could be done as well, but since many game engines expect a specific tag pair, and there's inconsistent behavior between game engines, this should probably not be done automatically.

If supporting all of the ones I listed is too unwieldy, I suppose we could just check for LOOPSTART, LOOPLENGTH, LOOPEND, and the underscore-containing variants thereof. I don't see much harm in supporting all of them though; it seems that these are all used somewhere in the wild, and supporting all of them just means having more entries in a list of strings that we iterate through.

Additional context

I would be happy to submit a PR if you'd be amenable to accepting one.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions