How to use the command 'aplay' (with examples)
- Linux
- December 25, 2023
The aplay command-line tool is used to play audio files using the ALSA soundcard driver. It supports various file formats and allows you to specify the desired sampling rate, bit depth, duration, and other parameters for playback.
Use case 1: Play a specific file
Code:
aplay path/to/file
Motivation:
You can use this command to play a specific audio file without specifying any parameters like sampling rate or bit depth. The aplay command will automatically determine these values based on the file format, ensuring proper playback.
Explanation:
aplay
: The command-line sound player for ALSA soundcard driver.path/to/file
: The path to the audio file you want to play.
Example output:
The audio file will be played using the default settings determined by aplay.
Use case 2: Play the first 10 seconds of a specific file at 2500 Hz
Code:
aplay --duration=10 --rate=2500 path/to/file
Motivation:
Sometimes you may only want to play a specific portion of an audio file. By specifying the duration, you can play only the desired segment. In this example, we play the first 10 seconds of the file at a sampling rate of 2500 Hz.
Explanation:
--duration=10
: Specifies the duration of playback in seconds.--rate=2500
: Sets the sampling rate to 2500 Hz.path/to/file
: The path to the audio file you want to play.
Example output:
The first 10 seconds of the audio file will be played at a sampling rate of 2500 Hz.
Use case 3: Play the raw file as a 22050 Hz, mono, 8-bit, Mu-Law .au
file
Code:
aplay --channels=1 --file-type raw --rate=22050 --format=mu_law path/to/file
Motivation:
Certain audio formats require specific parameters to be set correctly for proper playback. In this example, we play a raw audio file in the Mu-Law format, which requires specifying the number of channels, file type, sampling rate, and format.
Explanation:
--channels=1
: Specifies the number of audio channels (mono).--file-type raw
: Sets the file type to raw.--rate=22050
: Sets the sampling rate to 22050 Hz.--format=mu_law
: Sets the audio format to Mu-Law.path/to/file
: The path to the audio file you want to play.
Example output:
The raw audio file will be played as a 22050 Hz, mono, 8-bit, Mu-Law file.
Conclusion:
The aplay command provides a versatile way to play audio files using the ALSA soundcard driver. Whether you need to play a file with default settings, specify the duration and sampling rate, or handle different file formats, aplay has you covered. With the ability to customize playback parameters, you can ensure proper audio playback for your specific needs.