2

最近javascriptに導入されたメディアキャプチャインターフェイスを使用して、ユーザーからビデオをアップロードしようとしています。ブラウザの互換性のすべての難しさにもかかわらず、私はユーザーによってキャプチャされたビデオを保存するプロセスを理解し始めることさえできません。

どういうわけかajaxを使ってストリーミングされたビデオをサーバーにプッシュできると思っていましたが、それでも、問題に適切に取り組んでいるかどうかさえわかりません。

私は自分のコードを含めましたが、これは現在chromeとoperaでのみストリーミングされます。

function hasUserMedia()
{
    return !!(navigator.getUserMedia ||
    navigator.webkitGetUserMedia ||
    navigator.mozGetUserMedia ||
    navigator.msGetUserMedia);
}

if(hasUserMedia())
{
    var onFail = function(error)
    {
        alert("ERROR >> " + error);
    };

    var onPass = function(stream)
    {
        var video = document.querySelector('video');
        video.src = window.URL.createObjectURL(stream);

        video.onloadedmetadata = function(e)
        {
            //..what do I put here..?
        };
    }

    navigator.webkitGetUserMedia({video:true, audio:true}, onPass, onFail);
}
else
{
    alert("ERROR >> USERMEDIA NOT SUPPORTED");
}

function saveVideo()
{
    var connection = new XMLPHttpRequest();
    connection.onreadystatechange=function()
    {
        if(connection.readyState == 4 && connection.status == 200)
        {
            alert("Your streamed video has been saved..!");
        }
    }
    //..what do I type here..?
    connection.open("POST","savevideo.php",true);
    connection.send();
}
4

1 に答える 1

0

現在、サーバーへの WebRTC 接続を開くことはできません (ただし、誰かがそれに取り組んでいる可能性があります...)。私の知る限り、唯一の方法は、ビデオをキャンバスにキャプチャして各フレームのスクリーンショットを撮り、それぞれをサーバーに送信してそこでビデオをコンパイルすることです。

チェックアウト: https://webrtc-experiment.appspot.com/RecordRTC/

また役立つかもしれません:

http://www.html5rocks.com/en/tutorials/getusermedia/intro/

于 2013-07-05T17:11:25.517 に答える