Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 15.03.2009, 00:00
avrile вне форума Посмотреть профиль Отправить личное сообщение для avrile Найти все сообщения от avrile
  № 1  
Ответить с цитированием
avrile

Регистрация: Feb 2009
Сообщений: 7
По умолчанию Мучаюсь с mp3 player

Может кто-нибудь может подсказать... делаю mp3 player.

Есть готовый основной файл и есть готовый mp3 player отдельным файлом. Как все это соединить? И то и другое отдельно работает а вместе? нужно все ж создавать плейер в основном файле?

Я понимаю что нужно начинать с чего-нибудь попроще изучение флеша, но это задание в универе и до конца марта нужно закончить... Буду очень вам благодарна, хотя бы если ткнете куда смотреть и что искать... Спасибо заранее.

Старый 15.03.2009, 00:17
serenkiy вне форума Посмотреть профиль Отправить личное сообщение для serenkiy Найти все сообщения от serenkiy
  № 2  
Ответить с цитированием
serenkiy
 
Аватар для serenkiy

Регистрация: Jan 2009
Сообщений: 60
Отправить сообщение для serenkiy с помощью ICQ
Что представляет из себя "готовый основной файл"? Если Вам нужно быстро создать плеер, найдите в гугле или на форуме (вроде есть) урок по созданию плеера и следуйте инструкциям.

Старый 15.03.2009, 00:37
avrile вне форума Посмотреть профиль Отправить личное сообщение для avrile Найти все сообщения от avrile
  № 3  
Ответить с цитированием
avrile

Регистрация: Feb 2009
Сообщений: 7
serenkiy, спасибо за внимание)

"готовый основной файл" - это основной файл (не знаю как его еще можно обозвать), в котором есть разные рубрики, и в каждом хотелось бы иметь плейер со своим собственным плей-листом.

Идея такова: т.к. я музыкант, то выбрала создание плейера "Музыкотерапия" (задание у нас - сделать тематичный плейер). В основном файле уже составила разные категории. Также нашла готовый и работающий! плейер. Теперь вот не знаю как этот плейер "прилепить" к каждой рубрике.

? озадачилась...

начала читать Мука, пока все это осилю...

готова всем помогающим потом подарить мой труд

Старый 15.03.2009, 01:40
serenkiy вне форума Посмотреть профиль Отправить личное сообщение для serenkiy Найти все сообщения от serenkiy
  № 4  
Ответить с цитированием
serenkiy
 
Аватар для serenkiy

Регистрация: Jan 2009
Сообщений: 60
Отправить сообщение для serenkiy с помощью ICQ
спрошу по-другому - в каком формате "основной файл" - это страница html? или код, написанный на actionscript?

Старый 15.03.2009, 02:09
avrile вне форума Посмотреть профиль Отправить личное сообщение для avrile Найти все сообщения от avrile
  № 5  
Ответить с цитированием
avrile

Регистрация: Feb 2009
Сообщений: 7
прошу прощения за некоректо-поставленный вопрос

основной файл - fla (подобие сайта с 5 рубриками)
плейер - тоже fla (+xml + mp3)

я вставила swf плейера на одну из страничек основного файла, но конечно же он не функционирует...

Старый 15.03.2009, 22:25
serenkiy вне форума Посмотреть профиль Отправить личное сообщение для serenkiy Найти все сообщения от serenkiy
  № 6  
Ответить с цитированием
serenkiy
 
Аватар для serenkiy

Регистрация: Jan 2009
Сообщений: 60
Отправить сообщение для serenkiy с помощью ICQ
Просто так объяснить что делать очень сложно, т.к. все плееры разные, методы работы с ними тоже отличаются. Если Вы сможете выложить исходный код, тогда уже можно будет подумать над решением проблемы.

Старый 15.03.2009, 23:50
avrile вне форума Посмотреть профиль Отправить личное сообщение для avrile Найти все сообщения от avrile
  № 7  
Ответить с цитированием
avrile

Регистрация: Feb 2009
Сообщений: 7
вот он родимый
он у меня в процессе редактирования что касается визуального аспекта, но так то он рабочий (т.е. фукнционирует отменно)..
Вложения
Тип файла: rar player2.rar (148.6 Кб, 106 просмотров)

Старый 15.03.2009, 23:58
serenkiy вне форума Посмотреть профиль Отправить личное сообщение для serenkiy Найти все сообщения от serenkiy
  № 8  
Ответить с цитированием
serenkiy
 
Аватар для serenkiy

Регистрация: Jan 2009
Сообщений: 60
Отправить сообщение для serenkiy с помощью ICQ
Эх, если можете, вышлите именно код, я не работаю в Adobe Flash, использую FlashDevelop, он не поддерживает данный формат.

Старый 16.03.2009, 00:16
avrile вне форума Посмотреть профиль Отправить личное сообщение для avrile Найти все сообщения от avrile
  № 9  
Ответить с цитированием
avrile

Регистрация: Feb 2009
Сообщений: 7
я не уверена что это весь..

Код AS1/AS2:
dd = new Sound();
mm = new Array();
// XMl code for loading URLs.
function loadXML(loaded) {
	if (loaded) {
		for (i2=0; i2<this.firstChild.childNodes.length; i2++) {
			mm[i2] = this.firstChild.childNodes[i2].firstChild.nodeValue;
			dd.loadSound(mm[0], true);
		}
	} else {
		trace("file not loaded!");
	}
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("list.xml");
 
var i:Number = 0;
 
function playprev() {
	//	if (i>0) { 
	//i -= 1;
	// this will make it play in repeat mode , 
	if (i == 0) {
		i = mm.length-1;
	} else {
		i -= 1;
	}
	dd.loadSound(mm[i], true);
	if (noprenext) {
		noplay();
	}
	list_mmc.list_p.list.selectedIndex = i;
}
function playnext() {
	i += 1;
	// this will make it play in repeat mode , 
	if (i>mm.length-1) {
		i = 0;
	}
	list_mmc.list_p.list.selectedIndex = i;
	dd.loadSound(mm[i], true);
	if (noprenext) {
		noplay();
	}
}
fscommand("allowscale", "false");
xx = bar._width;
orginal_width = bar._width;
_root.soundbtndis._visible = false;
_root.soundbtndis.disabled = true;
dd.setVolume(200);
this.onEnterFrame = function() {
	dd.onSoundComplete = function() {
		startoff();
		playnext();
	};
	t1 = int(dd.duration/1000/60);
	t1 = t1+" : "+int((dd.duration/1000-(t1*60)));
	ddf = int((dd.duration-dd.position)/1000/60);
	elapsed_sec = int((((dd.duration-dd.position)/1000/60)-ddf)*60);
	if (elapsed_sec<10) {
		elapsed_sec = "0"+elapsed_sec;
	}
	if (ddf<10) {
		ddf = "0"+ddf;
	}
	if (_root.stpd) {
		elapsed = _root.t1;
	} else {
		elapsed = ddf+" : "+elapsed_sec;
	}
	//mo=dd.position/1000
	//elapsed =  
	vol = dd.getVolume()+" %";
	dur = dd.duration;
	pos = dd.position;
	per = (pos/dur)*100;
	m = (pos/dur)*100;
	bar._width = (m*xx)/100;
	drag._x = _root.bar._width+_root.bar._x;
	//drag._y = 136;
	if (stpd) {
		xx = 0;
	} else {
		xx = orginal_width;
	}
	// function keys
	if (Key.isDown(67)) {
		pauseit();
	}
	if (Key.isDown(88)) {
		playit();
	}
	if (Key.isDown(86)) {
		stopit();
	}
	//**************************************                                                                                                                                        
	_root.shorba.art = "Artist :"+dd.id3.artist;
	_root.shorba.song = "Title :"+dd.id3.songname;
	_root.shorba.setMask(_root.loo7);
	// Handling undefined or null Tag values 
	// Note this works with URL form like that d:\songs\song.mp3
	if (_root.shorba.art == "Artist :"+undefined || _root.shorba.art == "Artist :"+'') {
		_root.shorba.art = String(mm[i]);
		dotpos = _root.shorba.art.lastIndexOf('.');
		slashpos = _root.shorba.art.lastIndexOf('\\');
		_root.shorba.art = "Artist :"+_root.shorba.art.substring(slashpos+1, dotpos);
	}
	if (_root.shorba.song == "Title :"+undefined || _root.shorba.song == "Title :"+'') {
		_root.shorba.song = String(mm[i]);
		dotpos = _root.shorba.song.lastIndexOf('.');
		slashpos = _root.shorba.song.lastIndexOf('\\');
		_root.shorba.song = "Title :"+_root.shorba.song.substring(slashpos+1, dotpos);
	}
};
_root.information.setMask(_root.infomask);
Добавлено через 53 секунды
и еще

Код AS1/AS2:
// play button function
function startoff() {
	ply = true;
	stpd = false;
	_root.dd.stop();
	stopAllSounds();
	_root.dd.start();
	pus = false;
	if (!noprenext) {
		_root.information.info = "";
		_root.information.play();
		_root.information.info = "Playing";
	}
}
function playit() {
	ply = true;
	noprenext = false;
	stpd = false;
	_root.information.info = "";
	_root.information.play();
	_root.information.info = "Playing";
	if (listloaded) {
		if (pus && _root.pindex == i) {
			_root.dd.start(position);
			pus = false;
		} else {
			_root.dd.stop();
			stopAllSounds();
			_root.dd.start();
			item = _root.pindex;
			i = item;
			dd.loadSound(mm[item], true);
			pus = false;
		}
	} else {
		if (pus) {
			_root.dd.start(position);
			_root.information.info = "Playing";
			pus = false;
		} else {
			_root.dd.stop();
			stopAllSounds();
			_root.dd.start();
		}
	}
}
//pause button function
function pauseit() {
	if (!_root.stpd) {
		position = _root.dd.position/1000;
		if (!pus) {
			_root.dd.stop();
			pus = true;
			_root.information.info = "";
			_root.information.play();
			_root.information.info = "Paused";
		} else {
			_root.dd.start(position);
			pus = false;
			_root.information.info = "Playing";
		}
	}
}
//stop button function 
function stopit() {
	if (!stpd) {
		_root.dd.stop();
		stpd = true;
		noprenext = true;
		pus = false;
		_root.information.info = "";
		_root.information.info = "Stopped";
		_root.information.play();
	}
}
function noplay() {
	if (!stpd) {
		_root.dd.stop();
		stpd = true;
		//noprenext = true;
		pus = false;
	}
}
Добавлено через 7 минут
serenkiy, боюсь пошлете вы меня сейчас

если есть решение попроще, то согласна на все возможные варианты с одной стороны уже всех собак готова спустить на этого профа, но с другой, так хотелось бы покопаться и проникнуться этим чудом-программированием во флеше..


Последний раз редактировалось iNils; 16.03.2009 в 00:58.
Старый 16.03.2009, 00:35
serenkiy вне форума Посмотреть профиль Отправить личное сообщение для serenkiy Найти все сообщения от serenkiy
  № 10  
Ответить с цитированием
serenkiy
 
Аватар для serenkiy

Регистрация: Jan 2009
Сообщений: 60
Отправить сообщение для serenkiy с помощью ICQ
Насколько я понял, в list.xml - список треков, а именно - пути к ним (в вашем случае они должны лежать в директории с флэш-проигрывателем). Через функцию playIt() мы запускаем текущий трек, через stopIt() останавливаем, playNext()/playPrev() -следующий/предыдущий трек соответственно.
Но возвращаясь к проблеме - как это все соединить - я не могу расписать все тонкости, но могу направить Ваши мысли в нужное русло. Тот же Мук очень поможет, читал его книгу - пишет все грамотно и понятно.
1. Прочитайте все про работу с классами. (займет около часа, понять основы - полчаса-час).
2. Вам нужно будет создавать у себя в проекте (там где будете размещать плеер) экземпляры этого плеера. Потребуется импорт в проект. Мук это рассматривает в самом начале книги.
3. Рекомендую посмотреть уроки, вроде "Импорт AS2.0 в AS3.0".

Ну и в принципе все, надеюсь Вы знаете основы, вроде работы с событиями, что бы обрабатывать нажатия на кнопки и т.п.

Кстати, надеюсь я правильно понял, Вы изучаете ActionScript 3.0?

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:21.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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