Directshowを用いて動画を再生しようと試みています。
Direct sdkとplarformの両方を入れて、インクルードパスとライブラリパスを通しました。
ビルドしてもエラーは無いので某所のシンプルなソースでデバッグ無しで開始をクリック。
すると、再生が終わらないようにメッセージBlock Executionが表示されるものの肝心の動画が映りません。
プログラムはしっかりと動いているはずですが、、
動画aviはMSMPEG4V2です。Directshowのコーデックで動くとのことです。何がおかしいのか、さっぱりです。
環境はwindowsXP visual studio2005
DirectxSDK2008
microsoft platform(しっかりDirectshowフォルダは存在します)
ここまで来たなら設定ミスは無いとは思いますが、(設定ミスがあれば、開けない等エラーが出ると思いますので)
どうかお願い致します。
サンプルソース
↓
#include <stdio.h>
#include <dshow.h>
#defineFILENAME L"C:\\Documents and Settings\\057104\\My Documents\\homerun2.avi"
int
main()
{
IGraphBuilder *pGraphBuilder;
IMediaControl *pMediaControl;
// COMを初期化
CoInitialize(NULL);
// FilterGraphを生成
CoCreateInstance(CLSID_FilterGraph,
NULL,
CLSCTX_INPROC,
IID_IGraphBuilder,
(LPVOID *)&pGraphBuilder);
// MediaControlインターフェース取得
pGraphBuilder->QueryInterface(IID_IMediaControl,
(LPVOID *)&pMediaControl);
// Graphを生成
pMediaControl->RenderFile(FILENAME);
// 再生開始
pMediaControl->Run();
// 再生中にプログラムが終わってしまわないように
MessageBox(NULL,
"Block Execution",
"Block",
MB_OK);
// 資源を解放
pMediaControl->Release();
pGraphBuilder->Release();
// COM終了
CoUninitialize();
return 0;
}
No.1ベストアンサー
- 回答日時:
まずは自分で調べられるところから
調べてみてはどうでしょう?
>pMediaControl->RenderFile(FILENAME);
読み込みは成功しているの?
>pMediaControl->Run();
本当に再生開始できる状態なの?
Runの実行結果はどうなっているの?
参考URL:http://msdn.microsoft.com/ja-jp/library/cc356921 …
No.4
- 回答日時:
こんばんは。
以下で再生出来ませんか。// Graphを生成
//↓これはVisualBasic用だそうです
//pMediaControl->RenderFile(FILENAME);
//↓こっちがC++用
pGraphBuilder->RenderFile(FILENAME, NULL);
http://msdn.microsoft.com/ja-jp/library/cc356929 …
No.3
- 回答日時:
調べたら
pMediaControl->RenderFile(FILENAME);
の引数はBSTR(=WCHAR*)のようですね
ということで#2の回答は間違いです
#define FILENAME L"C:\\Documents and Settings\\057104\\My Documents\\homerun2.avi"
のままでいいようです
No.2
- 回答日時:
MessageBox(NULL,
"Block Execution",
"Block",
MB_OK);
これでエラーが出ないのならマルチバイトコードでコンパイルしているということになりますね
それなら
#define FILENAME L"C:\\Documents and Settings\\057104\\My Documents\\homerun2.avi"
は変ですね。
pMediaControl->RenderFile(FILENAME);
が失敗してるのだと思います。
どちらの環境でも大丈夫なように
#define FILENAME TEXT("C:\\Documents and Settings\\057104\\My Documents\\homerun2.avi")
と
MessageBox(NULL,
TEXT("Block Execution"),
TEXT("Block"),
MB_OK);
にしたほうがいいでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 音楽・動画 ノートパソコンで動画再生の設定の変更について*長文ですが何卒宜しくお願い致します。 3 2022/10/18 12:24
- 防犯カメラ・監視カメラ・小型カメラ MP4の再生 3 2022/05/03 18:10
- デスクトップパソコン 「自動修復でPCを修復できませんでした」と表示されPCが起動しないのですが対処法はありますか? 5 2022/05/13 09:16
- 防犯カメラ・監視カメラ・小型カメラ VHSを高画質な動画ファイルにしたいです。 3 2022/05/06 12:08
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Windows 10 windows10のクリーンインストールが完了出来ない 2 2022/06/04 13:33
- フリーソフト streemfab(無料版)について 4 2022/12/24 13:13
- その他(ブラウザ) IE・edgeで日増しに観られるサイトが減ってくる。 1 2022/10/04 22:40
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パソコン上で4K動画を4k非対...
-
this AVについて
-
iPadで、YouTubeを止めずに別の...
-
YouTubeについてです。 2〜3日...
-
パワーポイントで動画を繰り返...
-
xvideosが再生できない
-
PCの画面共有で映画を見る方法
-
avgleが再生できません…
-
PowerDVD19ULTRAからYouTube動...
-
YouTubeで、前に再生した動画は...
-
PS4でBlu-Rayを再生しVitaに転...
-
Firefox 拡張機能 でYouTubeか...
-
PowerDVDで再生したときだけエ...
-
動画の再生がカクカクする
-
スマホで撮った8Kの動画をPCで...
-
You tubeなどでダウンロードし...
-
最近YouTubeを見てて、自動再生...
-
Windowsエクスプローラーで動画...
-
一昨日の夜中ぐらいから私の運...
-
ユーチューブ再生ボタンが表示...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
パソコン上で4K動画を4k非対...
-
this AVについて
-
YouTubeについてです。 2〜3日...
-
PCの画面共有で映画を見る方法
-
iPadで、YouTubeを止めずに別の...
-
xvideosが再生できない
-
ユーチューブのショート動画っ...
-
教えて下さい: 外付HDに保存さ...
-
うずらの卵を食べて亡くなられ...
-
パワーポイントで動画を繰り返...
-
【是非回答お願いします】人気...
-
PowerDVDで再生したときだけエ...
-
You tubeなどでダウンロードし...
-
iPhoneSEユーザーです。寝る前...
-
動画ダウンロードの際の HD と ...
-
高画質の動画再生で色が変わる...
-
【ユーチューブで画面が真っ白】
-
xvideoについて。 Androidスマ...
-
U-NEXTで動画を続きから再生を...
-
Tver アンケートに回答しても視...
おすすめ情報