PDA

View Full Version : سوال: رادیو کوچیک(فراخوانی چندین موزیک در یک تکه کد)



maskmr85
جمعه 26 فروردین 1390, 21:36 عصر
با سلام
من میخوام یه رادیو آنلاین کوچیک با استفاده از یک تکه کد ساده بسازم
-------------
تا جایی که من تو مقالات خوندم و تو فروم های مختلف دیدم اسکریپتهای رادیو آنلاین
اکثرا لیسانس داره ونال شدش نیست و اگر هم باشه میزان ترنسفری که از هاست میکشه
خیلی زیاده.به همین دلیل فکر یه جعبه پخش آنلاین با امکانات کمتر و جمع و جور تر افتادم.
-------------
کد جاوا فراخوانی موزیک همراه با اسکین مدیا پلیر که زیاد هست(یک نمونه کد)

<object classid="clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6" id="WindowsMediaPlayer1" height="40" style="border: 1px dotted #999; width: 203px;">
<param name="URL" value="http://localhost/Radio/Armin.mp3%22%22http://localhost/Radio/Pishet.mp3"http://localhost/Radio/Pishet.mp3" ref="">
<param name="autoStart" value="-1">
<param name="volume" value="100">
<param name="rate" value="1">
</object>
من میخواستم یک فایل جاوا اسکریپت داشته باشم که داخلش چندین لینک
موزیک داشته باشم و با فراخونی فایل جاوا اسکریپت به تکه کد این کد بجای
پخش یک لینک بصورت رندوم موزیک های لینک داده شده داخل فایل.js رو پخش
کنه.
مانند تصاویر تصادفی که داخل یک فایل جاوا قرار گرفته و بصورت رندوم فراخونی میشه.
فایل تصاویر رندوم و فراخوانی اونارو اتیج میکنم...
68785

hossin.esm
شنبه 27 فروردین 1390, 00:45 صبح
کد را از یک سایت گرفتم (که آدرسش را گم کردم تا اینجا بگذارم) و کد رندم را بهش اضافه کردم


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Title here</title>

</head>
<body>
<p align="Center">
<script language="javascript">var streams = new Array();
streams[0] = new makeStream("1.mp3", "1...Song Title One");
streams[1] = new makeStream("2.mp3", "2...Song Title Two");
streams[2] = new makeStream("3.mp3", "3...Song Title Three");
streams[3] = new makeStream("4.mp3", "4...Song Title Four");
function makeStream(url, name) {
this.url = url;
this.name = name;
}
function handleControlsOnOffClick() {
if (document.mediaPlayer.showControls == true) {
document.mediaPlayer.showControls = false;
document.playerCtrl.controls.value = " :.SHOW PLAYER.:";
}
else {
document.mediaPlayer.showControls = true;
document.playerCtrl.controls.value = " :.HIDE PLAYER.: "
}}
function handlePlayOrPauseClick(){
var state;
playerStatus = document.mediaPlayer.playState;
if (playerStatus == 6) {
document.mediaPlayer.play();
document.playerCtrl.playOrPause.value = " :.PAUSE.: ";
}
else if (playerStatus == 1) {
document.mediaPlayer.play();
document.playerCtrl.playOrPause.value = " :.PAUSE.: ";
}
else if (playerStatus == 2) {
document.mediaPlayer.pause();
document.playerCtrl.playOrPause.value = " :.PLAY.: ";
}
}
function changeSize(newSize) {
document.mediaPlayer.displaySize = newSize;
}
function change() {

var list = document.playerCtrl.streams;
if(list.selectedIndex!=0)
{
var streamURL = list.options[list.selectedIndex].value;
document.mediaPlayer.stop();
document.playerCtrl.playOrPause.value = " :.PAUSE.: ";
document.mediaPlayer.fileName = streamURL;
}
}
</script>
<object id="mediaPlayer" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"
codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"
standby="Loading Microsoft Windows Media Player components..."
type="application/x-oleobject" width="239" height="179">
<param name="fileName" value="sounds/bestieverhad.wav">
<param name="animationatStart" value="false">
<param name="transparentatStart" value="true">
<param name="autoStart" value="true">
<param name="loop" value="true">
<param name="showControls" value="false">
</object>
<form name="playerCtrl">
<input type="button" value=" :.PAUSE.: " name="playOrPause"
onclick="handlePlayOrPauseClick()" style="font-family:courier"> <input
type="button" value=" :.SHOW PLAYER.: " name="controls"
onclick="handleControlsOnOffClick()" style="font-family:courier">
<script language="javascript">
r=Math.floor(Math.random()*streams.length)
with (document) {

writeln('<select name="streams" onChange="change()">');
writeln('<option >Choose</option>');
for (var i = 0; i < streams.length; i++) {

writeln('<option value="'+ streams[i].url+ '">'+ streams[i].name+"</option>");

}
writeln('</select>');
}
var s = streams[r].url;
document.mediaPlayer.stop();
document.playerCtrl.playOrPause.value = " :.PAUSE.: ";
document.mediaPlayer.fileName = s;

</script>
</form>
</p>
</body>
</html>

maskmr85
شنبه 27 فروردین 1390, 14:58 عصر
آقا حسین میشه یکم درباره کد توضیح بدی؟
این باید تو یه اچ تی ام ال ذخیره شه که 1.mp35 mp34 mp33 mp32 mp3
توی همون صفحه باشه؟
پس نقش bestieverhad.wav چیه؟
چطور من 5تا فایل صوتی و ویو رو آدرس دهی کردم نه تو اکسپلورر پاسخ داد نه فایر فاکس؟
برا شما کار میکنه؟

hossin.esm
شنبه 27 فروردین 1390, 17:03 عصر
آقا حسین میشه یکم درباره کد توضیح بدی؟
این باید تو یه اچ تی ام ال ذخیره شه که 1.mp35 mp34 mp33 mp32 mp3
توی همون صفحه باشه؟

نام فایل ها در ارایه ذخیره میشه. در فایل js یا html تعریف میشه.





پس نقش bestieverhad.wav چیه؟

فایل پیشفرض را مشخص میکنه که چون کد رندم را اضافه کردیم نقشی ندارد.





چطور من 5تا فایل صوتی و ویو رو آدرس دهی کردم نه تو اکسپلورر پاسخ داد نه فایر فاکس؟
برا شما کار میکنه؟

میتونید ارایه را مقدار دهی کنید
و برای من توی IE کار میکنه فایر فاکس هم پلاگینش را نصب نکردم
و نکته این که با ورود به صفحه یک فایل به صورت رندم انتخاب و پخش میشه و وقتی به پایان رسید دوباره همین فایل پخش میشه مگر اینکه کاربر فایل دیگری را انتخاب کند.
من پیشنهاد میکنم از لینک زیر استفاده کنید کامل تر هست و فایل های لیست را به صورت مرتب پخش میکند.


http://www.seabreezecomputers.com/tips/sound.htm