How to play mp3 from bytes?

mp3, pyaudio, pygame, python

Solution

For anyone who might be facing a similar problem, this works

from pydub import AudioSegment
from pydub.playback import play
import io

data = open('filename.mp3', 'rb').read()

song = AudioSegment.from_file(io.BytesIO(data), format="mp3")
play(song)

Problem

Is there a way to play mp3 from bytes directly using python? If not, can I convert the binary to a different audio format and make the binary playable? Edit: The following code works for `wav` files but not `mp3` ``` from pygame import mixer, time mixer.pre_init(44100, -16, 2, 2048) mixer.init() data = open('filename.mp3', 'rb').read() sound = mixer.Sound(buffer=data) audio = sound.play() while audio.get_busy(): time.Clock().tick(10) ``` Edit: The problem has been solved, see my answer below if you're facing a similar issue

Original source