4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Jeongmo Yang <jm80.yang@samsung.com>
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
22 #ifndef __MM_CAMCORDER_STILLSHOT_H__
23 #define __MM_CAMCORDER_STILLSHOT_H__
25 /*=======================================================================================
27 ========================================================================================*/
35 /*=======================================================================================
36 | GLOBAL DEFINITIONS AND DECLARATIONS FOR CAMCORDER |
37 ========================================================================================*/
39 /*=======================================================================================
41 ========================================================================================*/
42 #define _MMCAMCORDER_CAPTURE_STOP_CHECK_INTERVAL (50*1000)
43 #define _MMCAMCORDER_CAPTURE_STOP_CHECK_COUNT 60
45 #define _MNOTE_VALUE_NONE 0
46 #define _SOUND_STATUS_INIT -1
48 /*=======================================================================================
50 ========================================================================================*/
53 /*=======================================================================================
54 | STRUCTURE DEFINITIONS |
55 ========================================================================================*/
57 * MMCamcorder information for image(preview/capture) mode
60 int type; /**< Still-shot/Multi-shot */
61 int count; /**< Multi-shot capture count */
62 int capture_cur_count; /**< Multi-shot capture current count */
63 int capture_send_count; /**< Multi-shot capture send count */
64 unsigned long long next_shot_time; /**< next still capture time */
65 gboolean multi_shot_stop; /**< Multi-shot stop flag */
66 gboolean capturing; /**< whether MSL is on capturing */
67 gboolean resolution_change; /**< whether on resolution changing for capturing. After changing to capture resolution, it sets to FALSE again. */
68 int width; /**< Width of capture image */
69 int height; /**< Height of capture image */
70 int interval; /**< Capture interval */
71 int preview_format; /**< Preview format */
72 int capture_format; /**< Capture format */
73 int hdr_capture_mode; /**< HDR Capture mode */
74 gboolean sound_status; /**< sound status of system */
75 gboolean played_capture_sound; /**< whether play capture sound when capture starts */
76 } _MMCamcorderImageInfo;
78 /*=======================================================================================
79 | CONSTANT DEFINITIONS |
80 ========================================================================================*/
82 /*=======================================================================================
84 ========================================================================================*/
86 /*=======================================================================================
87 | EXTERN GLOBAL VARIABLE |
88 ========================================================================================*/
90 /*=======================================================================================
91 | GLOBAL FUNCTION PROTOTYPES |
92 ========================================================================================*/
93 int _mmcamcorder_initialize_capture_mode(MMHandleType handle);
94 int _mmcamcorder_video_capture_command(MMHandleType handle, int command);
95 void _mmcamcorder_destroy_video_capture_pipeline(MMHandleType handle);
97 int _mmcamcorder_initialize_extra_preview_mode(MMHandleType handle);
98 int _mmcamcorder_set_extra_preview_device_type(MMHandleType handle, int stream_id, int device_type);
99 int _mmcamcorder_set_extra_preview_stream_format(MMHandleType handle, int stream_id, int pixel_format, int width, int height, int fps);
100 int _mmcamcorder_get_extra_preview_stream_format(MMHandleType handle, int stream_id, int *pixel_format, int *width, int *height, int *fps);
101 int _mmcamcorder_set_extra_preview_bitrate(MMHandleType handle, int stream_id, int bitrate);
102 int _mmcamcorder_get_extra_preview_bitrate(MMHandleType handle, int stream_id, int *bitrate);
103 int _mmcamcorder_set_extra_preview_gop_interval(MMHandleType handle, int stream_id, int interval);
104 int _mmcamcorder_get_extra_preview_gop_interval(MMHandleType handle, int stream_id, int *interval);
110 #endif /* __MM_CAMCORDER_STILLSHOT_H__ */