0

こんにちは、誰かが私にこれを手伝ってくれるかどうか疑問に思っていました...フラッシュからphpを呼び出してmp3をストリーミングする方法に関する情報を集めることができましたが、フラッシュからデータをストリーミングする方法が正確にはわかりません。以下は私が現在持っているコードです。

閃光

function onPlay(e:MouseEvent):void
{
    //Load file to play
    var req:URLRequest = new URLRequest("streamAudio.php");
    var urlData:URLVariables = new URLVariables();
    urlData.id = id;
    req.data = urlData;

    myMusic.load(req); //myMusic is a Sound object
    myChannel = myMusic.play(); //myChannel is a SoundChannel object

    btn_Play.visible = false;
    btn_Pause.visible = true;
}

PHP

<?php
$ID = $_GET["id"];

if ($ID != 0)
{
    //Code to fetch URL from DB

    $url = $row["url"];
    $file = "/" . $url;

    if(file_exists($file))
    {
        header("Content-type: audio/mpeg, audio/x-mpeg, audio/x-mpeg-3, audio/mpeg3");
        header("Content-Length: " . filesize($file));
        header("Expires: -1");
        header("Cache-Control: no-store, no-cache, must-revalidate");
        header("Cache-Control: post-check=0, pre-check=0", false);

        readfile($file);
    }

    //Close DB
}

すべての助けに感謝します。前もって感謝します!!

編集

コードを修正しました。PHP スクリプトは、直接テストすると機能します。

4

1 に答える 1

1

なぜあなたがしていることをしているのかわかりません...あなたは非常に簡単にオーディオを再生できるはずです:

s = new Sound();
s.loadSound("http://someserver/yourscript.php", true);

もちろん、これはPHPスクリプトが最初から機能していることを前提としています。多くの場合、ダウンロードする前にリモートリソースのファイルサイズを取得できないことに注意してください。最初にPHPスクリプトを直接ヒットして、テストします。

于 2012-05-24T02:22:34.663 に答える