Skip to content

Desuq Cafe

문서 메뉴

이 번역은 최신 영어 원문보다 늦을 수 있습니다. 영어 버전 보기

요청 배치 처리

여러 OBS 명령을 함께 전송해야 할 때, FOBSRequestBatchBuilder 플루언트 API는 이를 단일 배치 요청으로 묶어줍니다. 이는 각 요청을 개별적으로 전송하는 것보다 효율적이며, 실행 순서와 오류 처리 방식을 제어할 수 있습니다.

기본 사용법

원하는 명령을 체인으로 연결하고 Execute()를 호출합니다.

FOBSRequestBatchBuilder::Create(OBSClient)
    .SetCurrentProgramScene("Gaming")
    .StartRecord()
    .SetInputMute("Mic/Aux", false)
    .Execute();

콜백 및 옵션과 함께 사용

더 세밀하게 제어하려면 원시 요청을 추가하고, 실행 옵션을 설정하며, 콜백에서 요청별 결과를 받을 수 있습니다.

FOBSRequestBatchBuilder::Create(OBSClient)
    .AddRequest("GetSceneList")
    .AddRequest("GetInputList")
    .HaltOnFailure(true)
    .SetExecutionType(EOBSRequestBatchExecutionType::SerialRealtime)
    .ExecuteWithCallback([](const FOBSBatchResult& Result) {
        for (const auto& SingleResult : Result.Results)
        {
            // Handle individual results
        }
    });

실행 유형

EOBSRequestBatchExecutionType은 OBS가 배치를 처리하는 방식을 제어합니다.

유형설명
SerialRealtime요청을 순서대로 하나씩 즉시 처리
SerialFrame요청을 순서대로 하나씩 프레임 경계에서 처리
Parallel요청을 동시에 처리(순서 보장 없음)

배치 처리의 의미

참고: 배치는 단일 전송과 다른 의미를 가집니다. OBS는 결과 배열을 포함하는 하나의 통합 결과를 반환하며, 각 항목에는 고유한 성공 여부/코드/설명이 있습니다. 배치 내에서는 요청별 타임아웃이 없습니다.

참고