DirectShowとはマルチメディアの再生、記録を行うための仕組みで、Microsoftが策定しWindowsに同梱されています。 ここでLionSleepTonight.flvというファイルを例にとって、このファイルが再生される仕組みをみてみましょう。 ファイルをHDDから読み取ったら次の仕事はそれを動画と音声に分離することです。この仕事を行うプログラムを「スプリッタ」と呼びます。スプリッタは圧縮された動画と音声を各々次のプログラムに渡します。 圧縮を解除するプログラムを「デコーダ」と呼びます。ffdshowは主にこの部分を担当するプログラムです。 圧縮を解除したら次は動画や音声をハードウエアを使って出力します。この仕事を担当するプログラムを「レンダラ」と呼びます。 このようにDirectShowでは複数のプログラムが協力し合って一つのファイルを再生します。これらのプログラムを「フィル
最終更新 2010年 4月 24日(土曜日) 13:24 SimpleCapture040 SimpleCapture030 の記事でで扱かった内容、ライブラリ作成、プラグイン作成までを纏めました。さらに OtXXXの汎用性が高いクラスは Libsへ移しました。 また、実用性を少し高めるために DirectShow を使って 画像キャプチャー出来る用にしました。 DirectShowはいろいろな方がWeb上に書いているのを参考にさせていただきました。ここでは、Qtでの表示と画像取得後はOpenCVと関連させて使いたいと考えて、ここで示すクラスにまとめました。 OpenCVには、videoInput.h/lib というファイルがあり directShowを使う方法が有ると期待していますが、この使い方が分かっていません。 videoInput からのアプローチも有ると思います。こちらの使い方が
DirectShowを使ってローカルマシン内にある映像ファイルを再生する方法を説明しましたが、同様の方法でネットワークからダウンロードしながら再生を行うコードも簡単に作成できます。 ここでいうダウンロードとは、HTTPでのダウンロードです。 ここでは、DirectShowを使ってHTTP経由でMPEGファイルをダウンロードしながら再生する方法の説明をしたいと思います。 (注意)ここの例では、サンプルを簡潔にするためにエラー処理を書いていません。 とりあえず、コードを書いてみる まず、何も考えずに以下のコードを書いてみましょう。 「http://localhost/butterfly.mpg」というURLに置いてあるMPEGファイルを再生します。 「localhost」は自分のマシンを表しています。 下記サンプルコードを試すために、ローカルマシンでapache(フリーのWWWサーバ)を動かし
トップページに戻る DirectShowの概要 DirectShowはWindwows環境でマルチメディアの再生とキャプチャーを行うための技術で、具体的にはAVI MPEG、ASF、MP3などの動画や音声の再生、フォーマットの変換、キャプチャーを行うことが出来ます。Windowsパソコンのビデオやオーディオのハードウエアーには依存しないようになっております。つまりアクセラレーション機能が使用可能なら利用し、そうでないシステムもサポートします。DirectShowを理解するには「フィルター」というソフトウエアーコンポーネントを知る必要がある。以下にその仕組みについてと、ストリーミング再生用のプレーヤのプログラムについて述べます。 DirectShowの仕組み DirectShowはいろいろな機能を持ったフィルターの集合体といえます。たとえば、MPEGの動画ファイルを読み込む「ソースフィル
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Mic
USBカメラから撮った映像をiPadのSafariで再生できるようにMP4にエンコードしたい。だけれども、AVIとかWMVとかで記録した後でmp4にエンコードするのは面倒くさい。 だからUSBカメラからそのままMP4に記録したい、というわけで頑張りました。久方ぶりに訳のわからないMicroSoftワールドに突入。ここんとこブックマークがDirectShowって出てたのは、これ作ってたからです。 COM嫌い! はじめに 手順としては、 GraphEditをインストール DirectShow Filterをいろいろ入れる DirectShow Filter Toolをインストールする 映像をh264にエンコードできるDirectShow Filterを探す 音声をAAC-LCにエンコードできるDirectShow Filterを探す mp4のMuxができるDirectShow Filterを探
Sony DFW-VL500(IEEE1394) + DirectShow(Windows) ・・・で,どうやって? (注意)下記ドキュメントは2001年時点での情報です.例えば DirectShowは 2006年現在ではDirectXではなく Platform SDK ("Platform SDK" + "Web Install"などでウェブ全体からサーチ) に入っていたりします. ん?まてまて.そもそも,VCすらほとんど使ったこと無いやん. DirectX と ActiveX の区別がついたのがつい最近・・・香港映画との区別もつ かなかった三年前に比べれば,えらい進歩やね じゃあなんでDirectShowをやるの?・・・そこにDirectShowがあるから というわけで,あまり無理せんとできるだけシンプルに理解する.サンプルコー ドは main関数を用いたコンソールアプリケーションとし
1.フィルタの追加削除で切り替える方法 ・フィルタグラフを停止する ・削除したいフィルタにつながっているピンを切断する ・フィルタを削除する 以上の手順でできます 使用するインターフェイスは IMediaControl::Stop IPin::Disconnect or IFilterGraph::Disconnect IFilterGraph::RemoveFilter です IFileSinkFilterは保存ファイル名の設定などを行うインターフェイスです。 操作してもフィルタグラフの状態は変わりません 2.プレビューとキャプチャのやり方を変更する ICaptureGraphBuilderインターフェイスを使用するといいと思います ICaptureGraphBuilder2::RenderStream ICaptureGraphBuilder2::ControlStream あたりを使
ホーム < ゲームつくろー! < DirectX技術編 < 音声付き動画をフルスクリーンで再生する その5 音声付き動画をフルスクリーンで再生する 前章までは簡易的なプログラムにはじまり、DirectShowの概要、GraphEditによるDirectShowの動作テストを説明してきました。いよいよこの章からDirectShowを用いたプログラムを実施していきます。DirectShowをゲームに適用する機会は、ゲーム全体の規模から見るとそれほど多くはありませんが、動画再生を行うにあたっては話は別で、最強の威力を発揮します。もちろん、Windows APIでも動画再生は可能ですが、MPEGやその他のフォーマットに対応させるには大変な苦労を強いられるでしょう。その点DirectShowはフィルタがフォーマット差を解消してくれるので安心してプログラムを組むことが出来ます。 この章では、誰もがきっ
土井研top/自習室/ DiretcX DirectShowを使った、ビデオデバイスからのキャプチャ 最も簡単版 DirectShowでは CaptureGraphBuilder2 コンポーネントを使って ビデオデバイスからのキャプチャプログラムを作ることができます。 この場合、FilterGraph コンポーネントはCaptureGraphBuilder2の 配下で動作することになります。CaptureGraphBuilder2 配下の FilterGraph にグラバを組み込むことによって、キャプチャ中のフレームデータを直接、 DIBフォーマットのデータとして得ることができます。 720*480のDVフォーマットのピクセルは縦横比が1:0.9なので1:1のBMPとして表示すると 若干横長表示になります。 注:サンプル版なので、無駄な部分が多々あります、了承
「ウェブリブログ」は 2023年1月31日 をもちましてサービス提供を終了いたしました。 2004年3月のサービス開始より19年近くもの間、沢山の皆さまにご愛用いただきましたことを心よりお礼申し上げます。今後とも、BIGLOBEをご愛顧賜りますよう、よろしくお願い申し上げます。 ※引っ越し先ブログへのリダイレクトサービスは2024年1月31日で終了いたしました。 BIGLOBEのサービス一覧
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く