17

メインのUIプロセスに画像データを提供するバックグラウンドプロセスとしてffplayを実行しています。SDL_VIDEODRIVER = dummySDLウィンドウに表示されるffplayビデオを抑制するために「」を設定しました。

問題は、ビデオ出力ウィンドウが表示されていない場合でも、ffplayプロセスがアプリケーションウィンドウ(ドック、CMD + TABエントリなど)として表示されることです。どうすればそれを回避できますか?

4

2 に答える 2

18

このオプション-nodispは私にとってはうまく機能しました(と一緒に-autoexit)。

Ubuntu 18.04、ffmpeg 3.4.6でテスト済み:

ffplay -f lavfi -i "sine=frequency=1000:duration=5" -autoexit -nodisp

出典:[FFmpeg-user]オーディオのみのffplay

于 2018-11-14T08:38:45.630 に答える
0

ドックエントリはSDLMain.mによって追加されていましたが、Macで再生するにはコンパイルする必要があります。ffplaySDLMain.mの次の行にコメントした後、ffplayはウィンドウのないプロセスとして実行されています。

//#ifdef SDL_USE_CPS
//    {
//        CPSProcessSerNum PSN;
//        /* Tell the dock about us */
//        if (!CPSGetCurrentProcess(&PSN))
//            if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103))
//                if (!CPSSetFrontProcess(&PSN))
//                    [NSApplication sharedApplication];
//    }
//#endif /* SDL_USE_CPS */

/* Set up the menubar */
//[NSApp setMainMenu:[[NSMenu alloc] init]];
//setApplicationMenu();
//setupWindowMenu();

編集他のプラットフォームではSDLMain.mラッパーが必要ないため、これはMacにのみ影響しますint main()

于 2012-08-07T10:38:05.107 に答える