"코드가 터지면" 라는 의미가 뭔가요? 오류 났다는 애긴가요?
MP4 저장을 기준으로 설명 드리면 MP4는 정보(코덱 정보, 데이터의 위치/사이즈)를 가진 부분과 실제 데이터가 들어가는 부분(mdat) 가 있습니다.
안드로이드의 경우 레코딩 시 데이터의 위치, 사이즈 정보를 가진 부분을 비워두고, mdat 부분을 write 하다, 종료시 정보를 파일에 업데이트 하는데,
오류가 발생하면 종료 처리가 안되서, 재생이 안될 수 있습니다.
또한 IFrame 부터 저장을 하며, 코덱 정보를 구해야 하는데, 상황에 따라 이 값을 구하지 못한 상태에서 바로 저장하면 재생이 안되는 경우도 있습니다.