mirror of
https://github.com/libretro/scummvm.git
synced 2024-11-27 11:20:40 +00:00
BASE: Implement a command to list all available audio devices on the shell.
This commit is contained in:
parent
658fe0aa10
commit
debd94fbaa
1
README
1
README
@ -956,6 +956,7 @@ arguments -- see the next section.
|
||||
--themepath=PATH Path to where GUI themes are stored
|
||||
--list-themes Display list of all usable GUI themes
|
||||
-e, --music-driver=MODE Select music driver (see also section 7.0)
|
||||
--list-audio-devices List all available audio devices
|
||||
-q, --language=LANG Select game's language (see also section 5.2)
|
||||
-m, --music-volume=NUM Set the music volume, 0-255 (default: 192)
|
||||
-s, --sfx-volume=NUM Set the sfx volume, 0-255 (default: 192)
|
||||
|
@ -39,6 +39,8 @@
|
||||
|
||||
#include "gui/ThemeEngine.h"
|
||||
|
||||
#include "audio/musicplugin.h"
|
||||
|
||||
#define DETECTOR_TESTING_HACK
|
||||
#define UPGRADE_ALL_TARGETS_HACK
|
||||
|
||||
@ -81,6 +83,7 @@ static const char HELP_STRING[] =
|
||||
" --themepath=PATH Path to where GUI themes are stored\n"
|
||||
" --list-themes Display list of all usable GUI themes\n"
|
||||
" -e, --music-driver=MODE Select music driver (see README for details)\n"
|
||||
" --list-audio-devices List all available audio devices\n"
|
||||
" -q, --language=LANG Select language (en,de,fr,it,pt,es,jp,zh,kr,se,gb,\n"
|
||||
" hb,ru,cz)\n"
|
||||
" -m, --music-volume=NUM Set the music volume, 0-255 (default: 192)\n"
|
||||
@ -381,6 +384,9 @@ Common::String parseCommandLine(Common::StringMap &settings, int argc, const cha
|
||||
DO_OPTION('e', "music-driver")
|
||||
END_OPTION
|
||||
|
||||
DO_LONG_COMMAND("list-audio-devices")
|
||||
END_OPTION
|
||||
|
||||
DO_LONG_OPTION_INT("output-rate")
|
||||
END_OPTION
|
||||
|
||||
@ -689,6 +695,21 @@ static void listThemes() {
|
||||
printf("%-14s %s\n", i->id.c_str(), i->name.c_str());
|
||||
}
|
||||
|
||||
/** Lists all output devices */
|
||||
static void listAudioDevices() {
|
||||
MusicPlugin::List pluginList = MusicMan.getPlugins();
|
||||
|
||||
printf("ID Description\n");
|
||||
printf("------------------------------ ------------------------------------------------\n");
|
||||
|
||||
for (MusicPlugin::List::const_iterator i = pluginList.begin(), iend = pluginList.end(); i != iend; ++i) {
|
||||
MusicDevices deviceList = (**i)->getDevices();
|
||||
for (MusicDevices::iterator j = deviceList.begin(), jend = deviceList.end(); j != jend; ++j) {
|
||||
printf("%-30s %s\n", Common::String::format("\"%s\"", j->getCompleteId().c_str()).c_str(), j->getCompleteName().c_str());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#ifdef DETECTOR_TESTING_HACK
|
||||
static void runDetectorTest() {
|
||||
@ -906,6 +927,9 @@ bool processSettings(Common::String &command, Common::StringMap &settings, Commo
|
||||
} else if (command == "list-themes") {
|
||||
listThemes();
|
||||
return true;
|
||||
} else if (command == "list-audio-devices") {
|
||||
listAudioDevices();
|
||||
return true;
|
||||
} else if (command == "version") {
|
||||
printf("%s\n", gScummVMFullVersion);
|
||||
printf("Features compiled in: %s\n", gScummVMFeatures);
|
||||
|
Loading…
Reference in New Issue
Block a user