OpenTok composed archives are created by a process which ingests and decodes all the published streams in a session, composes them into a single audio and video stream, re-encodes the composite stream, and then wraps it in a media container.
Basic meta data about an archive is provided via the REST API and REST callback when the archive completes, including the size and duration of the archive, as well as other helpful attributes. Beyond this, configuration of composed archive media encoding itself is described below:
The quality of an archive can be no higher than the quality of the real-time audio and video in a session. Real-time streams, captured and encoded for live video chat, are the inputs to the archiving composer. Given best-case conditions, archive quality will be similar to the audio/video quality of a real-time session, and can degrade as client network issues arise, just as with real-time video chats.
The audio in the composite archive is a single channel encoded as AAC at 128Kbps and a sample rate of 48Khz.
The video in the composite archive is encoded using H.264 Baseline profile at level 3.1. A constant quantization parameter (qp) of 19 is used, yielding variable bitrate video. By default, the output resolution is 640x480 (SD landscape) at 25 frames-per-second. Other resolutions 480x640 (SD portrait), 720x1280 (HD portrait), and 1280x720 (HD landscape) are also supported. The keyframe interval is 10 seconds. Input decoded video streams are sampled with YUV 4:2:0 at 8 bits per component.
Streams are wrapped in an MP4 media container to create an .mp4 file.
Although TokBox does not provide this detailed level of information as part of archive meta data, it can be obtained using a utility for reading audio and video file attributes such as MediaInfo or ffprobe.
At this time, archive composer audio and video encoding settings cannot be customized by developers using OpenTok.