Um mit den hier kolportierten Legenden zum Thema "S65 und MP3" etwas aufzuräumen:
Es ist nicht möglich einen mit Java zu schreiben weil Java nicht die Möglichkeiten dazu bietet.
Es ist tatsächlich sehr wahrscheinlich nicht möglich, einen MP3-Player für das S65 zu schreiben, der eine MP3-Datei kontinuierlich (ohne Aussetzer) wiedergeben kann. Das hat allerdings wenig mit Java zu tun.
Dass in der Java-API keine Methode existiert, mit der eine MP3-Datei abgespielt werden kann, bedeutet noch nicht, dass es generell nicht geht. Denn theoretisch sollte man die Funktionalität des MP3-Abspielens, also einen MP3-Decoder, vollständig selbst in Java implementieren können, solange die API lediglich den blockweisen Zugriff auf Dateien und die Ansteuerung des Soundchips gestattet (tut sie). Allerdings gibt es dabei zwei Probleme, die nicht aus der Welt geschafft werden können:
1. Der verwendete Soundchip unterstützt nur Mono, außerdem ist meines Wissens über Java nur die Ausgabe von 16-Khz-Samples möglich - das kann man sich zwar noch anhören, von der gewohnten MP3-Qualität ist es jedoch weit entfernt.
2. Der eingebaute Prozessor ist zu langsam, um Software-MP3-Dekodierung on-the-fly zu ermöglichen.
Das sind Beschränkungen der Hardware, nicht der Software, und sie lassen sich auch nur durch einen Austausch der Hardware (in diesem Fall also gar nicht) beheben.
Was man theoretisch schreiben könnte, wäre ein Java-Programm, das ein auf dem Flash gespeichertes MP3 vollständig in das S65-kompatible WAV-ADPCM-Format wandelt (mit entsprechendem Qualitätsverlust), diese Datei anschließend abspielt und die WAV-Datei nach dem Abspielen wieder löscht. Das Ganze könnte man sogar in eine Medienplayer-Oberfläche verpacken, die den Eindruck erwecken könnte, das S65 sei tatsächlich zum Abspielen von MP3s fähig.
Der große Haken an der Sache: Der Konvertierungsvorgang wäre zwangsläufig schneckenlangsam, so dass man selbst bei hochoptimiertem Code mehrere Minuten, wahrscheinlich eher Stunden auf die Konvertierung eines einzigen MP3s warten müsste. Das liegt daran, dass der Prozessor so langsam ist, und wenn er das nicht wäre, könnte man on-the-fly konvertieren, d.h. ein MP3 direkt wiedergeben, allerdings selbst dann nur mit 16-Khz-Mono-Sound.
Wenn jemand ein solches Programm schreiben möchte: Viel Spaß dabei. Ich glaube nicht, dass die on-the-fly-Konvertierung möglich ist, und selbst wenn das so sein sollte, bringt sie keine großen Vorteile gegenüber dem Verfahren, die MP3s schon auf dem PC in WAV-ADPCMs umzuwandeln und nur diese auf das S65 zu übertragen, denn die ADPCMs sind aufgrund der schlechteren Qualität trotz der nicht vorhandenen Kompression nicht sehr viel größer als die MP3s. Die Konvertierung im Voraus mit nachträglichem Abspielen könnte zwar stotterfreie Wiedergabe ermöglichen, würde aber mit unverhältnismäßig hohem Zeitaufwand bei der Konvertierung bezahlt.
Was durchaus Sinn hätte (falls sich nicht bereits jemand darangewagt hat), wäre die Programmierung eines komfortablen Medienplayers, der der Wiedergabe von Playlisten aus ADPCMs erlaubt, so dass man ein ADPCM nicht immer als Klingelton abspielen muss. Das hätte allerdings nichts mit MP3 an sich zu tun.
Schlussfolgerung: Es geht nicht. Tut mir leid, ist aber so. Wenn Siemens gewollt hätte, dass das S65 MP3s abspielen kann, dann hätten sie ihm erstens einen vernünftigen Soundchip und zweitens eine Hardware-MP3-Wiedergabe-Logik spendiert. Siemens wollte aber nicht, aus welchen Gründen auch immer. Wenn es irgendwem wider Erwarten tatsächlich gelingen sollte, ein Java-Programm zu schreiben, das MP3s on-the-fly in ADPCMs konvertieren und diese wiedergeben kann, wäre ich daran aber natürlich sehr interessiert.
