問題タブ [streaming-video]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - MPMoviePlayerController と UIWebView を起動してムービーをストリーミングすることの長所と短所
Web 用のビデオ コンテンツを Flash 形式で持っているクライアントがいます。私の仕事は、彼らが iPhone アプリでビデオを表示できるようにすることです。
ステップ 1 は、これらのビデオを iPhone に適した Quicktime フォーマットに変換することだと認識しています。
次に、これらのファイルをホストする方法または場所をクライアントが把握できるように支援する必要があります。それが難しい場合は、YouTube でホストできると思います。
ただし、私の主な関心事は、ビデオをストリーミングするためにどのアプローチを取るかです。MPMoviePlayerController とストリームの URL を使用して UIWebView を起動することの長所と短所は何ですか? 違いはありますか?それらの1つは多かれ少なかれ寛容ですか?そのうちの 1 つは、より優れたユーザー エクスペリエンスですか? 私が遭遇すると予想される落とし穴はありますか?
iPhoneで動画を再生するのはかなり簡単だと思います。両方を試して、一方をフォールバックとして利用できるようにすることは合理的ですか?それとも時間の無駄でしょうか? 私はこれを少しスケジュールしようとしているので、これを行った人から実際の経験を聞きたい.
iphone - MPMoviePlayerController をテストするためのオンライン サンプル ムービーはありますか?
iPhone で映画をオンラインで開くことに成功しました。(実際の URL がないため、失敗します。)
コードが機能していることを確認するためのベースライン テストとして使用できる有効な URL を知っている人はいますか? iPhone がフォーマット、MIME タイプ、およびサーバーについて少しうるさいことは知っているので、既知の作業ストリームから始めたいと思います。
security - PDF と埋め込みビデオの保護
私の会社では、ストリーミング ビデオ (CloudFront でホスト) と PDF (Amazon S3 でホスト) の両方で販売する製品のプログラミング手順を提供しています。お客様がこれらの PDF からコンテンツを取り出したり、PDF を保存したり、リンクを共有したりできるようにしたくありません。同時に、人々がビデオをストリーミングできるようにしたくありません (ビデオにはあまり関心がありません)。
これを確保するための最良の選択肢を見つけようと、頭を悩ませてきました。PDF のセキュリティにはどのような制限がありますか? 結局のところ、それらを止めることができますか? または、少なくともそれを本当に難しくしますか?
android - Android で .ts ビデオ ファイルを再生しますか?
私はビデオのストリーミングにかなり慣れていないので、ご容赦ください。:)
m3u8 ストリームを iPhone から Android に移植しようとしています。m3u8 フィードを調べたところ、いくつかの .ts ファイルが見つかりました。私が知る限り、.ts ファイル自体は、ビデオ ストリーム (Elementary Stream) を含むラッパーです。
Android で .ts ファイルを再生できますか? (ドキュメントでは、サポートされている形式として 3gp と mp4 のみがリストされています。)
Elementary Stream を抽出してビデオ フィードを処理する方法はありますか? 3gp か mp4 であれば問題ありません。
Stagefright は .ts を処理しますか? Stagefright は利用できますか? 私はそれにいくつかの問題がある/あったことを読みました。
(さらに注意しておきたいのは、サーバー担当者からはあまり助けが得られないということです。彼らはプロプライエタリ プレーヤーを含む Flash プレーヤー ソリューションを求めています。彼らは 3gp や mp4 フィードを提供してくれませんが、私は期待しています。 .ts ファイルでそれを見つけることができます。)
私は他の提案を受け入れます。この初心者をお待ちいただきありがとうございます。:)
android - Centos ビデオ オプティマイザー
サーバーにたくさんの MP4 ファイルがあります。私の目標は、それらを Android モバイルでストリーミングできるようにすることです。
ビデオの解像度は 480×272 で、これは問題ではありません。私がテストしたところ、ほとんどの Android でストリーミングできるからです。しかし、問題はビデオのサイズです。ストリーミングは遅く、サイズが大きいため多くのバッファリングが発生します。
サイズを約 50 ~ 60MB に縮小できるコンバータが必要です。品質が少し低下するだけです。可能であれば、出力ファイルで入力ファイルを上書きする必要があります。
この作業を最小限の時間で行う方法を考えてもらえますか? 私のサーバーはCENTOSで、FFMPEG、MP4Boxがインストールされています。
mpmovieplayercontroller - iOSデバイスへの静的ファイルのHTTPライブストリーミング
iOSデバイスへの静的ビデオファイルのHTTPライブストリーミングの「チャンク」の側面を理解しようとしています。ビデオファイルのチャンクはどこで発生しますか?
編集:HTTP LIve Streamingともう少しhttps://datatracker.ietf.org/doc/html/draft-pantos-http-live-streaming-07を読むと、ビデオファイルが.tsセグメントに分割されているように聞こえますサーバー。または、m3u8プレイリストでファイルへのバイトオフセットを指定できます(明らかにを使用してEXT-X-BYTERANGE
)。
AppleのHLSの説明とhttps://datatracker.ietf.org/doc/html/draft-pantos-http-live-streaming-07を読んだ後、このプロセスについて私が理解したことは次のとおりです。
- 静的ファイルは私のサーバー上にあります。適切なオーディオ/ビデオエンコーディング(H.264およびAAC)があります。
m3u8
アプリのメディアプレーヤー(MPMoviePlayer
または同様のもの)にプレイリストを渡します。- アプリは、メディアの再生中に「インデックスをリロード」します。言い換えれば、アプリは再生する追加のセグメントを要求します。
- 各10秒のセグメントはMPEGトランスポートストリームコンテナにあります。
このプロセスについての私の理解は不完全です(そしておそらく正しくありません)。追加情報は大歓迎です。
node.js - ライブ キャプチャ ソースからアクティブにストリーミングしている Node.js FFMPEG 子プロセスを閉じるにはどうすればよいですか?
私は Node.js を初めて使用し、child.spawn を利用して、ライブ ビデオをキャプチャし、rtmp 経由で Adobe Media Server に送信するために使用されている FFMPEG のインスタンスを起動する方法を理解しました。
Node.js と組み合わせて使用されている FFMPEG について私が見たすべての例は、時間制限付きのサンプルを使用していたため、変換中のファイルの最後に FFMPEG が到達すると、子プロセスが閉じます。
この場合、「ファイルの終わり」はありません。
インスタンス化すると:
ライブ フィードを作成します。
私はすぐに子プロセスをシャットダウンしようとしました:
しかし、それはうまくいかないようです。テスト ボックスに rtmp フィードが引き続き表示されます。
Node.jsのstdinを介してFFMPEGにシャットダウンコマンドを渡す方法はありますか?
前もって感謝します!
リック
asp.net - ビデオを Web サイト asp.net にストリーミングする
avi フレームまたは画像のストリームがあります。asp.net と c# を使用してこのストリームを Web サイトに表示するにはどうすればよいですか?
wpf - DirectShow カスタム ソース ピン
私は DirectShow を初めて使用します。私は、他の多くの人と同じように、WPF ベースのカード ゲーム用のソケット ベースの P2P ストリーミング ソリューションを作成しようとしています。各プレイヤーが小さなビデオ ウィンドウでお互いを確認できるようにしたいと考えています。
私の質問は 2 つあります。1 つ目は、フレームのサンプル レートと解像度を下げるにはどうすればよいですか? 320x200 x 15 ~ 20 fps で十分だと思います。フレーム データを取得してソケット経由で送信するために、SampleGrabber コールバックを使用しています。実際には、640x480 の解像度で圧縮なしで動作しています。
私の 2 番目の質問は、各フレームには 921,600 バイトが含まれているため、これは本当に行き詰まり、ローカルの WiFi 接続 LAN でレンダリングが非常に遅くなることです。シンプルな MJPEG 圧縮 (後で h.264 に切り替えたい) を追加したところ、バイト数が約 330 ~ 360k に減少したことに気付きました。悪い改善ではありません。
受信側 ソケットから受信したバイトを提供するために、カスタム DirectShow ソース ピンを作成して、デコーダーを接続し、ウィンドウにバイトをレンダリングできるようにする必要がありますか?
新しい COM オブジェクトを作成し (約 15 年間それを行っていません!)、登録し、使用/デバッグするのは大変な作業のように思われるので、最初にこれを尋ねたかっただけです。
おそらく別の方法がありますか?
また、それが進むべき道である場合、受信側で SampleGrabber を使用して、圧縮解除されたバイトから BitmapSource を作成する必要がありますか、それとも DirectShow に子ウィンドウを作成させる必要がありますか? つまり、他に複数のプレーヤーが必要で、ソケットに余分なバイトを設定して、彼らがどのテーブル位置にいるかを示します。各位置を順番にレンダリングするにはどうすればよいですか?