UniMRCP  1.7.0
mpf_frame.h
Go to the documentation of this file.
1 /*
2  * Copyright 2008-2015 Arsen Chaloyan
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef MPF_FRAME_H
18 #define MPF_FRAME_H
19 
20 /**
21  * @file mpf_frame.h
22  * @brief MPF Audio/Video/Named-event Frame
23  */
24 
25 #include "mpf_codec_descriptor.h"
26 #include "mpf_named_event.h"
27 
29 
30 /** Media frame types */
31 typedef enum {
32  MEDIA_FRAME_TYPE_NONE = 0x0, /**< none */
33  MEDIA_FRAME_TYPE_AUDIO = 0x1, /**< audio frame */
34  MEDIA_FRAME_TYPE_VIDEO = 0x2, /**< video frame */
35  MEDIA_FRAME_TYPE_EVENT = 0x4 /**< named event frame (RFC4733/RFC2833) */
37 
38 /** Media frame marker */
39 typedef enum {
40  MPF_MARKER_NONE, /**< none */
41  MPF_MARKER_START_OF_EVENT, /**< start of event */
42  MPF_MARKER_END_OF_EVENT, /**< end of event */
43  MPF_MARKER_NEW_SEGMENT /**< start of new segment (long-lasting events) */
45 
46 /** Media frame declaration */
47 typedef struct mpf_frame_t mpf_frame_t;
48 
49 /** Media frame */
50 struct mpf_frame_t {
51  /** frame type (audio/video/named-event) mpf_frame_type_e */
52  int type;
53  /** frame marker (start-of-event,end-of-event) mpf_frame_marker_e */
54  int marker;
55  /** codec frame */
57  /** named-event frame */
59 };
60 
61 
63 
64 #endif /* MPF_FRAME_H */
Definition: mpf_frame.h:43
Definition: mpf_frame.h:41
Definition: mpf_frame.h:33
Definition: mpf_frame.h:32
#define APT_END_EXTERN_C
Definition: apt.h:38
mpf_named_event_frame_t event_frame
Definition: mpf_frame.h:58
int type
Definition: mpf_frame.h:52
Definition: mpf_frame.h:50
Definition: mpf_frame.h:42
#define APT_BEGIN_EXTERN_C
Definition: apt.h:36
Definition: mpf_codec_descriptor.h:107
mpf_codec_frame_t codec_frame
Definition: mpf_frame.h:56
MPF Named Events (RFC4733/RFC2833)
Definition: mpf_frame.h:35
Definition: mpf_named_event.h:34
int marker
Definition: mpf_frame.h:54
MPF Codec Descriptor.
mpf_frame_type_e
Definition: mpf_frame.h:31
mpf_frame_marker_e
Definition: mpf_frame.h:39
Definition: mpf_frame.h:40
Definition: mpf_frame.h:34