Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Class MusicPlayer (http://www.flasher.ru/forum/showthread.php?t=97584)

Snut 24.06.2007 21:44

Class MusicPlayer
 
Вообщем поставил задачу сделать флеш плеер мп3шный функционала почти 0, а именно: показать сколько загруженно, сколько проигранно, уменьшение\увеличение громкости через startDrag и показ имени артиста и названия композиции, для ентого написал класс:
MusicPlayer.as
Код:

/*
* auth: Snut
*/
class MusicPlayer{
        public var URL:String;
        private var time_played:Number = track.position;
        private var time_all:Number = track.duration;
        private var track:Sound;
        private var load_s:Number;
        private var total_s:Number;


        public function initSound (URL) {
                track = new Sound();
                track.loadSound(URL, true);
                load_s = track.getBytesLoaded();
                total_s = track.getBytesTotal();
                getDuration();
                getLoad();
                getArtistName();
                getSongName();
        }
        private function getDuration ():Number {
                var played:Number = Math.floor((time_played/time_all)*100);
                return played;
        }
       
        private function getLoad ():Number {
                var loaded:Number = Math.floor((load_s/total_s)*100);
                return loaded;
        }
        private function getArtistName ():String {
                var artistName:String = track.id3.TPE2;
                return artistName;
        }
        private function getSongName ():String {
                var songName:String = track.id3.TPE2;
                return songName;
        }
}

В первом фрейме флешки:
Код:

initSound("track1.mp3");
this.artist_name.text = artistName;
this.track_name.text = songName;
this.play_bar.progress_bar.gotoAndPlay(played);
this.play_bar.load_bar.gotoAndPlay(loaded);

И не могу понять почему даж мпзшка не грузится... в чем моя ошибка?

iNils 24.06.2007 22:14

Для начала неплохо создать MusicPlayer. Потом у него вызвать метод initSound. Названия трека и артиста будут доступны не сразу (зачем вообще вы вызываете метода которые узнают имя артиста и трека, когда возвращаемые данные вы не где не сохраняете?). Поэтому вызов в initSound метода getArtistName и других бесполезно.

Snut 24.06.2007 22:29

ага, знгачит следовательно нужно дождаться загрузки файла а потом уже все из него вытащить, так?

DarkLight 24.06.2007 22:36

есть спец событие onID3 для этого

iNils 24.06.2007 23:09

Цитата:

Сообщение от Snut
ага, знгачит следовательно нужно дождаться загрузки файла а потом уже все из него вытащить, так?

Не, сначала нужно сделать следущее
Код:

var mp:MusicPlayer = MusicPlayer ();
mp.initSound("track1.mp3");


Snut 25.06.2007 00:36

а точна я же класс не инициализировал) туплю) пасиба

// UPD
Чет ничаво не вышло ибо функционал понизиди до 0 и сделал вот что miniplayer.zip флешка вставляется как обычно ток вот таким макаром
Код:

<embed src="file.swf?file=dura.mp3"></embed>
Не могу понять где моя ошибка... старею((( Help plz


Часовой пояс GMT +4, время: 10:56.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.