More actions
(Created page with "{{Infobox Switch Homebrews |title=NXMilk |image=nxmilkswitch.png |description=NXMilk is a trivial audio player for Nintendo Switch. |author=proconsule |lastupdated=2024/02/18 |type=Media players |version=0.0.3 |license=Mixed |download=https://dlhb.gamebrew.org/switchhomebrews/nxmilkswitch.7z |website=https://gbatemp.net/threads/nxmilk-a-trivial-audio-player-for-switch.646603/ |source=https://github.com/proconsule/NXMilk |donation= }} {{#seo: |title=Switch Homebrew Apps (...") |
No edit summary |
||
(6 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
|title=NXMilk | |title=NXMilk | ||
|image=nxmilkswitch.png | |image=nxmilkswitch.png | ||
|description= | |description=Switch audio player using ProjectM for visualizations. | ||
|author=proconsule | |author=proconsule | ||
|lastupdated=2024/02/18 | |lastupdated=2024/02/18 | ||
|type=Media | |type=Media Players | ||
|version=0.0.3 | |version=0.0.3 | ||
|license=Mixed | |license=Mixed | ||
Line 19: | Line 19: | ||
|image_alt=NXMilk | |image_alt=NXMilk | ||
}} | }} | ||
NXMilk is | NXMilk is a trivial audio player for Nintendo Switch. It uses FFMpeg for audio decoding and projectM for the vis. The GUI is made with ImGui. | ||
This project started as a test class for new audio player for NXMP. | |||
== Features == | == Features == | ||
* | * MP3 support (with ID3 tag support). | ||
* Vis using projectM library | * OGG support (with metadata support if present). | ||
* Support Japanese,Chinese,Korean Cyrilic fonts | * FLAC support (with metadata support if present). | ||
* Can read from SD card and from USB storage | * Vis using projectM library. | ||
=== Supported | * Support Japanese,Chinese,Korean Cyrilic fonts. | ||
* Can read from SD card and from USB storage. | |||
== Installation == | |||
* Copy NXMilk.nro in a subfolder eg. /switch/NXMilk/. | |||
* (Optional) Copy milk files in /switch/NXMilk/presets/milk/. | |||
* (Optional) Copy texture files in /switch/NXMilk/presets/Textures/. | |||
Edit Config file NXMilk.ini: | |||
<pre class="language-ini">[AudioPlayer] | |||
startpath = /switch/NXMilk | |||
milkpresetspath = /switch/NXMilk/presets/milk/ | |||
milktexturespath = /switch/NXMilk/presets/Textures/ | |||
interfacehidesec = 10 | |||
usebuiltinpreset = true | |||
</pre> | |||
NXMilk has some builtin presets. Can be disabled setting to false the usebuiltinpreset option. | |||
Many milkdrop presets to use: https://github.com/projectM-visualizer/presets-cream-of-the-crop | |||
== User guide == | |||
=== Supported files === | |||
* MP3 support (with ID3 tag support) | * MP3 support (with ID3 tag support) | ||
* OGG support (with metadata support if present) | * OGG support (with metadata support if present) | ||
* FLAC support (with metadata support if present) | * FLAC support (with metadata support if present) | ||
=== Supported | |||
=== Supported files using libopenmpt === | |||
* Composer 667 (.667) | * Composer 667 (.667) | ||
* Composer 669 / UNIS 669 (.669) | * Composer 669 / UNIS 669 (.669) | ||
Line 73: | Line 98: | ||
* Mod's Grave (.wow) | * Mod's Grave (.wow) | ||
* Astroidea XMF (.xmf) | * Astroidea XMF (.xmf) | ||
=== Supported | |||
=== Supported files using libgme === | |||
* AY ZX Spectrum/Amstrad CPC | * AY ZX Spectrum/Amstrad CPC | ||
* GBS Nintendo Game Boy | * GBS Nintendo Game Boy | ||
Line 84: | Line 110: | ||
* VGM/VGZ Sega Master System/Mark III, Sega Genesis/Mega Drive,BBC Micro | * VGM/VGZ Sega Master System/Mark III, Sega Genesis/Mega Drive,BBC Micro | ||
=== Supported | === Supported files using libmodplug === | ||
* Nearly all the formats supported by libopenmpt | * Nearly all the formats supported by libopenmpt | ||
* MIDI files (for better result you must use GUS patch | * MIDI files (for better result you must use GUS patch file https://www.chocolate-doom.org/wiki/index.php/GUS) | ||
== | == Controls == | ||
ZL/ZR - Previous/Next Preset | |||
L/R - Seek -/+ 5 seconds | |||
B - Stop | |||
Y - Disable projectM Vis | |||
Press Y to toogle between SD Card and USB. | |||
Limited Touch Support. | |||
==Screenshots== | == Screenshots == | ||
https://dlhb.gamebrew.org/switchhomebrews/nxmilkswitch-01.png | https://dlhb.gamebrew.org/switchhomebrews/nxmilkswitch-01.png | ||
https://dlhb.gamebrew.org/switchhomebrews/nxmilkswitch-02.png | https://dlhb.gamebrew.org/switchhomebrews/nxmilkswitch-02.png | ||
==Changelog== | == Changelog == | ||
'''v0.0.3''' | '''v0.0.3''' | ||
*Add support for Tracker files (.mod,.okt,.xm,.s3m) via libopenmpt (https://lib.openmpt.org/libopenmpt/) | * Add support for Tracker files (.mod,.okt,.xm,.s3m) via libopenmpt (https://lib.openmpt.org/libopenmpt/). | ||
'''v0.0.2''' | '''v0.0.2''' | ||
* First Release. | * First Release. | ||
== Libraries used in this | == Credits == | ||
* | Libraries used in this project: | ||
* | * FFMpeg https://ffmpeg.org/ | ||
* | * ImGui https://github.com/ocornut/imgui | ||
* projectM https://github.com/projectM-visualizer/projectm | |||
* Many code parts are taken form NXMP https://github.com/proconsule/nxmp | |||
* Many code parts are taken form | |||
Thanks to: | |||
* spkatsi | * [https://gbatemp.net/members/476106/ @spkatsi] | ||
* Djakku | * [https://gbatemp.net/members/488292/ @Djakku] | ||
== External links == | == External links == | ||
* | * GitHub - https://github.com/proconsule/NXMilk | ||
* GBAtemp - https://gbatemp.net/threads/nxmilk-a-trivial-audio-player-for-switch.646603/ |
Latest revision as of 05:58, 18 July 2024
NXMilk | |
---|---|
General | |
Author | proconsule |
Type | Media Players |
Version | 0.0.3 |
License | Mixed |
Last Updated | 2024/02/18 |
Links | |
Download | |
Website | |
Source | |
NXMilk is a trivial audio player for Nintendo Switch. It uses FFMpeg for audio decoding and projectM for the vis. The GUI is made with ImGui.
This project started as a test class for new audio player for NXMP.
Features
- MP3 support (with ID3 tag support).
- OGG support (with metadata support if present).
- FLAC support (with metadata support if present).
- Vis using projectM library.
- Support Japanese,Chinese,Korean Cyrilic fonts.
- Can read from SD card and from USB storage.
Installation
- Copy NXMilk.nro in a subfolder eg. /switch/NXMilk/.
- (Optional) Copy milk files in /switch/NXMilk/presets/milk/.
- (Optional) Copy texture files in /switch/NXMilk/presets/Textures/.
Edit Config file NXMilk.ini:
[AudioPlayer] startpath = /switch/NXMilk milkpresetspath = /switch/NXMilk/presets/milk/ milktexturespath = /switch/NXMilk/presets/Textures/ interfacehidesec = 10 usebuiltinpreset = true
NXMilk has some builtin presets. Can be disabled setting to false the usebuiltinpreset option.
Many milkdrop presets to use: https://github.com/projectM-visualizer/presets-cream-of-the-crop
User guide
Supported files
- MP3 support (with ID3 tag support)
- OGG support (with metadata support if present)
- FLAC support (with metadata support if present)
Supported files using libopenmpt
- Composer 667 (.667)
- Composer 669 / UNIS 669 (.669)
- ASYLUM Music Format / Advanced Music Format (.amf / .dmf)
- Extreme’s Tracker / Velvet Studio (.ams)
- Composer 670 / CDFM (.c67)
- Digi Booster Pro (.dbm)
- Digi Booster (.digi)
- X-Tracker (.dmf)
- DSIK (.dsm)
- Dynamic Studio (.dsm)
- Digital Symphony (.dsym)
- Digital Tracker / Digital Home Studio (.dtm)
- Farandole Composer (.far)
- Davey W. Taylor’s FM Tracker (.fmt)
- General Digital Music (.gdm)
- Graoumf Tracker 1 (.gtk / .gt2)
- Ice Tracker / SoundTracker 2.6 (.ice / .st26)
- Imago Orpheus (.imf)
- Impulse Tracker Project (.itp) – legacy OpenMPT format with instruments stored in external files rather than directly in the module
- Jazz Jackrabbit 2 Music (.j2b)
- SoundTracker and compatible (.m15 / .stk)
- DigiTrakker (.mdl)
- OctaMED (.med)
- MO3 (.mo3)
- MadTracker 2 (.mt2)
- MultiTracker (.mtm)
- Psycho Pinball / Micro Machines 2 music format (.mus)
- Oktalyzer (.okt)
- OggMod-compressed XM files (.oxm)
- Epic Megagames MASI (.psm)
- Disorder Tracker 2 (.plm)
- ProTracker 3.6 IFF (.pt36)
- PolyTracker (.ptm)
- SoundFX / MultiMedia Sound (.sfx / .sfx2 / .mms)
- Scream Tracker 2 (.stm)
- Scream Tracker Music Interface Kit (.stx)
- Soundtracker Pro II (.stp)
- Symphonie / Symphonie Pro (.symmod)
- UltraTracker (.ult)
- Unreal Music (.umx) only from Unreal (Tournament 1), Deus Ex and Jazz Jackrabbit 3D
- Mod's Grave (.wow)
- Astroidea XMF (.xmf)
Supported files using libgme
- AY ZX Spectrum/Amstrad CPC
- GBS Nintendo Game Boy
- GYM Sega Genesis/Mega Drive
- HES NEC TurboGrafx-16/PC Engine
- KSS MSX Home Computer/other Z80 systems (doesn't support FM sound)
- NSF/NSFE Nintendo NES/Famicom (with VRC 6, Namco 106, and FME-7 sound)
- SAP Atari systems using POKEY sound chip
- SPC Super Nintendo/Super Famicom
- VGM/VGZ Sega Master System/Mark III, Sega Genesis/Mega Drive,BBC Micro
Supported files using libmodplug
- Nearly all the formats supported by libopenmpt
- MIDI files (for better result you must use GUS patch file https://www.chocolate-doom.org/wiki/index.php/GUS)
Controls
ZL/ZR - Previous/Next Preset
L/R - Seek -/+ 5 seconds
B - Stop
Y - Disable projectM Vis
Press Y to toogle between SD Card and USB.
Limited Touch Support.
Screenshots
Changelog
v0.0.3
- Add support for Tracker files (.mod,.okt,.xm,.s3m) via libopenmpt (https://lib.openmpt.org/libopenmpt/).
v0.0.2
- First Release.
Credits
Libraries used in this project:
- FFMpeg https://ffmpeg.org/
- ImGui https://github.com/ocornut/imgui
- projectM https://github.com/projectM-visualizer/projectm
- Many code parts are taken form NXMP https://github.com/proconsule/nxmp
Thanks to: