기록된 작업
2026년 9월 21일 Agent는 macOS용 rdp-cli 0.1.0 빌드 2026092001로 1440 × 900 RDP 화면의 Windows 11 Shotcut 26.8.1을 조작했습니다. 로컬에서 만든 Mandelbrot 애니메이션을 제공하고, 자르기와 내보내기는 원격 Shotcut이 수행했습니다. 기존 결과를 설명하는 글이며 새 테스트나 모든 영상 편집기 지원의 증거가 아닙니다.
2026년 9월 21일 기록한 영어 인터페이스 원본입니다. 화면을 번역하거나 수정하지 않고 주변 설명만 번역했습니다.
소스 준비와 업로드
아래 Mac 다운로드와 빠른 시작을 사용하세요. 허가된 Windows RDP 서버에 Shotcut이 설치되어 있고 드라이브 리디렉션이 허용되어야 하며 입력과 파일 권한도 필요합니다. 소스를 현재 로컬 디렉터리의 source-motion.mp4로 저장하고 자신의 data.session으로 SESSION을 바꾸세요. 이 영상 테스트의 클라이언트는 macOS이며 다른 클라이언트 플랫폼은 검증 범위가 아닙니다.
rdp-cli files upload --session SESSION --local ./source-motion.mp4 --path source-motion.mp4
반환된 data.transfer_id를 TRANSFER_ID로 보관하고 data.state가 completed가 될 때까지 조회합니다. 소스 크기는 3,319,412바이트입니다. queued는 접수만 뜻합니다. 경로는 해당 세션 교환 드라이브의 상대 경로이며 임의의 Windows 디스크를 가리키지 않습니다.
rdp-cli files status --session SESSION --transfer-id TRANSFER_ID
원격 타임라인을 4초로 자르기
rdp-cli screenshot --session SESSION
화면을 캡처하고 data.path의 PNG를 읽어 data.observation을 보관합니다. 원격 Shotcut에서 리디렉션된 드라이브의 source-motion.mp4를 열고 타임라인에 추가하세요. 8초, 960 × 540, 24 fps인지 확인합니다. 글에 있는 화면 좌표를 복사하지 말고 새 스크린샷에서 실제 대상을 선택하세요.
타임라인 클립을 선택하고 Properties를 엽니다. Duration 필드에 포커스를 맞추고 기존 값을 선택한 뒤 새 캡처로 해당 필드를 확인합니다. 현재 토큰을 OBSERVATION에 넣어 4초를 입력하세요.
결과 복구가 필요할 수 있는 입력은 서로 다른 작업마다 고유한 --request-id를 미리 지정해 저장하고, 예제의 요청 ID를 자신의 값으로 바꾸세요. 오류 JSON을 받았다면 최상위 request_id를 보관하고, 응답이 완전히 사라지고 원래 ID도 저장하지 않았다면 새 ID로 이전 작업을 조회하거나 확인 없이 다시 보내지 마세요.
rdp-cli type --session SESSION --text "00:00:04.000" --observation OBSERVATION --request-id TYPE_REQUEST_ID
rdp-cli screenshot --session SESSION
새 PNG에서 길이 텍스트를 확인하고 그 응답의 data.observation을 NEW_OBSERVATION으로 사용해 확정합니다.
rdp-cli key --session SESSION --keys ENTER --observation NEW_OBSERVATION --request-id COMMIT_REQUEST_ID
rdp-cli screenshot --session SESSION
새 화면에서 클립과 타임라인 모두 4초가 되었는지 확인하세요. 입력 성공 응답은 전송만 증명하며 Shotcut의 수정 수락을 보장하지 않습니다. 좌표, 포커스, 토큰은 자신의 세션에서 가져와야 합니다.
자신의 결과 내보내기와 가져오기
Export 패널에서 편집한 타임라인을 H.264 MP4, 960 × 540, 24 fps로 세션 리디렉션 드라이브의 edited-motion.mp4에 내보냅니다. Jobs의 녹색 완료 표시를 기다리세요. 다운로드한 보관용 참고 파일과 구분하도록 자신의 원격 결과는 로컬의 edited-motion-reproduced.mp4로 가져옵니다.
rdp-cli files download --session SESSION --path edited-motion.mp4 --local ./edited-motion-reproduced.mp4
이번 다운로드의 새 data.transfer_id로 files status를 조회하고 completed 이후 로컬 영상을 여세요. 파일 이름이 보이거나 전송이 대기열에 있다는 사실만으로 완료를 판단하지 않습니다.
영상 검증과 오류 처리
받은 영상을 재생해 잘린 결과를 확인하세요. 로컬에 FFmpeg가 있으면 선택적으로 ffprobe로 디코딩된 영상 프레임 수도 셀 수 있습니다. rdp-cli 실행에 필수인 도구는 아닙니다.
ffprobe -v error -count_frames -select_streams v:0 -show_entries stream=codec_name,width,height,r_frame_rate,nb_read_frames,duration -of json ./edited-motion-reproduced.mp4
보관된 결과는 H.264, 960 × 540, 24 fps, 영상 96프레임, 영상 길이 4.000초였습니다. 인코딩된 오디오 패딩 때문에 컨테이너는 4.010초입니다. 크기 1,442,310바이트, SHA-256은 4c05d91108ee9afaae77aa6a76896f03ee35c9b61de91a3a0b332e905be2ddc5입니다. 이 해시는 보관된 다운로드를 식별하며 모든 재현 결과가 같아야 한다는 뜻은 아닙니다. 인코더 설정과 메타데이터로 바이트가 달라질 수 있습니다. 실제 오디오 청취나 복잡한 프로젝트 성능은 검증하지 않았습니다.
- 잘못된 필드나 오래된 관찰 토큰이면 입력을 멈추고 새 화면을 확인합니다. 일시 정지, 제어권 전환, 재연결 뒤에는 갱신하고 허가된 반환 후에만 재개하세요.
- 내보내기 진행 중 또는
FILE_BUSY이면 Shotcut이 끝날 때까지 기다린 뒤 Jobs와 전송 상태를 확인합니다. 저장 경로가 원격 바탕 화면에만 있지 않고 교환 드라이브에 있는지 확인하세요. - 대상이 이미 있으면 새 로컬 파일 이름을 쓰거나 교체가 의도된 경우에만
--overwrite를 사용하세요. 참고 파일을 실수로 덮어쓰지 마세요. - 입력 시간 초과는 원래 요청 ID로
operations status를 조회하고 화면을 확인한 뒤 재시도를 결정합니다. 응답을 모른다고 수정이 없었다는 뜻은 아닙니다.
