@Mic Ritch
If You want to know, how AudioPlayers are written,
Handoko already gave You the relevant Links for Audio, only.
If You only want to use a Player, or implement it in Your App, without Struggling around with the underlying Code,
have a Look at my
FFPlay4Laz-Project:
http://forum.lazarus.freepascal.org/index.php/topic,26666.0.htmlThe latest Release can be downloaded here:
http://forum.lazarus.freepascal.org/index.php/topic,26666.msg286945.html#msg286945Some Features:- plays all Audio- and VideoFormats, that are supported by FFmpeg:
www.ffmpeg.org- has all Features, an Audio/Video-Player should have, like
open new/last MRL playing/paused, seek playing/paused, Looping (All, A<->B), Cueing, and, and, and
- outstanding SoundQuality via PortAudio (
http://www.portaudio.com/), which
supports ASIO(
https://en.wikipedia.org/wiki/Audio_Stream_Input/Output) -> minimal Latency, etc. !
- all written with and for FPC
For the Moment it's a Console, where You can set all PlayerOptions in an INI-File, so
You don't have to learn how to use CommandLines-Options.
I've also written a DLL, that has the same Capabilities and Features as the Console, and
I'm just writing a
Demo-GUI, that demonstrates the Use of it - the API is really hyper-easy to use.
Sorry, there is one Restriction: Up to now, it's all Win32, only.
Are You interested ?