UNDER CONSTRUCTION "Everything you could write in REXX, but are too lazy to get to it" Last update - 28.12.2002 (corrected a bug with znp.exe quitting when a DOS game is being used). Achtung! ID3v1 tags only supported. A set of OS/2 commandline utilities for use with Qu-Player CMD/2 by Anton Malykh and VIO mp3-player Z! by Dink. Playlist composition in File Commander/2, "np:" line generation, exact playlist playback time calculation, playlist logging, unplayed playlist part restoration after system crashes, batch mp3 renaming, ... Author: shoorah@yandex.ru (responds reluctantly!) Download quutil.rar NP.EXE Allows to insert automatically a line like "np: Artist 'Title'" into FIDO, e-mail messages or wherever else. To use, run concurrently with qucmd.exe like this: qucmd.exe @playlist.m3u | np.exe /o:path\to\output\file /s:pattern Pattern string format: Use "~" to denote a space, "`" for quote symbol. Recognized keywords: ARTIST, TITLE, ALBUM, YEAR . Keywords in the pattern string must be separated by a "+" sign. Pattern string example: Now~Playing:~+artist~+`title`~+//~album~+('year) Actual string in a message in this case will look like Now Playing: GoatFuckers "GoatFucking - fuckthegoat remix" // Best of GoatFuckers ('2002) Parts of the pattern string, corresponding to empty mp3 tag fields, i.e. everything between two "+" signs, simply will not be generated. By default output file creation is disabled, pattern string - np:~+artist~+`title` . Additional switches: /p: - Shows (in the np.exe window only) full path to the file being played. /l: - Creates/updates the np.log file in the directory pointed by TMP environment variable (check your config.sys for "SET TMP=" statement). Saves the history of all files played in the form of full paths. Logged playlists are separated by double CR-LF. Every playlist begins with the date stamp. Achtung! The additional np.exe switches _must_ be followed by a colon! (like "np.exe /p: /l:"). --- How to add an "NP:" line into... ...into a GoldEd message: Open your .TPL-file. Insert "@random np_output_file_name" string where needed. ...into a PmMail message: Account -> Account Settings -> Signatures -> New Signature Create a random signature, save it, make it default. Go to the \PmMail\your_account_name.act\sigs directory. Open the sigs.lst file in a text editor. Manually replace the path it contains with the full path to np.exe output file name. ...into a Mozilla Mail message Edit -> Mail & Newsgroup Account Settings -> Attach this Signature Enter path to the np.exe output file name into the field. ZNP.EXE Full np.exe clone for Z! mp3-player by Dink. Differences: 1. To use, run with Z! using CMD-file like this === z_np.cmd === start /c /min C:\z\z.exe %1 %2 start /c /f C:\z\znp.exe /p: /l: /o:c:\ftn\golded\np.txt /s:np:~+artist~+`title`~+//~album~+(year) === z_np.cmd === (Znp.exe may also be run in detach mode.) 2. Supports additional switch /t:timeout Where "timeout" specifies how long (in seconds) znp.exe must wait for ZMP3 pipe to come up. After this timeout is exceeded, znp.exe terminates itself. By default, timeout = 4. Beta! Known glitches: Drives crazy the DOS-version of MSX Emulator by Marat Fayzullin. I'd be glad if someone who finds out why shared the knowledge with me. ============================================================================== Utilities for handling playlist-related tasks by means of User Menu in FileCommander/2 ****************************************************************************** CMPLEM3U.EXE, REMQUOT.EXE Those two are needed only to make up for inflexibility of User Menu function in FileCommander/2. The first one is used to complement filenames in a filelist created by !@ operator with the full panel path, the second - to remove quote symbols from the list. Usage example (shows how to populate an mp3list with files from disparate directories): A sample z_np.cmd file is shown above in ZNP.EXE description section. === fc.mnu === F3: Clear MP3 List del c:\temp\mp3list.m3u F4: Add selected to MP3 list c:\quplay\quutil\cmplem3u.exe !@ c:\temp\mp3list.m3u F5: Play composed MP3 list c:\quplay\quutil\delquot.exe c:\temp\mp3list.m3u C:\z\z_np.cmd -r c:\temp\mp3list.m3u === fc.mnu === (F3 clears out old list, F4 adds currently selected files to the list, F5 initiates playback of the composed list.) ****************************************************************************** RESTMP3.EXE Usage: restmp3.exe mp3ListName Restores unplayed part of playlist, whose playback was unintentionally interrupted, e.g. by a system crash. Compares the last playlist saved by NP.EXE logging function with the given list and overwrites it with the difference (for this to work, NP.EXE must be used with the /L: switch as a standard). Usage example (shows how to play an unplayed part of a cancelled playlist by means of the User Menu in FileCommander/2): === fc.mnu === F9: Play rest of last composed list c:\quplay\quutil\restmp3.exe c:\temp\mp3list.m3u c:\z\z_np.cmd -r c:\temp\mp3list.m3u === fc.mnu === ============================================================================== Additional utilities ****************************************************************************** RENAMEMP3.EXE Renames when possible mp3-files using the following pattern: Artist - Title.mp3 (The necessary info is extracted from ID3 tag and file name.) Usage: renamemp3.exe filename (dos-masks supported - batch renaming possible) ****************************************************************************** MP3DUR.EXE Calculates the exact playback time of a playlist, with subtotals after each file. Usage: mp3dur.exe mp3ListName ****************************************************************************** P.S. For convenience, there are Z! cmd control files in the quutil archive, and corresponding icon files. Those could be placed on the WarpCenter.