タグ

ストリーミングに関するotakumesiのブックマーク (3)

  • フロントエンドエンジニアのための動画ストリーミング技術基礎

    動画はデータ容量が大きい 画像と違い、動画コンテンツはデータ容量がとても大きいため、データをダウンロードして再生するまでに待ち時間が発生します。 動画のデータ容量が大きい理由はとても単純で、動画は画像データが集合したものだからです。静止画像を人間の目が滑らかに感じられる速さで切り替えて表示することで絵を動かすという表現を実現しています(よくパラパラマンガに例えられますが、そんな感じです)。この人間の目が滑らかに感じる速さというのが 1 秒間に 30 枚だったり 24 枚を切り替えることになります。29.97 (≒30) fps とか 24 fps とかの数字を耳にしたことがあるかと思いますが、24 fps の場合は 1 秒間(s)の間(p)に 24 フレーム(f)を切り替えることを意味します。 データを全て自分の端末にダウンロードしてから再生しようとすると、かなり長い待ち時間が発生してしま

    フロントエンドエンジニアのための動画ストリーミング技術基礎
  • WebAudio+WebSocketでブラウザへの音声リアルタイムストリーミングを実装する

    gistfile1.md WebAudio+WebSocketでブラウザへの音声リアルタイムストリーミングを実装する WebRTCでやれよ!と言われそうなところですが、 WebSocket+WebAudioの組み合わせで音声ストリーミングをシンプルに構成する方法を紹介してみます。 サーバーサイド(Node.js + ws + pcm) サーバーサイドは何でも良いのですが、 とりあえずNode.jsでtest.mp3というサンプルファイルをpcmモジュールでデコードし、 wsでクライアントに垂れ流す作りにしておきます。 この例ではPCMサンプルが[-1, 1]の範囲で入ってくるので、 これをそのままFloat32ArrayのArrayBufferにして突っ込めばそのままWebAudioで再生可能な形式になります。 var pcm = require('pcm'); var wss = new

    WebAudio+WebSocketでブラウザへの音声リアルタイムストリーミングを実装する
  • NginxとFFmpegを利用したHTTP Live Streaming配信 – Rest Term

    HTTP Live Streaming(HLS)配信の基的な手順をまとめます。 去年の記事 「NginxのHTTP Pseudo-Streamingを試す」 ではNginxの疑似ストリーミング配信モジュールを試してみましたが、機能不足のため実サービスで使うのは難しいです。そのためWebサーバでストリーミング配信を行いたい場合は今回紹介するHLSなどの利用が推奨されます。 HTTP Live Streaming(HLS)とは Apple公式のドキュメントを読む方が理解は進むと思いますが、一応ここでも簡単に概要を。 HTTP Live Streaming (also known as HLS) is an HTTP-based media streaming communications protocol implemented by Apple Inc. HTTP Live Streami

    NginxとFFmpegを利用したHTTP Live Streaming配信 – Rest Term
  • 1