MeiCam SDK For Android  3.10.0
Video recording mode

Meishe SDK currently offers two modes to capture and record video, and the user can choose to use any one as needed. To put it simply, one mode is to use a system capture device to collect signals for video recording. The recorded video has no special effects, and its aspect ratio is not predetermined aspect ratio. The other mode is recording capture video with special effects. When the recording is completed, users will get the predetermined aspect ratio video, and the special effects will also be put into the recorded video.

The two recording modes are implemented as follows: During recording, user select the recording method by the flags parameter in the NvsStreamingContext's startCapturePreview(). For the first recording mode, flags passed in is 0 and

startRecording() is called to start the video recording. In the second recording mode, the flags' value is STREAMING_ENGINE_CAPTURE_FLAG_DONT_USE_SYSTEM_RECORDER, and the video recording is started by the startRecording() interface.

The two mode’s comparison are as follows:
For the first mode, the entire recording process does not add any special effects, and there is no frame loss which is good for users. The disadvantage is that after recording, users can't get the video with the desired aspect ratio (for example, if users want to record 1:1 video, they will get a 9:16 video in the end). To generate a video with beauty effects and desired aspect ratio, users need to set the image width and height, the pixel ratio and other related parameters (for example, if users want to generate a 1:1 video, the image width and height are set to the same value) to create a timeline, then users can add tracks, clips, and corresponding effects, and finally generate the expected video.

The second mode adds beauty effects, video effects and others during the recording process. After the recording is completed, the video with the expected aspect ratio can be obtained as well. Compared to the first mode, there is no further video editing and generation.However, this recording method is highly related with user's mobile phones. Different mobile phones' performance and configurations may have different results when recording with special effects, so it is important to choose the number of special effects to be added. For a low-performance mobile phone, adding too many special effects with complex processing may cause the recorded video to be stuck and frame dropping.In this case, it happens that the video images displayed jump from one frame to another frame in previewing, which is not what we expected. Therefore, be cautious that when using this recording method, please make sure that the special effects processing is completely real-time for the current user's mobile phone, in other words, it can be completely written into the recorded video in real time without causing jamming and frame dropping.

For android mobiles, there may be some problems with android system itself, which may lead to unpredictable problems such as splashing screen and ghosting during recording.