89538


動画のループ再生で、ループの瞬間に間が空いて黒くチラついて困ってます。  
Twitterなどで見られるような、滑らかなループ再生を実装したいです。

■私が試したこと  
Delphi10.4 にて、ActiveX から Windows Media Player を利用し  
mp4（H.264-AAC）を、そのままループ再生しました。

[code]

    type
        wmp1: TWindowsMediaPlayer;
    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      if OpenDialog1.Execute then begin
        wmp1.URL := OpenDialog1.FileName;
        wmp1.controls.play;
      end;
    end;
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      wmp1.Align := alClient;
      wmp1.settings.setMode('loop',true);
    end;
    
[/code]

１ループ目は、滑らかに再生されるのですが  
２ループ以降、一瞬真っ暗になってチラつくように再生されます。  
ビルドしてみても変わりませんでした。

■他の動画再生ソフトでは  
同じ動画ファイルを「MPC-BE」というフリーソフトで再生すると、ずっと滑らかにループ再生されます。  
このことから動画ファイル自体には問題はないようです。  
プリインストールソフトウェアの方のWindowsMediaPlayerでループ再生してみると３周に１回くらいの割合でチラつきます。  
なぜチラついたり、滑らかだったり、安定しないのかも疑問です


CC BY-SA 4.0
2022-06-22T12:18:05.247
89525
2022-06-23T03:37:02.837
53184
question
delphi 動画
動画のループ再生を、切れ目なく滑らかにしたい


質問者です。  
その後、自分のパソコンの動画コーデックをすべて削除し、新しいコーデックパックに入れ直しました。  
相変わらずWindowsMediaPlayerではチラつきますが  
Delphiコンポーネントである TMediaPlayer で試したところMP4が再生できるようになり  
そちらではチラつくことなく滑らかにループ再生することが出来ました。

結局、WindowsMediaPlayerがチラつく原因は不明ですが  
そちらは私のプログラムの問題というより、ソフトウェア固有の問題のようですので  
この質問を解決済みとしたいと思います。


CC BY-SA 4.0
2022-06-23T03:37:02.837
89538
2022-06-23T03:37:02.837
53184
89525
answer