Skip to content

Example Usage

Below are examples of how you can use the AudioPlayer component. Replace path/to/audio.mp3 with the actual URL or path of your audio file.

Example 1: Basic usage with default props

js
import { AudioPlayer } from "react-audio-play";  export default function App() {  return <AudioPlayer src="path/to/audio.mp3" />; }

Preview

Music Source: Kotha koio na - Coke Studio

Example 2: Looping audio, set the volume to 50% and volume control placement bottom

js
import { AudioPlayer } from "react-audio-play";  export default function App() {  return (  <AudioPlayer  loop  src="path/to/audio.mp3"  volume={50}  volumePlacement="bottom"  />  ); }

Preview

Music Source: Anmone - Aurthohin

Example 3: Using audio callbacks

js
import { AudioPlayer } from "react-audio-play";  export default function App() {  const handlePlay = () => {  console.log("Audio started playing");  };   const handlePause = () => {  console.log("Audio paused");  };   const handleEnd = () => {  console.log("Audio ended");  };   const handleError = (event, errorMessage) => {  console.log(errorMessage);  };   return (  <AudioPlayer  src="path/to/audio.mp3"  onPlay={handlePlay}  onPause={handlePause}  onEnd={handleEnd}  onError={handleError}  />  ); }

Preview

Music Source: Anmone 2 - Aurthohin

Example 4: Usage with ref (available from v1.0.4)

tsx
import { useRef } from 'react'; import { AudioPlayer, AudioPlayerRef } from 'react-audio-play';  function App() {  const playerRef = useRef<AudioPlayerRef>(null);   const handlePlay = () => {  playerRef.current?.play();  };   const handlePause = () => {  playerRef.current?.pause();  };   const handleStop = () => {  playerRef.current?.stop();  };   const handleFocus = () => {  playerRef.current?.focus();  };   return (  <div>  <AudioPlayer ref={playerRef} src="path/to/audio.mp3" autoPlay />  <button onClick={handlePlay}>Play</button>  <button onClick={handlePause}>Pause</button>  <button onClick={handleStop}>Stop</button>  <button onClick={handleFocus}>Focus</button>  </div>  ); }

Preview

Music Source: Poth Chola - Artcell

Example 5: Darkmode using basic style props

js
import { AudioPlayer } from "react-audio-play";  export default function App() {  return (  <AudioPlayer  src="path/to/audio.mp3"  color="#cfcfcf"  sliderColor="#94b9ff"  backgroundColor="#2c2828"  />  ); }

Preview

Music Source: Poth Chola - Artcell

Example 6: Using Style Object

js
import { AudioPlayer } from "react-audio-play";  export default function App() {  return (  <AudioPlayer  src="path/to/audio.mp3"  color="#f7b5cd"  sliderColor="#ff669d"  style={{ background: "#000", borderRadius: "15px", padding: "30px" }}  />  ); }

Preview

Music Source: Anmone 2 - Aurthohin

Example 7: Using Custom CSS

css
.custom-style.rap-container {  background-color: #000000;  background-image: linear-gradient(147deg, #000000 0%, #04619f 74%);  color: aliceblue; }  .custom-style.rap-container .rap-pp-icon path, .custom-style.rap-container .rap-volume-btn path {  fill: white; }  .custom-style.rap-container .rap-slider .rap-progress {  background-color: #daecff; }  .custom-style.rap-container .rap-volume .rap-volume-controls {  background-color: #000000;  background-image: linear-gradient(147deg, #000000 0%, #04619f 74%); }  .custom-style.rap-container .rap-slider .rap-progress .rap-pin {  background-color: #c3d5ff;  box-shadow: 0 0 9px 7px #269eff52; }  .custom-style.rap-container svg.rap-pp-icon:hover, .custom-style.rap-container .rap-volume-btn svg:hover {  filter: drop-shadow(0px 0px 6px rgba(255, 255, 255, 0.9)); }
js
import { AudioPlayer } from "react-audio-play";  export default function App() {  return <AudioPlayer className="custom-style" src="path/to/audio.mp3" />; }

WARNING

Use a wrapper class to avoid CSS override issues. Ex: .custom-style

Preview

Music Source: Kotha koio na - Coke Studio

Example 8: More Playing With CSS

css
.custom-style.rap-container {  background-color: #e4e4e4;  color: #566574;  border-radius: 20px; }  .custom-style.rap-container .rap-slider .rap-progress {  background-color: #959595; }  .custom-style.rap-container .rap-slider .rap-progress .rap-pin {  background-color: #566574;  height: 18px;  width: 18px;  border-radius: 10px; }  .custom-style.rap-container .rap-controls .rap-slider .rap-progress .rap-pin {  top: -5px; }  .custom-style.rap-container .rap-controls .rap-slider {  height: 8px;  border-radius: 4px; }  .custom-style.rap-container .rap-volume .rap-volume-btn.rap-volume-open path {  fill: #000; }  .custom-style.rap-container .rap-volume .rap-volume-controls {  background-color: #e4e4e4; }  .custom-style.rap-container .rap-volume .rap-volume-controls .rap-slider, .custom-style.rap-container  .rap-volume  .rap-volume-controls  .rap-slider  .rap-progress {  width: 8px; }
js
import { AudioPlayer } from "react-audio-play";  export default function App() {  return <AudioPlayer className="custom-style" src="path/to/audio.mp3" />; }

WARNING

Use a wrapper class to avoid CSS override issues. Ex: .custom-style

Preview

Music Source: Anmone - Aurthohin