HydrogenAudio

Lossy Audio Compression => MP3 => MP3 - General => Topic started by: forart.eu on 2019-02-20 07:36:26

Title: 100% assembly coded mpeg-2/mp3 decoder
Post by: forart.eu on 2019-02-20 07:36:26
Since "Mpeg-2 and Mp3 patents have now expired in many countries" MenuetOS released their MPlayer to all:
Quote
MediaPlayer is a 100% assembly coded mpeg-2/mp3 decoder. It is not based on other codecs or libraries. Coding by V.Turjanmaa and A.Mogyorosi.

MPlayer includes the following components:
TV/Radio player (DVB-T, mpeg-2 video, layer I,II,III audio)
TV/Radio player decodes DVB-T broadcasts with mpeg-2 video and mpeg-1 layer I,II,III audio. Tuner application is included to Menuet64 image. Subtitles are not supported.

MP3 player (mpeg-1 audio layers I,II,III)
MP3 player decodes mpeg-1, audio layer I,II and III -files. Also variable bitrate (VBR) files are supported. Player includes a 32 band equalizer.

Movie file decoder (mpeg-2 ps,720x576,720x480 & MP3,112k->224kbps)
Decoder supports mpeg-files with mpeg-2 video (ps) and mp3 audio. File player is included to Menuet64 image.

DVD movie player (mpeg-2, pal, pcm-audio)
Player decodes non-protected PAL dvd's with mpeg-2 video and PCM audio. Also non-protected NTSC disks work fine in our limited tests. Current version supports PCM-audio, not dolby digital.

(http://menuetos.net/sc001.png) (http://menuetos.net/094l.png)
(http://menuetos.net/S02.jpg) (http://menuetos.net/097h.png)

Official webpage: http://menuetos.net/mplayer.htm

Hope this help/inspires "someone" to grab/share ASM optimizations !
Title: Re: 100% assembly coded mpeg-2/mp3 decoder
Post by: kode54 on 2019-02-21 06:18:57
The 32 bit code is open, but the 64 bit is not.
Title: Re: 100% assembly coded mpeg-2/mp3 decoder
Post by: magicgoose on 2019-02-22 10:55:56
written in assembler doesn't necessarily mean it's optimized better than others.
and the hardware where this would _really_ matter (tiny portable devices) is usually not based on x86/amd64.
Title: Re: 100% assembly coded mpeg-2/mp3 decoder
Post by: saratoga on 2019-02-23 00:19:06
Portable devices usually use highly optimized embedded decoders for platforms like arm, mips, hexagon, etc.

For desktop, an assembly optimized decoder would be nice if it targets modern x86 variants. If it's old 32 bit code, that's a lot less interesting. I don't think there is much interest in optimizing desktop decoders anymore however. Multicore processors have largely made that irrelevant.