Short: MPEG audio player for Delfina DSP Author: smack42@web.de (Michael Henke) Uploader: smack42 web de (Michael Henke) Type: mus/play Version: 1.1 Architecture: m68k-amigaos >= 2.0.4 DelfMPEG 1.1 (2026-08-23) #features -plays MPEG audio files with almost no CPU load (Delfina's DSP56002 does all the decoding and playback) -supports MPEG-1 layer II and III -can write the decoded audio data to a file -ARexx interface (full 'remote control' capability) -multi-stage buffering system (for smooth playback while loading from disk) -free software (full source code included, of course) #required -CPU 68020+ -AmigaOS V37+ -Delfina DSP board -developed on A1200 - OS3.2/68030+882@40MHz/16MBFastRAM/Delfina1200DSP -tested on various machines with Delfina 1200, Lite, Plus or Flipper #recommended -latest version of delfina.library (see also 'known problems' section) -some MPEG audio files :) #changes since previous release - do not use asyncio.library anymore, AsyncIO is now statically linked - do not use reqtools.library anymore, use ASL file requesters instead - do not overwrite any existing files when using option OUTFILE - display Delfina supported audio frequencies in VERBOSE mode - changed the default FFSKIP value to 40, which is about one second - improved duration estimation by subtracting any skipped file headers - mp2 and mp3 decoders are slightly faster and a tiny bit more accurate #how to use DelfMPEG is a shell-only program. The following options can be used: FILES ......... -one or more filenames. (MPEG files or playlists) -if omitted a file requester appears. -if a file is not recognized as MPEG-1 audio then it is interpreted as a playlist file. playlists are simple text files that can be generated by popular player programs, such as AMPlifier, Winamp (*.m3u) and others. -playlist format: one file name per line, comment lines beginning with a '#' character are ignored. OUTFILE/-o -write decoded data to this file (no playback). -output file format: raw PCM (no AIFF or WAV header), 16 bits per sample (big endian), number of channels (1=mono or 2=stereo) and sampling frequency (32000, 44100 or 48000 Hz) are taken from the MPEG input file. -note: you can use DelfSF to play the raw file. (Aminet:mus/play/DelfSF.lha) OUTFILEINTEL/-oi -same as OUTFILE, except that the output data is written in Intel byteorder (little endian). -note: you can use DelfSF to play the raw file. (Aminet:mus/play/DelfSF.lha) AREXX ......... -activate ARexx mode. -please read the file 'arexx.txt' for details. -there are some example scripts in the 'rexx' sub-directory VERBOSE/-v .... -output more information. NOPLAY/-n ..... -don't play but just output some information. -this works also without a Delfina board. SHOWTAG/-t .... -display ID3v1 tag before playing. -some extra information that can be appended to MPEG audio files, such as title, artist etc. MONO/-m ....... -decode only the left channel of stereo files. -WARNING: degrades playback quality! -this option can be used to reduce DSP load on Delfina Lite boards which have a slower DSP (40 MHz instead of 73 MHz) DACRATE/-d (default: 0) -set Delfina's codec rate to a fixed value (in kHz). -WARNING: can degrade playback quality! -this option can be used to reduce DSP load on Delfina Lite boards which have a slower DSP (40 MHz instead of 73 MHz) -the default value of 0 (zero) means "best quality" -the given value is automatically rounded to the nearest available Delfina rate: 16, 27, 32 or 48 kHz. (for Delfina 1200 and Plus: 12, 24, 36 or 48 kHz) VOLUME/-vol (default: 100) -set the playback volume (in per cent, range 0...200). -WARNING: can degrade playback quality! if the volume is boosted (101...200) there can be distortions caused by output clipping. FRAMEBUF/-f (default: 100) -set the number of read-ahead frame buffers. (does not influence performance) ASYNCBUF/-a (default: 128) -set the size of the AsyncIO buffer (in Kbytes). (large IO-buffers = faster reading from disk) FFSKIP/-ff (default: 40) -set the number of frames that are skipped during fast forward mode, i.e. when Ctrl-F is pressed NOFASTL/-nl NOFASTP/-np ... -the fast internal DSP memory is NOT used (L-data/Program) -only useful for benchmarks or debugging NOTIMER/-nt ... -suppress output of the position timer during playback. (recommended for playing background music while you are using other programs) STRICT/-s ..... -abort playback when an error in input file is detected. (normally DelfMPEG tries to continue playback by skipping the error in the file) During playback these keys can be used: Ctrl-F fast forward Ctrl-E pause/continue Ctrl-C stop current file, start next file Ctrl-D quit program #known problems -DelfMPEG only recognizes MPEG-1 audio files. not supported: MPEG-2 or mixed audio/video files. -some mp3 files are not played correctly! what's wrong with DelfMPEG? 1) DSP load approaches or exceeds the 100% limit on slow Delfinas. symptom: audible "drop-outs", DECODER_BUSY warning in VERBOSE mode. actions: use MONO or DACRATE options to reduce DSP load (and quality) or overclock your Delfina Lite (by hardware modification or software hack "DelfTweak") or buy a new, faster Delfina. 2) in VERBOSE mode an "unexpected EOF" error is reported for some files. symptom: just the error message. actions: this seems to be caused by some (bad) MPEG audio encoders that truncate the last frame in mp3 files. use LAME instead, it's the best mp3 encoder around, IMO. -DelfMPEG causes deadlocks/crashes. 1) for the Petsoff Delfinas (Classic, Lite, Plus, 1200) it seems that the most stable driver is still this inofficial version: delfina.library 4.16 ß 3 PATCH#2 14-Oct-2001 2) for the Delfina Flipper by Individual Computers use the latest driver (delfina.library) that is available at the vendor site: https://wiki.icomp.de/wiki/Delfina or you can ask in an Amiga forum if there are any further developments of the open source driver software #acknowledgements DelfMPEG uses ideas/code from: -MPEG Audio Layer II decoder by Fredrik Noring and Tomas Berndtsson (an mp2 player for Atari Falcon, DSP56K code) -amp11 by Niklas Beisert (clean and fast C++ code) -FalcAMP by Denis "STGhost" Huguet and David "Splash" Carrere (an mp3 player for Atari Falcon, DSP56K code) -reference code by MPEG Software Simulation Group ("the original" C code) #author mailto: smack42@web.de DelfMPEG - MPEG audio player for Delfina DSP Copyright (C) 1999-2026 Michael Henke This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see .