mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-25 04:43:33 +00:00
maplay port.
This commit is contained in:
parent
935cee0496
commit
b957235ce2
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=976
18
audio/maplay/Makefile
Normal file
18
audio/maplay/Makefile
Normal file
@ -0,0 +1,18 @@
|
||||
# New ports collection makefile for: maplay
|
||||
# Version required: 1.2
|
||||
# Date created: Feb 13 1995
|
||||
# Whom: jkh
|
||||
#
|
||||
# $Id: Makefile,v 1.6 1995/02/09 21:03:52 ache Exp $
|
||||
#
|
||||
|
||||
DISTNAME= maplay1_2
|
||||
EXTRACT_SUFX= .tar.Z
|
||||
MASTER_SITES= ftp://ftp.iuma.com/audio_utils/mpeg_players/Workstations/
|
||||
NO_WRKSUBDIR= yes
|
||||
PATCH_STRIP= -p2
|
||||
|
||||
pre-configure:
|
||||
@(cd ${WRKSRC}; make pre-install)
|
||||
|
||||
.include <bsd.port.mk>
|
1
audio/maplay/distinfo
Normal file
1
audio/maplay/distinfo
Normal file
@ -0,0 +1 @@
|
||||
MD5 (maplay1_2.tar.Z) = 2e3e0cd4d200fa476360eda0c9195ea1
|
31
audio/maplay/files/patch-ab
Normal file
31
audio/maplay/files/patch-ab
Normal file
@ -0,0 +1,31 @@
|
||||
*** work/Makefile.orig Tue Feb 14 08:18:41 1995
|
||||
--- work/Makefile Tue Feb 14 08:19:52 1995
|
||||
***************
|
||||
*** 39,45 ****
|
||||
|
||||
.SUFFIXES: .cc
|
||||
|
||||
! install:
|
||||
@./configuration.sh
|
||||
|
||||
all: maplay
|
||||
--- 39,45 ----
|
||||
|
||||
.SUFFIXES: .cc
|
||||
|
||||
! pre-install:
|
||||
@./configuration.sh
|
||||
|
||||
all: maplay
|
||||
***************
|
||||
*** 47,52 ****
|
||||
--- 47,55 ----
|
||||
maplay: $(OBJS)
|
||||
$(COMPILER) $(CFLAGS) $(OBJS) -o $@ $(LIBRARIES) -lm
|
||||
-strip $@
|
||||
+
|
||||
+ install: all
|
||||
+ ${INSTALL} -s -c -m 755 maplay ${PREFIX}/bin
|
||||
|
||||
.cc.o:
|
||||
$(COMPILER) -c $(CFLAGS) $(INCLUDEDIRS) $*.cc -o $@
|
1
audio/maplay/pkg-comment
Normal file
1
audio/maplay/pkg-comment
Normal file
@ -0,0 +1 @@
|
||||
maplay, an MPEG audio player/decoder that decodes layer I and layer II MPEG audio streams
|
186
audio/maplay/pkg-descr
Normal file
186
audio/maplay/pkg-descr
Normal file
@ -0,0 +1,186 @@
|
||||
/*
|
||||
* @(#) MPEG Audio Player maplay 1.2, last edit of this file: 6/23/94 13:02:49
|
||||
* @(#) Copyright (C) 1993, 1994 Tobias Bading (bading@cs.tu-berlin.de)
|
||||
* @(#) Berlin University of Technology
|
||||
*
|
||||
* 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, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
|
||||
This is the README file of the MPEG Audio Player maplay, Version 1.2.
|
||||
Besides this file, you should now own a copy of the following files:
|
||||
|
||||
ANNOUNCEMENT the announcement for this release
|
||||
INSTALL infos about compiling and installing the program
|
||||
COPYING the GNU General Public License
|
||||
Makefile a makefile
|
||||
configuration.sh a shell script used by the makefile
|
||||
|
||||
and the source files
|
||||
|
||||
all.h maplay.cc subband_layer_1.h
|
||||
crc.cc obuffer.cc subband_layer_2.cc
|
||||
crc.h obuffer.h subband_layer_2.h
|
||||
header.cc scalefactors.cc synthesis_filter.cc
|
||||
header.h scalefactors.h synthesis_filter.h
|
||||
ibitstream.cc subband.h ulaw.cc
|
||||
ibitstream.h subband_layer_1.cc ulaw.h
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
0) Introduction
|
||||
|
||||
MPEG is a standard created by the ISO (International Organization for
|
||||
Standardization) and the IEC (International Electrotechnical Commission).
|
||||
The full name of this standard is "ISO/IEC DIS 11172: Information
|
||||
Technology - Coding of moving pictures and associated audio for digital
|
||||
storage media ut to about 1.5 Mbit/s". As the name already states,
|
||||
it deals with digital video and audio. The video part of this standard has
|
||||
inspired many people to write decoders and a few encoders for it.
|
||||
Best known should be the Berkeley player. Players for the audio part on
|
||||
the other hand are very rare. The ones I know are the XING player for Windoze
|
||||
and a sample implementation of the ISO, which also includes an encoder.
|
||||
|
||||
The audio part of the MPEG standard specifies three layers, whereat each
|
||||
layer specifies its own file format. All three layers are using similar
|
||||
audio coding techniques, but they vary in efficiency and complexity.
|
||||
Layer I needs the fewest calculation time for en-/decoding a stream, layer III
|
||||
the most. But a layer I MPEG audio stream is bigger than a layer III stream
|
||||
at the same quality. This program is able to decode and play only layer I
|
||||
and II streams, layer III is not supported (yet?!?).
|
||||
|
||||
Like the MPEG video standard, the audio part also uses a lossy compression
|
||||
algorithm, which means that you can't get back 100% the original from a
|
||||
MPEG audio stream. Layer II MPEG audio streams are compressed by ratios
|
||||
from 1:3 up to 1:24 compared to raw PCM data, like on an audio CD.
|
||||
But the quality is still very (very) near to the original at ratios between
|
||||
1:5 and 1:12. You'll love it... :-)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
1) What does maplay?
|
||||
|
||||
maplay version 1.2 is the second release of my MPEG audio player/decoder.
|
||||
It decodes layer I and layer II MPEG audio streams and plays them
|
||||
using a CD-quality audio device. Currently supported devices are the
|
||||
dbri device of SPARC 10 computers and the audio ports of Silicon
|
||||
Graphics Indigo machines. Thanks to Louis P. Kruger (lpkruger@phoenix.
|
||||
Princeton.EDU), maplay 1.2 can also use the /dev/dsp device under Linux.
|
||||
Louis has tested it with the Pro Audio Spectrum 16 soundcard. Sound Blaster 16
|
||||
and Gravis Ultrasound cards should also work, but a bug in the dsp driver
|
||||
prevents stereo playback on Gravis Ultrasound cards. An amd device of a
|
||||
SPARC 2/IPX/... machine can be used, too, but this device is only capable of
|
||||
producing audio output at 8 kHz in u-law format, which sounds like transmitted
|
||||
through a telephone. Other audio device are not supported directly, but can be
|
||||
used with the "decode to stdout" option and an audio format converter.
|
||||
Besides it shouldn't be a problem to adapt the program to other audio devices.
|
||||
|
||||
The player supports all modes, which are single channel, stereo,
|
||||
joint stereo and dual channel, and all bitrates except free mode.
|
||||
The missing free mode support should not be a problem for now,
|
||||
because I haven't seen such a stream yet.
|
||||
|
||||
maplay needs approximately 46% CPU time on SPARC 10/40 machines and 50%
|
||||
on Indigos for realtime stereo playback of a 44.1 kHz 128 kbit/s stream.
|
||||
Single channel playback needs about the half CPU time. On a SPARCstation IPX,
|
||||
maplay needs about 43% CPU time for realtime mono playback. Stereo playback
|
||||
is not possible via an amd device.
|
||||
|
||||
Besides realtime playing of audio streams, maplay can decode streams to
|
||||
stdout for further conversions. The output consists of 16 bit signed PCM
|
||||
values. For stereo streams, the values are interleaved, which means that
|
||||
a value for the left channel is followed by a value for the right channel
|
||||
and so on. If maplay has been compiled for u-law output, the output consists
|
||||
of 8 bit u-law samples at a rate of 8 kHz, no matter what frequency the stream
|
||||
uses.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
2) How to create a maplay binary?
|
||||
|
||||
Please read the install file for this topic.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
3) How to start the program?
|
||||
|
||||
For a quick mono test enter "./maplay -v -l filename", where filename is the
|
||||
name of an audio stream, like "things.mp2". This stream has been posted along
|
||||
with the sources and is the beginning of Roxette's song "Things Will Never Be
|
||||
The Same". It is coded in joint stereo mode with 128 kbit/s, which is a
|
||||
compression ratio of 1:11. If the output is ok, you can test stereo playback
|
||||
by leaving out the -l option. If the stereo output stutters, the problem is
|
||||
not enough free CPU time in most cases. Stereo output is not possible when
|
||||
using an amd u-law device. If maplay shows error messages like
|
||||
"ioctl AUDIO_GETDEV on /dev/audio: ..."
|
||||
and maplay was compiled for u-law output, please try out the -amd option.
|
||||
This option forces maplay to treat /dev/audio as an amd device and may be
|
||||
required on SPARC clones.
|
||||
|
||||
To convert a MPEG audio stream into other audio formats, you can use
|
||||
"maplay -v -s filename | your_converter". Unfortunately, I can't be of much
|
||||
help for you to find such a converter. The only good converter I know is the
|
||||
"soundfiler" on Indigos. But if you would have an Indigo, you wouldn't need a
|
||||
converter...
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
4) Command line options
|
||||
|
||||
maplay [-v] [-s] [-l] [-r] [-us] [-uh] [-ul] [-amd] [-c] [-f ushort] filename
|
||||
|
||||
with these options:
|
||||
filename filename of a MPEG audio stream or - for stdin
|
||||
-h short help
|
||||
-v verbose mode
|
||||
You will get information about the stream, like mode, bitrate,
|
||||
copyright etc., if you use this option.
|
||||
-s stdout mode
|
||||
This option tells the program to decode the stream to stdout.
|
||||
The created output contains 16 bit signed PCM samples. If the
|
||||
binary has been compiled for 8 kHz u-law format usage, the
|
||||
output consists of 8 bit u-law samples at a 8 kHz rate. If the
|
||||
stream is in stereo mode, the samples of both channels are
|
||||
interleaved, the sample for the left channel first.
|
||||
-l maplay decodes (and plays) the left channel of stereo streams
|
||||
only. This option halves the required CPU time.
|
||||
-r Same as above, but decodes the right channel only
|
||||
-us, -uh These options are available on SPARCstations only.
|
||||
They specify where the audio signal should be send to:
|
||||
"-us" means speaker and "-uh" headphone jack.
|
||||
-ul This option is available on machines with the dbri device
|
||||
and sends the audio output to the line out jack.
|
||||
-amd This option forces maplay to treat /dev/audio as an amd
|
||||
device. Use it if your SPARC clone has an amd device, but
|
||||
maplay doesn't recognize it. You may also use this option on a
|
||||
machine with a dbri device, because the dbri device can also
|
||||
produce u-law output. But I suggest to recompile the program
|
||||
without the ULAW define in this case to get the CD-quality
|
||||
output.
|
||||
-c This option instructs the program to report filter range
|
||||
violations to stderr. Sometimes PCM values calculated by
|
||||
the synthesis filter exceede the 16 bit boundary and must
|
||||
be mapped to these boundaries. If you can hear this, you
|
||||
may use the next option.
|
||||
-f ushort maplay uses this scalefactor instead of the default value 32768
|
||||
for the synthesis filter. You can reduce or eliminate range
|
||||
violations with this option, but lower scalefactor values
|
||||
reduce the signal-to-noise ratio, too. I can't remember when
|
||||
I used this option the last time myself.
|
||||
|
||||
|
||||
Ok, that's all for now and this release,
|
||||
I hope you like it,
|
||||
Tobias Bading (bading@cs.tu-berlin.de)
|
1
audio/maplay/pkg-plist
Normal file
1
audio/maplay/pkg-plist
Normal file
@ -0,0 +1 @@
|
||||
bin/maplay
|
Loading…
Reference in New Issue
Block a user