ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Programmierung > MP3 VBR Laufzeit berechnen | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
1 2 3 4 -5- 6 7 | [ - Beitrag schreiben - ] |
07.08.2005, 18:53 Uhr MaikG Posts: 5172 Nutzer |
Während ihr an einem völlig neuen Programm bastelt hab ich immerhin schon ein Funktionierendes was bei 2/3 Xing Dateien die richtige Zeit anzeigt und bei welche ohne VBR alle. ;-) Ist nur immernoch lahm. [ - Antworten - Zitieren - Direktlink - ] |
07.08.2005, 19:07 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat: Folgendes: Es gibt auch VBR ohne Xing. Das Programm hier oben liest alle Frames aus, ob Xing oder nicht, das ist vollkommend egal. Mit Xing-Unterstützung muß halt nur das erste Frame gelesen werden. Zja, jetzt kommt noch die ID3-Tag-Story und noch ein paar andere Kleinigkeiten und schon ist ein komplettes Prog fertig. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
07.08.2005, 22:40 Uhr Holger Posts: 8116 Nutzer |
Zitat:Was willst Du uns damit sagen? mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
07.08.2005, 23:07 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat:Das wir noch dran feilen müssen. So, hab eben Contact "gebeamt" und vorher noch das Prog um ID3v1 und ASLRequester erweitert. Ich bin da auch auf http://www.id3.org gestoßen und, nunja... da gibt es ja en haufen Version und Möglichkeiten. Eigentlich könnte man ja noch etwas weiterfeilen und en ID3-Editor draus machen. Aber eins hab ich mal versucht, mit Seek die einzelnen Stellen abzuspringen. Aber ehrlichgetippt lief das leider etwas in die Hose... -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
07.08.2005, 23:24 Uhr Holger Posts: 8116 Nutzer |
Äh, bisher war das Analysieren von ID3 überhaupt nicht das Ziel. Ich hab eben nur das Überspringen eingebaut, damit das Ermitteln der Laufzeit schneller geht. Wie ich schon erwähnt hatte, habe ich mal die oss id3v2-lib nach Java portiert, zumindest teilweise. Aus dem Code hatte ich auch die mpeg-parser Schnipsel. Ich weiß, was das für ein Brocken ist... mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
07.08.2005, 23:29 Uhr Holger Posts: 8116 Nutzer |
Zitat:Äh, meinst Du die MPEG-frames? Hab doch gesagt, daß es nix bringt. Ein durchschnittliches frame ist kleiner als ein Block, d.h. es wird trotzdem der gesagte Dateiinhalt von der Platte gelesen. Also zusätzlicher Overhead von ein paar tausend OS-Funktionsaufrufen ohne Gewinn. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
07.08.2005, 23:53 Uhr MaikG Posts: 5172 Nutzer |
>Was willst Du uns damit sagen? Naja mein Programm ist nur zu langsam, funktionieren tut es. Es kann jetzt 3/4 Mp3s mit Xing/VBR und alle Mp3s ohne VBR. Jetzt hab ich schon Verschiedene völlig neue Programme Probiert von denen aber keines eine Laufzeit liefert bzw. eine die falsch ist. Gibts keine freie Xing-Mp3s auf einer HTTP Seite? [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 00:02 Uhr Holger Posts: 8116 Nutzer |
Zitat:Nun, das hier gepostete Programm liefert bessere Ergebnisse. Zitat:Nun, da ich kein MBasic habe, kann ich die MBasic-Version nicht testen. Wenn Ralf sagt, daß diese bei ihm läuft, wäre es interessant zu erfahren, warum es bei Dir nicht funktioniert. Für den Fall, daß es nicht am System liegt, poste doch einfach mal die Daten der mp3's, die bei Dir nicht funktionieren: Mpeg-Version, BitRate, Frequenz. Setze die Variable VERBOSE auf eins (falls sie nicht schon ist), und poste den Output, den das Programm bei den files liefert, mit denen es bei Dir nicht läuft. Zitat:Wozu? Ich habe die ace-Basic Version mit ein paar tausend mp3's getestet. Wenn Du nicht sagst, unter welchem Umständen das Programm versagt, kann man Dir auch nicht helfen. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 00:14 Uhr MaikG Posts: 5172 Nutzer |
>Nun, das hier gepostete Programm liefert bessere >Ergebnisse. Ich hab alle hier geposteten probiert... >Nun, da ich kein MBasic habe, kann ich die MBasic-Version >nicht testen. Wenn Ralf sagt, daß diese bei ihm läuft, >wäre es interessant zu erfahren, warum es bei Dir nicht >funktioniert. Für den Fall, daß es nicht am System liegt, >poste doch einfach mal die Daten der mp3's, die bei Dir >nicht funktionieren: Mpeg-Version, BitRate, Frequenz. Alle die "Xing" enthalten, sprich alle mit Variabler Bitrate. Andere hab ich nicht getestet da meine Routine für nicht VBR MP3 ausreichend schnell ist. Ralf hat mir einige programme geschickt die wohl von den ACE Programm abstammen, jedoch alle nicht Funktionieren. Mir würde es helfen, wenn mir jemand erzählt wie man das effizienter machen kann. Programmieren kann ich das denn. >Wozu? >Ich habe die ace-Basic Version mit ein paar tausend mp3's >getestet. Wenn Du nicht sagst, unter welchem Umständen >das Programm versagt, kann man Dir auch nicht helfen. Ralf hat wohl solche nicht ausser ein kurzes mit dem es auch mit 1 sek/10 sek abweichung Funktioniert. Man muss nur MP3 datei mit Xing ins Programm geben um Fehler oder Fehlerhafte berechnungen zu erhalten. Ich kann mir kaum vorstellen das du mal ebend 1000 mp3s in MakeCD oder Amplifier geladen hast, dir Titel+Laufzeit abgeschrieben und dann verglichen hast. Das dauert lange... [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 06:43 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat:Da hast du recht. Mich hat es aber mal interesiert. Ich hab jetzt id3v1 eingebaut, was am Ende der MP3-Datei an einem festen Platz zu finden ist. Zitat:Ja, das hab ich dann auch gemerkt als ich auf der id3.org-Seite war. Ich fand es mal interesant zu sehn wie es funktioniert. Dazu hab ich noch ein ASL-Requester eingebaut, zur einfachen MP3-Auswahl zum testen. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 06:45 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat:Wie getippt, im Aminet gibt es die freie Version zum runterladen, mit dem man das Prog hier auch testen kann. Das einzige Limit liegt bei 256 Zeilen Quellcode. Ich würde auch zu gerne wissen was für ein Compiler das bessere Ergebniss liefert, bzw. welcher schneller ist. Ich vermute mal (leider kann ich das nicht feststellen), das MBasic einen einfachen 68000er-Code ohne optimierung liefert, sodas es halt auch überall läuft. Es ist ja auch ein OS1.3-Editor dabei... -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 06:48 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat:Ok, dann werd ich mich nochmal an dein Prog machen. Du wirst ja vermutlich auch gesehn haben wie man es optimiert. Aber erst nach der Arbeit. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 09:35 Uhr MaikG Posts: 5172 Nutzer |
Okay, ich schick dir die letzte Version rüber. [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 19:08 Uhr Holger Posts: 8116 Nutzer |
Zitat:Ach Mensch, es kann doch nicht so schwer sein: Mpeg-Version, BitRate, Frequenz und dann vielleicht noch die durchschnittliche Bitrate und Dauer, die die Software liefert und die tatsächliche. Wenn ich noch einmal Xing in einer Antwort von Dir lese, drehe ich durch. Zitat:Was soll man Dir denn erzählen? Du hast gesehen, wie die effizientere Version aussieht. Wenn Dir allerdings die einfachen Grundlagen der Binärarithmetik fehlen, kann man Dir nicht helfen. Insbesondere, wenn Du nichts besseres zu tun hast, also immer wieder betonen zu wollen, daß Dein Programm läuft. Zitat:Dann liegts an Dir. Zitat:In MakeCD oder Amplifier laden? Abschreiben? Sag mal, hast Du schon mal einen Computer wirklich benutzt? Man benutzt eine passende Software. Im Explorer unter Windows geht das so: Ordner öffnen, "Ansicht/Details" wählen, "Ansicht/Details auswählen..." => Dauer => fertig. In weniger als einer Sekunde sieht man alle Zeiten auf einen Blick. Man kann sich auch eine Liste exportieren und mit dem Output der anderen Software vergleichen, aber einfach beide Fenster nebeneinander legen, reicht schon, um auf den ersten Blick zu sehen, ob die Zeiten übereinstimmen. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 20:57 Uhr Holger Posts: 8116 Nutzer |
Zitat:*Tieflufthol* Also erstmal ist das Programm mit den noch notwendigen Änderungen schon länger als 256 Zeilen. Zum anderen: Also DAS ist MaxonBasic?! Falls Du Dir die Demo noch nie angesehen hast: sie besteht aus einem kleinen GUI, das offensichtlich durch einen automatisiertes Englisch-Deutsch Wörterbuch geschickt wurde, das man aber auch nicht zurück auf Englisch stellen kann. Es befindet sich nicht einmal eine Andeutung einer Anleitung oder irgendetwas, das in die Richtung gehen könnte dabei, und die "Beispiele" bestehen aus ausführbaren Binärdateien, ohne zugehörigen source-code. Sehr sinnvoll. Abgesehen von all diesen Dingen, könnte ich natürlich trotzdem mal ein paar Tests machen, wenn Du mir die #?.bh files schickst. Solche sind natürlich auch keine in der Demo vorhanden und bevor ich jetzt ohne auch nur eine Zeile Dokumentation versuche herauszufinden, wie ich die Dinger generieren kann... mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 21:30 Uhr Ralf27 Posts: 2779 Nutzer |
[quote] Original von Holger: Zitat:Das Programm ist noch kürzer als 256. Aber: Ich hab bis jetzt fast immer in meinen Progs keine Includes verwendet, sodas dies auch mit AmigaBasic lief. Insofern lief es auch mit der freien Version aus dem Internet. Zitat:Das tut mir leid, das wußte ich leider nicht das das auch in der Demo fehlt. Ich hab mir das Demo damals angesehn und damit auch meine Progs geschrieben, bzw. genau so wie in AmigaBasic und da braucht man halt keine Includes (abgesehn davon das ich früher nicht wußte was das ist. ) Aber folgendes: Ich könnte das Prog hier so umschreiben das es die Includes nicht braucht, dann geht es auch mit dem Demo. Ich kann Dir auch eine ausführbare Datei schicken, allerdings wäre es besser wenn beide Basic-Versionen denn gleichen Quellcode benutzen würden. Am besten mach ich mal beides. MaikG: Ich hab eben das Prog von Dir gelesen, mehr dazu in der EMail. Aber es dauert noch etwas bis diese kommt, denn ich weiß wirklich nicht wo ich anfangen soll denn Text zu schreiben denn mir da durch denn Kopf gegangen ist. Aber ganz kurz: Englisch kann man auch "eingoogledeutschen" -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 21:37 Uhr Holger Posts: 8116 Nutzer |
Zitat:Wie langsam wird die I/O dann? Zitat:Dann müßtest Du auch die VERBOSE-Variablen, etc. zu Parametern machen, sonst kann man damit nich viel anfangen... mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 21:48 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat:Wie meinst du da? Es verändert sich nichts in der Geschwindigkeit. Es werden halt die Werte von den Includes direkt gesetzt und fertig. Oder was meintest du mit I/O, bzw. mit Ein/Ausgabe? Zitat:Klar, er gibt Text aus, aber leider muß ich auch eben eingestehn das ich den Debug-Code nicht drin habe, also der Code der oben beschrieben wurde. Außerdem hab ich auch den ASL-Requester wieder ausgebaut, damit es weniger wird als 256-Zeilen. Aber mehr dazu in der EMail. Und zum anderen werd ich jetzt endlich mal die Demo runterladen und es mir auch mal ansehn. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 22:10 Uhr Holger Posts: 8116 Nutzer |
Zitat:Ich hatte #?.bh mit #?.bmap gleichgesetzt. Beim anderen source sagte MaxonBasic noch nicht, daß es diese auch noch gibt. Die fehlen natürlich auch. Deshalb dachte ich, Du schreibst es so um, daß keine doc.lib-Funktionen mehr benutzt werden. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 22:17 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat: Autsch, die fehlen ja auch in der Demo. Die sende ich Dir nach, die sind ja die gleichen wie bei AmigaBasic, somit dürfte ich kein Ärger bekommen von Maxon. Obwohl ich glaub eh nicht das die noch en Aufstand machen würden... -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 22:25 Uhr Holger Posts: 8116 Nutzer |
Zitat:Na ja, nich die gleichen. Die bei AmigaBasic beiliegenden sind für OS1.3 Aber was soll's, ich habe die fd-files für alle bekannten OS-Versionen hier, habe schließlich verschiedene käuflich erworbene Developer-CD's und die freien NDKs, könnte mir die bmap-files also auch generieren. Kostete nur Zeit und Nerven... mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 22:36 Uhr Ralf27 Posts: 2779 Nutzer |
[quote] Original von Holger: Zitat:Stimmt, da hast du auch wieder recht. Aber bevor du ans konvertieren gehst, schau mal ins Postfach. Geh ich insofern richtig in der Vermutung das die bmap somit frei von Maxon sind, bzw. viel mehr der Amiga"mutter" gehören? (Wobei das zur Zeit wohl auch unsicher ist. Da ist ja wirklich unklar was da wohin gehört...) -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 23:08 Uhr Holger Posts: 8116 Nutzer |
Zitat:Da bmap's automatisch generiert werden können, unterliegen sie nicht dem Urheberrecht. Die zugrundeliegende Information ist das API des AmigaOS, somit kein speziell urheberrechtlich geschütztes Werk. Du könntest ja auch bmaps für's MorphOS-API generieren Mit MaxonBasic wird das irgendwie nix. Es meint jetzt immer "DECLARE ...LIBRARY muß nach LIBRARY Ausdruck stehen". mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 23:16 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat: Hm, ich werd zum Hirsch. Also, zum einen hat MBasic ja recht, aber im Quellcode ist es doch auch so. BMAP-Verzeichniss auch richtig im Hauptverzeichniss von MBasic? Ich vermute das die BMAPs nicht gefunden werden. Versuch mal im Editor folgendes: Menu: Einstellungen/Compiler/Dateien und denn BMAPs-Pfad kontrollieren. Hab die Demo runtergeladen und mit dieser konnte ich es compilieren. Allerdings hab ich hier noch die Assigns drin, die dem Demo wohl noch fehlen. Deswegen das oben im Editor testen. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 23:23 Uhr Holger Posts: 8116 Nutzer |
@Ralf27: Laut Snoopdos werden die files gefunden und gelesen... mfg -- Good coders do not comment. What was hard to write should be hard to read too. Edit: Aber hast Du auch die gleiche hdingsbums.library zur Übersetzungszeit im Speicher? [ Dieser Beitrag wurde von Holger am 08.08.2005 um 23:24 Uhr editiert. ] [ - Antworten - Zitieren - Direktlink - ] |
08.08.2005, 23:30 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat: Die hbasic2.library ist bei mir in LIBS: Ich vermute das diese zum lauffähig Programm gebraucht wird. Ich werde hier mal bei mir alle Assign im Speicher zu MBasic löschen und mal sehn was geht. EDIT: Hab es eben getestet: Alle Assign gelöscht, BMAPs-Drawer nach MaxonBasic-Demo verschoben, BMAP-Verzeichniss in Einstellungen/Compiler/Dateien auf BMAPs-Verzeichniss umgebogen. MP3.bas geladen, compiliert und gestartet. Lief alles. Verschiebe wirklich mal die hbasic2.lib nach LIBS: und teste es nochmal. -- http://www.alternativercomputerclub.de.vu [ Dieser Beitrag wurde von Ralf27 am 08.08.2005 um 23:42 Uhr editiert. ] [ - Antworten - Zitieren - Direktlink - ] |
09.08.2005, 00:09 Uhr MaikG Posts: 5172 Nutzer |
>Ach Mensch, es kann doch nicht so schwer sein: >Mpeg-Version, BitRate, Frequenz 2x Mpeg 1 layer 3 128k 44100 3:47,3:46 1x Mpeg 1 layer 3 128k 48000 3:29 Wobei die Bitrate aus dem 1.Frame ist, da VBR nicht Real. >Insbesondere, wenn Du nichts besseres >zu tun hast, also immer wieder betonen zu wollen, daß Dein >Programm läuft. Sorry das war nicht böse gemeint. Ich meine ja nur ich wollte hilfe beim Berechnen/Optimieren. Ihr schreibt ein komplett neues Programm, was zumindest bei mir nicht geht. [ - Antworten - Zitieren - Direktlink - ] |
09.08.2005, 00:26 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat: Das gleiche auch anderherum. Aber nunja, was soll man machen, MPEG sind wohl wirklich nicht einfach. Dein Prog hat bei mir auch Fehler geworfen. Aber kurz mal eine Frage in die Runde: Ändert sich das Padding-Bit im Stream? Ich hätte auch nicht gedacht das das ganze so kompliziert ist. @Holger: Ganz kurz nochmal wegen dem Headeroverkill: Im Gegensatz zu WAV kann man MPEGs streamen, was wohl diesen Overhead benötigt. Denn wie sonst sollte man mitten in einen Stream einsteigen, wenn der Header im Stream fehlt. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
09.08.2005, 00:42 Uhr Holger Posts: 8116 Nutzer |
Zitat:Natürlich, das ist doch der Sinn der Sache. Um bei einer ganzzahligen Anzahl von byte/frame auf eine definierte Bitrate zu kommen, wechselt die Anzahl zwischen n und n+1, so daß es in der Gesamtheit stimmt. Zitat:Hab ich das als Overkill bezeichnet? Ich habe lediglich davon gesprochen, daß dieser reale Overhead bei Kompressionsratenvergleichen miteinbezogen werden muß. Und daß ich nicht glaube, daß er bei der effektiven Bitrate spürbar ist, also von Overkill war gar keine Rede. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
09.08.2005, 00:50 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat:Ja, das stimmt, vom Overkill war nicht die Rede. Aber es sind schon viele Header in einem "normalen" MP3-Lied und wenn man so alle Byte zusammenzählt die nur zur Verwaltung da sind, dann ist das doch schon einiges. So, muß in die Falle, heute geht es wieder rund. n8 -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
1 2 3 4 -5- 6 7 | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > MP3 VBR Laufzeit berechnen | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |