Ich habe eine Menge Probleme, die gesamte Sample-Länge eines MP3 zu bekommen.Erhalten Sie die Gesamtlänge von Samples von Audio in Flash
Auch, wenn ich in die mp3 laden, spielt es nicht den ganzen Weg durch. Es spielt ungefähr die Hälfte seiner Länge.
Das mp3, das ich teste, kann hier gefunden werden, http://bit.ly/GYSOYj.
Der Code, den ich mit dem Sound zu spielen ist:
[Embed(source='assets/ffmangun_loop_79393.mp3')]
private var _snd_class:Class;
private var sound:Sound = new _snd_class as Sound;
protected function application1_creationCompleteHandler(event:FlexEvent):void {
sound.length; // 600;
sound.bytesTotal;// 44652
soundChannel = sound.play();
soundChannel.addEventListener(Event.SOUND_COMPLETE, soundComplete);
}
aktualisieren: es
Es wurde vorgeschlagen, dass ich die MP3 statt einbetten zu laden. Das Ergebnis ist, dass die MP3 die volle Länge spielt und die Länge und die Bytesumme nun unterschiedliche Nummern sind.
// Embedded Values
Bytes gesamt = 44652
Tonlänge = 600,8163265306122
// Last dynamische Werte
Bytes gesamt = 44678
Tonlänge = 1776,3265306122448
aktualisieren
Dies muss zur Laufzeit festgestellt werden.
Sie scheinen die gleiche Variable 'SampleDuration' zu überschreiben, es sei denn, das ist in der Zukunft doc erlaubt? – Neil
Tritt dies auch auf, wenn Sie die Datei nicht einbetten, aber laden? – TheSHEEEP
@Neil - das ist ein Tippfehler. Ich habe das entfernt. –