Home | History | Annotate | Download | only in src

Lines Matching refs:ch_obj

113 int32_t mm_channel_superbuf_comp_and_enqueue(mm_channel_t *ch_obj,
139 mm_channel_t * ch_obj,
145 if ((MM_STREAM_STATE_NOTUSED != ch_obj->streams[i].state) &&
146 (handler == ch_obj->streams[i].my_hdl)) {
147 s_obj = &ch_obj->streams[i];
207 mm_channel_t *ch_obj = (mm_channel_t *)user_data;
210 if (NULL == ch_obj) {
216 ch_obj,
217 &ch_obj->bundle.superbuf_queue,
221 ch_obj->pending_cnt = cmd_cb->u.req_buf.num_buf_requested;
222 ch_obj->pending_retro_cnt = cmd_cb->u.req_buf.num_retro_buf_requested;
223 ch_obj->bWaitForPrepSnapshotDone = 0;
226 __func__, ch_obj->pending_cnt, ch_obj->pending_retro_cnt);
227 if (!ch_obj->pending_cnt || (ch_obj->pending_retro_cnt > ch_obj->pending_cnt)) {
228 ch_obj->pending_retro_cnt = ch_obj->pending_cnt;
230 if (ch_obj->pending_retro_cnt > 0) {
233 ch_obj->needLEDFlash = 0;
235 ch_obj->stopZslSnapshot = 0;
236 ch_obj->unLockAEC = 0;
238 mm_channel_superbuf_skip(ch_obj, &ch_obj->bundle.superbuf_queue);
241 ch_obj->manualZSLSnapshot = TRUE;
242 mm_camera_start_zsl_snapshot(ch_obj->cam_obj);
244 ch_obj->manualZSLSnapshot = FALSE;
245 mm_camera_stop_zsl_snapshot(ch_obj->cam_obj);
247 ch_obj->bundle.superbuf_queue.attr.notify_mode = cmd_cb->u.notify_mode;
249 ch_obj->bundle.superbuf_queue.expected_frame_id = cmd_cb->u.frame_idx;
250 mm_channel_superbuf_flush(ch_obj,
251 &ch_obj->bundle.superbuf_queue, CAM_STREAM_TYPE_DEFAULT);
261 mm_channel_superbuf_flush(ch_obj,
262 &ch_obj->bundle.superbuf_queue, CAM_STREAM_TYPE_DEFAULT);
267 ch_obj->bracketingState = MM_CHANNEL_BRACKETING_STATE_WAIT_GOOD_FRAME_IDX;
269 ch_obj->bracketingState = MM_CHANNEL_BRACKETING_STATE_OFF;
277 mm_channel_superbuf_flush(ch_obj,
278 &ch_obj->bundle.superbuf_queue, CAM_STREAM_TYPE_DEFAULT);
283 ch_obj->isFlashBracketingEnabled = TRUE;
285 ch_obj->isFlashBracketingEnabled = FALSE;
293 mm_channel_superbuf_flush(ch_obj,
294 &ch_obj->bundle.superbuf_queue, CAM_STREAM_TYPE_DEFAULT);
299 ch_obj->isZoom1xFrameRequested = TRUE;
301 ch_obj->isZoom1xFrameRequested = FALSE;
310 mm_channel_superbuf_flush(ch_obj,
311 &ch_obj->bundle.superbuf_queue, CAM_STREAM_TYPE_DEFAULT);
313 ch_obj->frame_config =
316 __func__, __LINE__, ch_obj->frame_config->num_batch);
317 for (i = 0; i < ch_obj->frame_config->num_batch; i++) {
319 i,ch_obj->frame_config->configs[i].type);
322 ch_obj->frame_config = NULL;
324 ch_obj->cur_capture_idx = 0;
332 notify_mode = ch_obj->bundle.superbuf_queue.attr.notify_mode;
334 if ((ch_obj->pending_cnt > 0)
335 && (ch_obj->needLEDFlash == TRUE ||
336 MM_CHANNEL_BRACKETING_STATE_OFF != ch_obj->bracketingState)
337 && (ch_obj->manualZSLSnapshot == FALSE)
338 && ch_obj->startZSlSnapshotCalled == FALSE) {
341 mm_camera_start_zsl_snapshot(ch_obj->cam_obj);
342 ch_obj->startZSlSnapshotCalled = TRUE;
343 ch_obj->burstSnapNum = ch_obj->pending_cnt;
344 ch_obj->bWaitForPrepSnapshotDone = 0;
345 } else if (((ch_obj->pending_cnt == 0) || (ch_obj->stopZslSnapshot == 1))
346 && (ch_obj->manualZSLSnapshot == FALSE)
347 && (ch_obj->startZSlSnapshotCalled == TRUE)) {
349 mm_camera_stop_zsl_snapshot(ch_obj->cam_obj);
351 ch_obj->startZSlSnapshotCalled = FALSE;
352 ch_obj->needLEDFlash = FALSE;
353 ch_obj->burstSnapNum = 0;
354 ch_obj->stopZslSnapshot = 0;
355 ch_obj->bWaitForPrepSnapshotDone = 0;
356 ch_obj->unLockAEC = 1;
357 ch_obj
360 mm_channel_superbuf_bufdone_overflow(ch_obj, &ch_obj->bundle.superbuf_queue);
363 __func__, ch_obj->pending_cnt);
367 __func__, ch_obj->pending_cnt, ch_obj->pending_retro_cnt);
368 while (((ch_obj->pending_cnt > 0) ||
370 (!ch_obj->bWaitForPrepSnapshotDone)) {
373 __func__, ch_obj->pending_cnt, ch_obj->pending_retro_cnt);
375 node = mm_channel_superbuf_dequeue(&ch_obj->bundle.superbuf_queue);
380 ch_obj->pending_cnt--;
381 if (ch_obj->pending_retro_cnt > 0) {
382 if (ch_obj->pending_retro_cnt == 1) {
383 ch_obj->bWaitForPrepSnapshotDone = 1;
387 ch_obj->pending_retro_cnt--;
390 "pending_cnt=%d", __func__, ch_obj->pending_cnt);
392 if (((ch_obj->pending_cnt == 0) ||
393 (ch_obj->stopZslSnapshot == 1)) &&
394 (ch_obj->manualZSLSnapshot == FALSE) &&
395 ch_obj->startZSlSnapshotCalled == TRUE) {
397 mm_camera_stop_zsl_snapshot(ch_obj->cam_obj);
398 ch_obj->startZSlSnapshotCalled = FALSE;
399 ch_obj->burstSnapNum = 0;
400 ch_obj->stopZslSnapshot = 0;
401 ch_obj->unLockAEC = 1;
402 ch_obj->needLEDFlash = FALSE;
403 ch_obj->bracketingState = MM_CHANNEL_BRACKETING_STATE_OFF;
406 if (ch_obj->frame_config != NULL) {
407 if (ch_obj->frame_config->configs[ch_obj->cur_capture_idx].num_frames != 0) {
408 ch_obj->frame_config->configs[ch_obj->cur_capture_idx].num_frames--;
410 ch_obj->frame_config->configs[ch_obj->cur_capture_idx].num_frames,
411 ch_obj->cur_capture_idx);
416 if (NULL != ch_obj->bundle.super_buf_notify_cb) {
421 __func__, ch_obj->pending_cnt);
432 cb_node->u.superbuf.camera_handle = ch_obj->cam_obj->my_hdl;
433 cb_node->u.superbuf.ch_id = ch_obj->my_hdl;
435 if (ch_obj->unLockAEC == 1) {
438 ch_obj->unLockAEC = 0;
442 cam_queue_enq(&(ch_obj->cb_thread.cmd_queue), cb_node);
444 cam_sem_post(&(ch_obj->cb_thread.cmd_sem));
449 mm_channel_qbuf(ch_obj, node->super_buf[i].buf);
456 mm_channel_qbuf(ch_obj, node->super_buf[i].buf);
1051 stream_obj->ch_obj = my_obj;
1097 if (stream_obj->ch_obj != my_obj) {
1144 if (stream_obj->ch_obj != my_obj) {
1190 (s_obj->ch_obj == my_obj)) {
1240 (s_obj->ch_obj == my_obj)) {
1273 if (s_objs[i]->ch_obj == my_obj) {
1299 if (s_objs[i]->ch_obj != my_obj) {
1309 if (s_objs[i]->ch_obj != my_obj) {
1354 if (s_objs[j]->ch_obj != my_obj) {
1371 if ((NULL == s_objs[j]) || (s_objs[j]->ch_obj != my_obj)) {
1438 if (s_obj->ch_obj == my_obj) {
1459 if (s_objs[i]->ch_obj != my_obj) {
1477 if (s_objs[i]->ch_obj != my_obj) {
1506 if (s_objs[i]->ch_obj != my_obj) {
1517 if (s_objs[i]->ch_obj != my_obj) {
1757 if (s_obj->ch_obj != my_obj) {
1791 if (s_obj->ch_obj != my_obj) {
1832 if (s_obj->ch_obj != my_obj) {
1872 if (s_obj->ch_obj != my_obj) {
1911 if (s_obj->ch_obj != my_obj) {
1945 if (s_obj->ch_obj != my_obj) {
1981 if (s_obj->ch_obj != my_obj) {
2062 * @ch_obj : channel object
2071 mm_channel_t* ch_obj,
2078 stream_obj = mm_channel_util_get_stream_by_handler(ch_obj,
2107 (stream_obj->ch_obj == ch_obj)) {
2137 for (i = 0; i < ARRAY_SIZE(ch_obj->streams); i++) {
2138 if (MM_STREAM_STATE_NOTUSED == ch_obj->streams[i].state) {
2142 ch_obj->streams[i].stream_info->stream_type) {
2143 snapshot_stream_id = ch_obj->streams[i].server_stream_id;
2162 ch_obj->diverted_frame_id = divert_info->frame_id;
2164 ch_obj->diverted_frame_id = 0;
2168 if (ch_obj->isZoom1xFrameRequested) {
2170 ch_obj->isZoom1xFrameRequested = 0;
2175 mm_channel_superbuf_flush_matched(ch_obj, queue);
2181 ch_obj->bWaitForPrepSnapshotDone = 0;
2187 mm_channel_superbuf_flush(ch_obj,
2190 ch_obj->needLEDFlash = TRUE;
2192 ch_obj->needLEDFlash = FALSE;
2202 if((ch_obj->needLEDFlash == TRUE) && (ch_obj->burstSnapNum > 1)) {
2219 } else if ((MM_CHANNEL_BRACKETING_STATE_WAIT_GOOD_FRAME_IDX == ch_obj->bracketingState) &&
2222 mm_channel_superbuf_flush_matched(ch_obj, queue);
2225 if (ch_obj->isFlashBracketingEnabled &&
2246 ch_obj->bracketingState = MM_CHANNEL_BRACKETING_STATE_ACTIVE;
2249 if (ch_obj->frame_config != NULL && is_good_frame_idx_range_valid
2250 && (good_frame_idx_range.config_batch_idx < ch_obj->frame_config->num_batch)) {
2255 if (ch_obj->frame_config->configs[ch_obj->cur_capture_idx].num_frames != 0) {
2259 ch_obj->cur_capture_idx = good_frame_idx_range.config_batch_idx;
2262 if ((ch_obj->burstSnapNum > 1) && (ch_obj->needLEDFlash == TRUE)
2263 && !ch_obj->isFlashBracketingEnabled
2264 && (MM_CHANNEL_BRACKETING_STATE_OFF == ch_obj->bracketingState)
2265 && ch_obj->frame_config == NULL) {
2269 __func__, ch_obj->burstSnapNum);
2274 ch_obj->stopZslSnapshot = 1;
2275 ch_obj->needLEDFlash = FALSE;
2291 * @ch_obj : channel object
2300 mm_channel_t* ch_obj,
2325 mm_channel_qbuf(ch_obj, buf_info->buf);
2329 if (mm_channel_handle_metadata(ch_obj, queue, buf_info) < 0) {
2330 mm_channel_qbuf(ch_obj, buf_info->buf);
2337 mm_channel_qbuf(ch_obj, buf_info->buf);
2345 mm_channel_qbuf(ch_obj, buf_info->buf);
2411 mm_channel_qbuf(ch_obj, buf_info->buf);
2428 if(ch_obj->isFlashBracketingEnabled) {
2433 ch_obj->isFlashBracketingEnabled = FALSE;
2456 mm_channel_qbuf(ch_obj, super_buf->super_buf[i].buf);
2471 if (ch_obj->diverted_frame_id == buf_info->frame_idx) {
2473 ch_obj->diverted_frame_id = 0;
2480 mm_channel_qbuf(ch_obj, buf_info->buf);
2493 mm_channel_qbuf(ch_obj, super_buf->super_buf[i].buf);
2510 mm_channel_qbuf(ch_obj, super_buf->super_buf[i].buf);
2534 if (ch_obj->diverted_frame_id == buf_info->frame_idx) {
2536 ch_obj->diverted_frame_id = 0;
2569 mm_channel_qbuf(ch_obj, buf_info->buf);