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_AUDIOREC_H__
23 #define __MM_CAMCORDER_AUDIOREC_H__
25 /*=======================================================================================
27 ========================================================================================*/
34 /*=======================================================================================
35 | STRUCTURE DEFINITIONS |
36 ========================================================================================*/
38 * MMCamcorder information for audio mode
41 int iSamplingRate; /**< Sampling rate */
42 int iBitDepth; /**< Bit depth */
43 int iChannels; /**< audio channels */
44 char *filename; /**< recorded file name */
45 gboolean b_commiting; /**< Is it commiting now? */
46 gboolean bMuxing; /**< whether muxing */
47 guint64 filesize; /**< current recorded file size */
48 guint64 max_size; /**< max recording size */
49 guint64 max_time; /**< max recording time */
50 int fileformat; /**< recording file format */
51 } _MMCamcorderAudioInfo;
53 /*=======================================================================================
54 | GLOBAL FUNCTION PROTOTYPES |
55 ========================================================================================*/
57 * This function creates audio pipeline for audio recording.
59 * @param[in] handle Handle of camcorder.
60 * @return This function returns MM_ERROR_NONE on success, or others on failure.
62 * @see _mmcamcorder_destroy_audio_pipeline()
65 int _mmcamcorder_create_audio_pipeline(MMHandleType handle);
68 * This function destroy audio pipeline.
70 * @param[in] handle Handle of camcorder.
73 * @see _mmcamcorder_destroy_pipeline()
76 void _mmcamcorder_destroy_audio_pipeline(MMHandleType handle);
79 * This function runs command for audio recording.
81 * @param[in] handle Handle of camcorder.
82 * @param[in] command audio recording command.
83 * @return This function returns MM_ERROR_NONE on success, or others on failure.
88 int _mmcamcorder_audio_command(MMHandleType handle, int command);
91 * This function handles EOS(end of stream) when audio recording is finished.
93 * @param[in] handle Handle of camcorder.
94 * @return This function returns TRUE on success, or FALSE on failure.
99 int _mmcamcorder_audio_handle_eos(MMHandleType handle);
104 #endif /* __MM_CAMCORDER_AUDIOREC_H__ */