[0.6.241] apply select-stream event for audio only
[platform/core/multimedia/libmm-player.git] / src / include / mm_player_tracks.h
1 /*
2  * libmm-player
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: JongHyuk Choi <jhchoi.choi@samsung.com>, YeJin Cho <cho.yejin@samsung.com>,
7  * YoungHwan An <younghwan_.an@samsung.com>
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  */
22
23 #ifndef __MM_PLAYER_TRACKS_H__
24 #define __MM_PLAYER_TRACKS_H__
25
26 #include "mm_player_priv.h"
27
28 #ifdef __cplusplus
29         extern "C" {
30 #endif
31
32 #define DEFAULT_TRACK_INDEX 0
33 #define INVALID_TRACK_INDEX -1
34
35 void _mmplayer_track_initialize(mmplayer_t *player);
36
37 void _mmplayer_track_destroy(mmplayer_t *player);
38
39 void _mmplayer_track_update_stream(mmplayer_t *player, mmplayer_track_type_e type, void *stream);
40
41 void _mmplayer_track_update_text_attr_info(mmplayer_t *player, GstMessage *msg);
42
43 int _mmplayer_get_track_count(MMHandleType hplayer,  mmplayer_track_type_e type, int *count);
44
45 int _mmplayer_select_track(MMHandleType hplayer, mmplayer_track_type_e type, int index);
46
47 int _mmplayer_get_track_language_code(MMHandleType hplayer, mmplayer_track_type_e type, int index, char **code);
48
49 int _mmplayer_get_current_track(MMHandleType hplayer, mmplayer_track_type_e type, int *index);
50 #ifdef __cplusplus
51         }
52 #endif
53
54 #endif /* __MM_PLAYER_TRACKS_H__ */