0

YouTube のような動画コンテンツの多い Web サイトを開発する場合、どの言語/フレームワークが、パフォーマンスと動画変換/圧縮プラグインのサポートの観点から、より良いオプションである可能性があります。考慮に値するいくつかのポイントがあるかもしれません。

  • CPU 対 I/O 時間
  • 圧縮/変換プラグインのサポート (既存の mods/gems/libs)
  • 学習の容易さはそれほど重要ではありませんが、入力は歓迎されます

質問が少し主観的に聞こえることは承知していますが、私の意図は、同様の種類のサイトを開発した経験のある人から、関連する技術を理解することです.

4

2 に答える 2

3

残念ながら、動画配信 Web サイトを作成するために組み合わせることができる API/ライブラリ/フレームワークは 1 つまたは 2 つありません。

これには常に、スタックのすべてのレベルで多大な関与が必要になります。

サーバー バックエンドでは、次の問題を解決する必要があります。

  • ビデオエンコーディング
    • 任意の数のビデオ フォーマットを FLV または HTML5 対応フォーマット用の最新の h264 にエンコードするための FFMPEG または MPlayer の経験
    • バックグラウンド プロセスでビデオをトランスコードする信頼性の高いメカニズム。最初は 1 台のサーバーでしたが、サービスの規模が拡大するにつれ、最終的には複数のサーバーで
    • ビデオのサイズ変更
  • 帯域幅管理により、接続を十分に調整して、ビデオがユーザーに流れ落ちるようにします
  • ビデオ ファイルとファイルのシャーディングおよび命名メカニズムの保存
  • API サーバー - Rails、Django、または NodeJS Express のようなもので、Web クライアントとビデオ エンコーディング/サービス サービスの間で JSON サービス レイヤーとして機能します。

フロントエンドでは、次の問題を解決する必要があります。

  • 複数の OS (Windows、OSX、Linux、タブレット、モバイル) およびプラットフォーム (IE、Chrome/Safari、Firefox、Opera) でビデオを確実に再生し、古いブラウザーのフォールバックをサポート
  • DRM - 動画は無料ですか、それとも商用ですか? 後者の場合、これは対処する必要がある別の問題です

並行性をサポートするコードを開発する方がはるかに簡単なので、バックエンドにイベント ドリブン システムを強くお勧めします。NodeJS は良い選択です。NodeJSの node-fluent-ffmpegモジュールを出発点として検討する価値があります。

フロントエンドに関しては、Backbone.js や AngularJS などのフレームワークを使用して Web アプリを開発することをお勧めします。

数年前に似たようなことを試みたとき、それは楽しくてやりがいのある旅でした. 旅の幸運を祈ります。

于 2013-01-22T14:58:47.277 に答える
0

そのようなサイトでは、仕事をするためにいくつかのツールを選択する必要があると思います. ウェブの場合、任意のフレームワークを使用できるため、レールで問題ありません。ビデオを処理するには、ffmpeg やビデオを変換するためのトランスコンディングが必要です。ストリーミングの場合、HTML5 を使用できる場合は、この質問をチェックしてください。それ以外の場合は、Flash フォールバックを備えたプレーヤーが必要になります。

ストレージと CPU の面で重い部分は、ビデオの圧縮/変換であることを忘れないでください。

于 2013-01-22T14:32:05.757 に答える