Re: 非同期読み込みの中止について ( No.1 ) |
- 名前:管理人 日時:2016/01/17 15:53
ご返信が遅くなり申し訳ありません
動画の読み込みが長すぎて中止したいほどになることは正常に動作している限りは
あまり無いことだと思うのですが、たろうさんが考えている『一定時間』とは
どのくらいの時間( 何秒くらい )なのでしょうか?
|
Re: 非同期読み込みの中止について ( No.2 ) |
- 名前:たろう 日時:2016/01/17 18:14
ご返信いただきありがとうございます
以前も動画読み込み関連で質問させていただき、結局別でインストールしていた
メディアプレイヤーのせいだったことがあるので、DXライブラリとは関係無い可能性が大きいですが
コーデックが入っていない動画を再生しようとした時に、エラーが帰ってくるまで数十秒かかる事があります。
※ただし同条件でもすぐにエラーが帰ってくる事のほうが多いです。
例えば別ソフトの影響ではあっても、こういう謎のケースが起きた時に、
中止する手段は無いかと思いお聞きしました。
よろしくお願いいたします。
|
Re: 非同期読み込みの中止について ( No.3 ) |
- 名前:管理人 日時:2016/01/17 19:26
|
Re: 非同期読み込みの中止について ( No.4 ) |
- 名前:たろう 日時:2016/01/17 21:21
新しい関数を追加していただきありがとうございます。
すみません追加で質問をお許し下さい。
@動画hdl = LoadGraph( パス1 ) ;としてその後SetASyncLoadFinishDeleteFlag( 動画hdl ) ;
とすればエラーが無かった場合に後で自動的にDeleteGraph(動画hdl);と同じ処理が行われるという
認識でよろしいでしょうか?
A管理人様の仰る通りやはりエラーが返ってこない状態では、次の読み込みも始まらないようでしたが、
先ほど数分待ってもエラーがずっと帰らないのでソフトを停止しようとするとソフトがフリーズして
しまう事がわかりました。これはウィンドウズ側で終了を阻止していると考えたほうが良いでしょうか
特にAはDXライブラリの仕様と関係がある場合だけで結構です。
お手すきの時によろしければご返信下さい。よろしくお願いいたします。
|
Re: 非同期読み込みの中止について ( No.5 ) |
- 名前:管理人 日時:2016/01/17 22:49
> @動画hdl = LoadGraph( パス1 ) ;としてその後SetASyncLoadFinishDeleteFlag( 動画hdl ) ;
> とすればエラーが無かった場合に後で自動的にDeleteGraph(動画hdl);と同じ処理が行われるという
> 認識でよろしいでしょうか?
いえ、SetASyncLoadFinishDeleteFlag( 動画hdl ) ; は
「読み込み時間が長すぎるから、もうエラー扱いにしよう」というタイミングで実行してください
SetASyncLoadFinishDeleteFlag( 動画hdl ) ; を実行した場合は読み込みが成功しても失敗しても、
読み込み完了後に必ずハンドルが削除されてしまいますので
> A管理人様の仰る通りやはりエラーが返ってこない状態では、次の読み込みも始まらないようでしたが、
> 先ほど数分待ってもエラーがずっと帰らないのでソフトを停止しようとするとソフトがフリーズして
> しまう事がわかりました。これはウィンドウズ側で終了を阻止していると考えたほうが良いでしょうか
わかりません、推測ですが、ただでさえ『中々エラーが返ってこない』という異常事態が発生している中で、
更に次のファイルの読み込みを開始しようとしてコーデックのシステムが正常に動作しなくなって
いるのかもしれません
こちらは No.3 でお話した通りDXライブラリ内部ではなくDXライブラリが使用しているOSのAPIの
中で発生している現象なので、DXライブラリ側からはどうすることもできません…
|
Re: 非同期読み込みの中止について ( No.6 ) |
- 名前:たろう(解決) 日時:2016/01/17 23:41
SetASyncLoadFinishDeleteFlagについて理解できました。ありがとうございます。
やはりコーデックの有無を確認せずに読み込もうとする所に問題がありますね^^;
DXライブラリ外で起きている異常であるということで解決をつけさせていただきます。
ありがとうございました。
|
Re: 非同期読み込みの中止について ( No.7 ) |
- 名前:たろう 日時:2016/01/18 00:38
すみません解決をつけておきながら度々失礼します。
今までVer 3.15cを使用していたのですが、このバージョンだとコーデックのない動画を読んだ時、
10%くらいの確率で数十秒の読み込み待ちが発生しますが、大抵は瞬時にエラーが帰って来ます。
念のためVer 3.16も試しましたがこちらも3.15cと同様たまに遅れても100%エラーが返ります。
ですが上でアップしていただいた最新のバージョンだと、90%くらいの確率で永遠にエラーが返ってこないようです。
両方のバージョンを切り替えて何度も確認しましたが。多分間違いないと思います。
※SetASyncLoadFinishDeleteFlag() ;は使用していません
今後最新バージョンが使えなくなると困るので、よろしければご確認いただけますでしょうか?
よろしくお願いいたします。
|
Re: 非同期読み込みの中止について ( No.8 ) |
- 名前:管理人 日時:2016/01/18 00:43
分かりました
すみません、ではたろうさんが試されたコーデックが無くエラーになってしまう動画の
形式を教えて頂けないでしょうか?
現在手元に『コーデックが無くエラーになってしまう動画』が無いもので… (_ _;
|
Re: 非同期読み込みの中止について ( No.9 ) |
- 名前:たろう 日時:2016/01/18 01:19
たびたびすみません
H.264の動画でためしました。
どうも起動してから、コーデックのない動画を一度目に読み込んだ時はエラーがすぐに返って
同じ動画か、もしくは同じ形式の動画を次に読み込むときにエラーが帰ってこないようです。
よろしくお願いいたします。
|
Re: 非同期読み込みの中止について ( No.10 ) |
- 名前:管理人 日時:2016/01/18 02:42
|
Re: 非同期読み込みの中止について ( No.11 ) |
- 名前:たろう(解決) 日時:2016/01/18 02:59
ありがとうございます。
以前のバージョンと同じ動作になることを確認しました。
また色々とお手数をおかけしてしまいました。
失礼致しますm(_ _)m
|