start()开始录制
前面调用了 mRecorder.prepare(); ,准备好了一切之后,现在调用start()函数,开始录制。
mRecorder.start();
status_t StagefrightRecorder::start() {
ALOGV("start");
if (mOutputFd < 0) {
ALOGE("Output file descriptor is invalid");
return INVALID_OPERATION;
}
status_t status = OK;
//如果mVideoSource==VIDEO_SOURCE_SURFACE,则*mediaSource = NULL;
if (mVideoSource != VIDEO_SOURCE_SURFACE) {
status = prepareInternal();
if (status != OK) {
return status;
}
}
//当然mWriter不能为NULL
if (mWriter == NULL) {
ALOGE("File writer is not avaialble");
return UNKNOWN_ERROR;
}
switch (mOutputFormat) {
.....
case OUTPUT_FORMAT_AMR_NB:

本文详细探讨了在Android N中使用MediaRecorder的StagefrightRecorder进行TS流录制的过程,重点关注start()函数的调用,包括mWriter的start()以及MediaCodecSource的start流程。在start()后,将涉及audioSource和CameraSource的启动,这些将在后续章节中进一步阐述。
最低0.47元/天 解锁文章
3393

被折叠的 条评论
为什么被折叠?



