C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: MediaPlayerで読み込みの先頭で動画がチラつきます


(過去ログ 120 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■70406 / inTopicNo.1)  MediaPlayerで読み込みの先頭で動画がチラつきます
  
□投稿者/ 窮地のQちゃん (1回)-(2014/03/20(Thu) 22:11:47)

分類:[.NET 全般] 

お世話になります。

C#でWindowsMediaPlayerを使っております。
動画読込のタイミングで画面のチラつきがあり大変困っています。。

プログラムとしては複数の動画を
this.mWmPlayer = new AxWMPLib.AxWindowsMediaPlayer();
this.mWmPlayList = mWmPlayer.playlistCollection.newPlaylist("bar");
foreach (string movie_file_wmv in array)
{
this.mWmPlayList.appendItem(mWmPlayer.newMedia(movie_file_wmv));
}

mWmPlayer.Ctlcontrols.play();

というように連続でループ再生させています。
このこと自体は問題ないのですが、
各動画が切り替わる瞬間に、一度だけ「チラリ」となります。

チラリとはどんな感じか表現が難しいのですが、
動画の先頭が表示された次に、まばたきしたように一瞬黒画面が表示され、
続けて正常に表示されます。

そしてまた次の動画のときに同じようにチラリとなります。

このチラリを抑える方法を
どなたかアドバイスいただけませんでしょうか?

環境
Windows 7
Windows MediaPlayer V12

Visual Studio Express 2010

どうぞよろしくお願いします。



引用返信 編集キー/
■70412 / inTopicNo.2)  Re[1]: MediaPlayerで読み込みの先頭で動画がチラつきます
□投稿者/ 名無しのプログラマ (1回)-(2014/03/21(Fri) 08:29:13)
自前で動画を再生表示するプログラムをC++で作成したことがありますが、Windowsではご相談の
ような「ノウハウ」は一切非公開です。
動画では連結部分でのフレームの時間的非連続でそのようなチラつきが発生しますが、どのようにし
たらチラつきが発生しないのかはSDKには何も書いてありません。
C++では動画デコード描画以外、ほとんどの処理を自前で制御できますから前の動画が再生終了
したら表示ウィンドウを自前でクリアして次の動画の1フレーム目一瞬再生を停止させた後、再
生を再開させればちらつきは発生しないと思われます。

プログラミングが面倒ならAviSynthを導入して動画の連結をAviSynthのスクリプトで記述し、その
スクリプトをプログラムで再生すれば連結部分の時間的不連続はAviSynthが解決(要するに再生
プログラムからは1つの連続動画にみえる)ので発生しません。

引用返信 編集キー/
■70420 / inTopicNo.3)  Re[2]: MediaPlayerで読み込みの先頭で動画がチラつきます
□投稿者/ 窮地のQちゃん (2回)-(2014/03/21(Fri) 15:55:10)
No70412 (名無しのプログラマ さん) に返信
> 自前で動画を再生表示するプログラムをC++で作成したことがありますが、Windowsではご相談の
> ような「ノウハウ」は一切非公開です。
> 動画では連結部分でのフレームの時間的非連続でそのようなチラつきが発生しますが、どのようにし
> たらチラつきが発生しないのかはSDKには何も書いてありません。
> C++では動画デコード描画以外、ほとんどの処理を自前で制御できますから前の動画が再生終了
> したら表示ウィンドウを自前でクリアして次の動画の1フレーム目一瞬再生を停止させた後、再
> 生を再開させればちらつきは発生しないと思われます。
>
> プログラミングが面倒ならAviSynthを導入して動画の連結をAviSynthのスクリプトで記述し、その
> スクリプトをプログラムで再生すれば連結部分の時間的不連続はAviSynthが解決(要するに再生
> プログラムからは1つの連続動画にみえる)ので発生しません。
>

ご返信ありがとうございました。
AviSynth はお恥ずかしながら初めて知りました。

いただいたアドバイスをヒントに、
ffmpegで動画を連結することにします。

どうやってもチラつきは防げなさそうです。。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -