0

私はターミナルとクイックタイムに基づいたビデオストレススクリプトに取り組んできました.クイックタイムで複数のビデオを再生する際に特定の問題が発生しています.

現在、スクリプトは最大 12 個のビデオを一度に再生することができ、それらすべてを 1 つのデスクトップに整理しますが、私がやりたいのは、それらを全画面表示 (プレゼンテーション モード) で開いてから表示するコマンドをループすることです。アウト。このプロセスは、グラフィックス プロセッサ、RAM、およびプロセッサに大きな負荷をかけるため、実行したいと考えています。私のコードはどちらも非効率的で、機能しません。ウィンドウ ID を使用して、それらを制御するために使用する ID のマトリックスを取得することを考えましたが、それを理解することはできません。

どのようにここに私のスクリプトの単純化されたバージョンがあります。これはフルスクリーン/非フルスクリーン モードです。現在、これらのビデオの一部は表示されていませんが、すべてではなく、一貫した量ではありません (1 の場合もあれば、2 または 3 の場合もあります)。少しの助けやアドバイスをいただければ幸いです。

tell application "QuickTime Player"
set open_windows to (every window where visible is true)
set n to count of open_windows
repeat n times
    set presenting of document 1 to true
    delay 5

    tell application "Finder"
        activate
    end tell
    delay 1
end repeat

--repeat n times
try
    set presenting of document 2 to false
    delay 1

    tell application "Finder"
        activate
    end tell
    delay 1
    --end repeat
    set presenting of document 3 to false
    delay 1

    tell application "Finder"
        activate
    end tell
    delay 1
end try

end tell
4

1 に答える 1

0

これは時々私のためにウィンドウをスキップすることもありました:

tell application "QuickTime Player"
    repeat with d in documents
        tell d to set presenting to true
        delay 3
    end repeat
end tell

すべてのウィンドウを複数回ループするだけです。

tell application "QuickTime Player"
    repeat while presenting of documents contains false
        repeat with d in (documents where presenting is false)
            tell d to set presenting to true
            delay 3
        end repeat
    end repeat
end tell

次のような方法でドキュメントを参照できます。

tell application "QuickTime Player"
    repeat with w in windows
        set i to id of w
        tell document of w to set presenting to true
    end repeat
    window 1 where id is i
end tell
于 2013-05-09T10:31:13.603 に答える