============================================================================
Architectures: Classic AMIGAs, FS-UAE, OSX 10.15.7, Linux Mint 20.3, CygWin.
----------------------------------------------------------------------------
MINIMUM Requirements Are:-
--------------------------
1) Amiga environment:-
Stock AMIGA 1200 with HDD and 4MB FastRAM.
Python Version 1.4.0.
(!!! RECOMMENDED !!! -> 68030-FPU and at least 8MB FastRAM.
It will run much faster and better however with more FastRAM,
serious expansion cards, and Python Version 2.0.1).
FS-UAE on OSX 10.15.7 and Linux Mint 20.3.
Standard AMIGA OS_3.0.x install or better.
2) Apple OSX 10.12.x to 10.15.7 and higher using default Python 2.7.x,
3.5.2. 3.8.x, 3.9.x and 3.10.6, (and 3.11.0rc1).
3) Linux Mint 20.3, Python 2.7.x, 3.8.x and 3.9.x.
4) Windows 8.1 to 10, Python 2.4.3 to 3.10.6, catered for but it is
NOT PRETTY!
5) It has NOT been tested on WinUAE but it might well work.
----------------------------------------------------------------------------
History:-
---------
17-10-2022.
-----------
Version 0.75.00: Added 'ffplay' from the 'ffmpeg' suite.
Also added a third party 'music123' to the Linux listing
obtained from the Linux Mint 20.3 repository.
Corrected some comment errors inside 'PyPlayer.py' and
updated the manual.
13-08-2022.
-----------
Version 0.50.00: Major version jump; so what's new:
(I was half expecting someone to tell me that the Generic
function is technically a security risk as anything could
be executed, but as PyPlayer will never be used by pros'
in a commercial environment then why worry.)
As of 08-08-2022:
Tested and working under Python 3.11.0rc1, on OSX 10.15.7.
1) 'padsp' added to the OSS '/dev/dsp' section.
2) Added a function to test for the players used and if
none exists EXITS the code completely, SO BE AWARE.
3) I can't be arsed with cleaning up the Windows 8.x to
10, and perhaps 11, OSes as there is now a Generic call
that you can now use to suit your needs.
29-05-2022.
-----------
Version 0.02.50: What's new:
Added a basic Generic function for expert usage of
command line audio players that I am unaware of and the
current ones too. it means also that you have a choice of
being able to use any of Play16's options to further
enhance Play16's capability.
It also means that you COULD even use arecord, parec[ord]
or any other command line capable recording software of
your choice to RECORD your audio. You will need some kind
of timeout for this facility however, so be aware!
This extra facility is unintentional and untested, so you
try it out at you own risk!
It allows you to use ANY switches, options, keywords and
file extensions of your choice so long as the whole is
inside inverted commas as a single string, OR, as a
single string variable; make sure you have tested your
code first from the command line to ensure that it works.
Sound eXchange, SoX, looks like it is not being updated
any more, but VideoLAN, VLC, is current, and, certainly
being supported.
See the 'Generic_In_Linux.png' for playback examples.
(Working on the UGLY Windows part at the moment. UGH!)
(DLs are now 79 as PyPlayer.zip before the next upload.)
14-05-2022.
-----------
Version 0.01.00: What's new:
1) Now the spawned child plays in the background by
default.
2) It has the option of turning this facility OFF and
the script or Python command prompt '>>>' waits until
the played audio finishes before it can resume.
3) If the default 'Error_Beep.wav' is not in the current
directory then it will be created 'silently' with the
option of a verbose mode.
4) Windows 8.1 to 10 is catered for but requires VLC. It
is VERY UGLY however. Also VLC works from the command
line extremely well where SOX no longer works at all!
(DLs have now reached 385 before the next upload as
PyPlayer.zip and PyPlayer.lha becomes deleted.)
01-05-2022.
-----------
Version 0.00.30: A taster upload to see how many are interested...
(172 DLs inside 13.5 days.)
----------------------------------------------------------------------------
Other minimum requirements depending on what you decide to use:-
----------------------------------------------------------------
Python Version 1.4.0, absolute minimum:-
http://aminet.net/package/dev/lang/Python_14
AND/OR, for expanded and very highly expanded AMIGAs... <- Recommended!
http://aminet.net/package/dev/lang/Python20 <- Recommended!
Play16, two versions the lower one includes a 68000 version,
and both also supports AHI and others if need be but Paula8 is the
default and the one actually used!
http://aminet.net/package/mus/play/Play16
http://aminet.net/package/mus/play/Play16_v1.9
http://aminet.net/package/dev/c/AsyncIO <- This is already inside the
archive of the Play16_v1.9 install.
No other important dependencies needed.
!!! VERY IMPORTANT !!!
----------------------
If you have DLed PyPlayer before and have 'import'ed it then delete ANY
and ALL PyPlayer.pyc files so that they can be re-compiled correctly for
this latest PyPlayer version.
(This includes those "PyPlayer/__pycache__/*.pyc" on other non-AMIGA
platforms for Python Versions 3.3.x to at least 3.11.0rc1.)
----------------------------------------------------------------------------
General:-
---------
I wanted a very basic Python audio player for AMIGA Python 1.4.0 so I
decided upon this idea:-
A basic '.WAV' audio player module for Python Versions 1.4.0 to 2.0.1
for the AMIGA A1200(HD) platform to Version 3.10.6 for other platforms.
The limits are 'WAV' files for every platform, plus, a maximum standard
sample rate of 48000 sps, (actually 56000 sps), and 2 channels maximum
for the AMIGA ONLY.
The code seems naive in places but getting things like this to work for
all types of platforms and Python versions require some degree of naive
coding.
For some platforms there are a multitude of audio formats that can be
played but this code was primarily intended for the AMIGA A1200(HD) with
a small amount FastRAM. It goes without saying that highly expanded AMIGAs
will probably work better than a stock A1200(HD).
It looks like people are interested in this so this upload is the next
stage in developing the idea.
The code can be either imported as a module or used as a source for a
main Python program. Read the manual and code for more info.
Read the PyPlayer.Manual AND PyPlayer.py code for MUCH MORE info'.
Read any relevant documentation for the audio players also!
The *NIX '/dev/dsp' is also catered for BUT it is limited entirely to
an audio '.RAW' or '.WAV' file that is uncompressed, unsigned integer,
8000 sps, 1 channel "mono". The default "Error_Beep.wav" WILL work but
with a momentary click at the start due to the 44 byte header.
Final NOTES:
------------
PyPlayer.pyc was/is the imported PyPlayer.py compiled file from inside
AMIGA Python Version 1.4.0 to 2.0.1.
!!! VERY IMPORTANT REPEATED !!!
-------------------------------
If you have DLed PyPlayer before and have 'import'ed it then delete ANY
and ALL PyPlayer.pyc files so that they can be re-compiled correctly for
this latest PyPlayer version.
(This includes those "PyPlayer/__pycache__/*.pyc" on other non-AMIGA
platforms for Python Versions 3.3.x to at least 3.11.0rc1.)
Enjoy...
Bazza...
----------------------------------------------------------------------------
IMPORTANT:-
-----------
The Legal Stuff:-
-----------------
This archive is GPLv3 licenced.
Read the manual for more information.
The authors are not responsible for any damage to, or loss of, or
failure of equipment or data caused in any way by the use of this code.
As of 17-10-2022, all information inside any text files, readme files and
the #?.py, (*.py), files are valid. Beyond that date if any author of any
of the audio players makes changes to their players that affects this
code then that is beyond my control.
There is NO warranty with the use of this software release archive, and,
YOU USE IT AT YOUR OWN RISK.
----------------------------------------------------------------------------
Testing Evaluation:-
--------------------
FS-UAE and Classic AMIGA test conditions were/are running standard
OS 3.0.x, 4MB FastRAM and using standard ~topaz 8~ fonts throughout.
(The minimum requirements above ARE required however.)
A stock AMIGA A1200(HD) can be a little jerky hence the addition of
FastRAM. It will run much faster and better however with more FastRAM
and serious expansion cards.
I have no idea what strange configuration setups will create so refer
to the ~The Legal Stuff~ above.
----------------------------------------------------------------------------
Barry Walker, G0LCU.
----------------------------------------------------------------------------
A very useful HardWare related site, (C) Anthony Hoffman, for
modifications, schematics, repairs and the like is:-
http://amiga.serveftp.net/
============================================================================
|