
녹화 버튼 뒤에서 일어나는 일: LINE 프리미엄콜 개발기
두줄요약
LINE Android의 프리미엄콜에서 음성·영상 전환에도 단일 녹화 파일을 유지하는 구조를 소개했습니다. 온디바이스 STT의 스트림 분리와 비동기 처리, 종료 후 마무리 절차를 설명합니다.
구조와 흐름
- 음성 통화부터 오디오·비디오 트랙을 함께 준비하고, 프로필·통화 정보 기반 프레임을 비디오 트랙에 기록
- 영상 통화 전환 후 같은 녹화 세션과 파일을 유지한 채 프로필 화면을 실제 로컬·원격 영상으로 교체
- 입력별 실제 프레임 도착 여부에 따라 준비된 영상부터 반영하고, 미준비 영역에는 프로필 화면 유지
선택 이유
- 음성·영상 구간 분리 저장과 사후 병합 대신 하나의 기록 파일로 통화 전환 흐름 보존
- 통화 UI 캡처 대신 VoIP 엔진의 영상 입력으로 별도 녹화 화면 구성
- 서버 전송 없이 자체 온디바이스 모델로 음성 인식 처리
성능/운영 포인트
- 통화 재생용 고음질 스트림과 녹음·STT용 다운샘플링 최적화 스트림의 분리
- 음성 입력 수신과 STT 추론의 비동기 연결, VAD 기반 무음 구간 인식 작업 축소
- 입력 해상도 변화에도 최종 녹화 프레임 크기 유지와 렌더러 재연결
주의할 점
- 통화 상태 변경과 실제 로컬·원격 영상 프레임 도착 시점의 분리 관리
- 녹음에는 침묵 구간 보존, STT에는 발화 구간만 전달하는 목적별 처리
- 통화 종료 후 잔여 미디어 처리·STT 작업 완료, 시간 제한과 결과 상태의 개별 관리



