ScreenRecordService

화면 녹화 기능을 제공합니다. \n\n플랫폼별로 지원하는 녹화 모드(ScreenRecordMode)가 다릅니다. Android 환경에서는 ScreenAndGameAudioAndMic 모드로 녹화되고, Windows 환경에서는 ScreenAndMic 모드 녹화됩니다. 환경에 맞지 않는 모드를 선택하면 지원하는 녹화 모드로 화면을 녹화합니다.

# Methods

[{"index":"string FinishRecordAndWait() (ClientOnly) (Yield)","0":"녹화를 종료합니다. 녹화 파일 생성을 완료하면 저장 경로를 반환합니다.StartRecordToFileAndWait()을 사용한 경우의 저장 경로Windows: 내 PC > 동영상 > MapleStory Worlds > 월드 ID > MapleStory Worlds_*.mp4Mac: 홈 > 동영상 > MapleStory Worlds > 월드 ID > MapleStory Worlds_*.mp4Android: 내장 메모리 > Android > data > com.nexon.mod > files > MapleStory Worlds > 월드 ID > MapleStoryWorlds_*.mp4iOS: 파일 > 나의 iPhone > MaplestoryWorlds > 월드 ID > MapleStory Worlds_*.mp4StartRecordToPhotoLibraryAndWait()을 사용한 경우의 저장 경로Windows: 내 PC > 동영상 > MapleStory Worlds> 월드 ID > MapleStory Worlds_*.mp4Mac: 홈 > 동영상> MapleStory Worlds > 월드 ID > MaplestoryWorlds_*.mp4Android: 사진 갤러리iOS: 사진"}]

[{"index":"table GetMicrophoneDevicesAndWait() (ClientOnly) (Yield)","0":"사용 가능한 마이크 기기 정보를 반환합니다."}]

[{"index":"int32 GetMicrophoneIndexForRecording() (ClientOnly)","0":"현재 녹화에 사용 중인 마이크 기기의 인덱스를 반환합니다."}]

[{"index":"boolean IsRecording() (ClientOnly)","0":"현재 녹화 중인지를 반환합니다."}]

[{"index":"int32 RemainRecordTime() (ClientOnly)","0":"남은 녹화 시간을 반환합니다."}]

[{"index":"void SetMicrophoneIndexForRecording(int32 newIndex) (ClientOnly)","0":"녹화에 사용할 마이크 기기를 설정합니다. newIndex는 설정할 마이크의 인덱스입니다."}]

[{"index":"ScreenRecordStartResult StartRecordToFileAndWait(ScreenRecordMode recordMode, boolean excludeSystemUI = false, func finishRecordCallback = nil) (ClientOnly) (Yield)","0":"녹화를 시작합니다. MobileShareService와 연동해 녹화 영상을 공유할 때 사용합니다. 최대 녹화 가능 시간은 2분입니다. 녹화가 종료되면 영상이 파일 보관함에 저장되고, finishRecordCallback으로 전달된 함수가 호출됩니다. finishRecordCallback의 매개 변수는 저장 경로입니다.Windows, Mac 환경에서 이 함수를 호출하면 StartRecordToPhotoLibraryAndWait(ScreenRecordMode, boolean)가 대신 호출됩니다."}]

[]

##### inherited from Service:

[{"index":"EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)","0":"이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다."}]

[{"index":"EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)","0":"이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다."}]

[{"index":"boolean DisconnectEvent(string key, EventHandlerBase eventHandler)","0":"타입의 이름이 key인 이벤트와 핸들러와의 이벤트 연결을 끊습니다."}]

[{"index":"boolean DisconnectEvent(Type eventType, EventHandlerBase eventHandler)","0":"타입이 eventType인 이벤트와 핸들러와의 연결을 끊습니다."}]

[{"index":"void SendEvent(EventType sendEvent)","0":"이벤트를 발생시킵니다."}]

# 주의사항

녹화 시 플랫폼별로 지원되지 않는 녹화 모드가 있습니다.

Android의 경우 ScreenRecordMode.ScreenAndMic 선택 시 자동으로 ScreenAndGameAudioAndMic로 Fallback됩니다. 윈도우의 경우 ScreenRecordMode.ScreenAndGameAudioAndMic 선택 시 자동으로 ScreenAndMic로 Fallback됩니다.

[{"녹화 모드":"ScreenOnly","설명":"화면만 녹화","Windows\/macOS":"O","iOS":"O","Android":"O"},{"녹화 모드":"ScreenAndGameAudio","설명":"화면 + 게임 소리 녹화","Windows\/macOS":"O","iOS":"O","Android":"O"},{"녹화 모드":"ScreenAndMic","설명":"화면 + 마이크 녹화","Windows\/macOS":"O","iOS":"O","Android":"X"},{"녹화 모드":"ScreenAndGameAudioAndMic","설명":"화면 + 게임 소리 + 마이크 녹화","Windows\/macOS":"X","iOS":"O","Android":"O"}]

# SeeAlso

  * MobileShareService
  * [플레이 화면 녹화 및 공유하기](/docs?postId=997)