summaryrefslogtreecommitdiff
path: root/pjmedia/include/pjmedia
diff options
context:
space:
mode:
authorNanang Izzuddin <nanang@teluu.com>2011-09-27 05:24:06 +0000
committerNanang Izzuddin <nanang@teluu.com>2011-09-27 05:24:06 +0000
commitba2dc4a7b2dc047fafca1f64c3503f0b1d40e473 (patch)
tree213670834574f38022cc009e6530d78d039238f8 /pjmedia/include/pjmedia
parent6fe9c8763fd075ddd2affec20e4a9d880dc0bdb7 (diff)
Close #1360: implementated video orientation (currently only for video devices).
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3774 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia/include/pjmedia')
-rw-r--r--pjmedia/include/pjmedia/event.h7
-rw-r--r--pjmedia/include/pjmedia/types.h37
2 files changed, 43 insertions, 1 deletions
diff --git a/pjmedia/include/pjmedia/event.h b/pjmedia/include/pjmedia/event.h
index ddcffc02..259f7264 100644
--- a/pjmedia/include/pjmedia/event.h
+++ b/pjmedia/include/pjmedia/event.h
@@ -78,7 +78,12 @@ typedef enum pjmedia_event_type
/**
* Video decoding error due to missing key frame event.
*/
- PJMEDIA_EVENT_KEY_FRAME_MISSING = PJMEDIA_FOURCC('I', 'F', 'R', 'M')
+ PJMEDIA_EVENT_KEY_FRAME_MISSING = PJMEDIA_FOURCC('I', 'F', 'R', 'M'),
+
+ /**
+ * Video orientation has been changed event.
+ */
+ PJMEDIA_EVENT_ORIENT_CHANGED = PJMEDIA_FOURCC('O', 'R', 'N', 'T')
} pjmedia_event_type;
diff --git a/pjmedia/include/pjmedia/types.h b/pjmedia/include/pjmedia/types.h
index 6a660f0c..20e93d69 100644
--- a/pjmedia/include/pjmedia/types.h
+++ b/pjmedia/include/pjmedia/types.h
@@ -192,6 +192,43 @@ typedef struct pjmedia_rect
} pjmedia_rect;
/**
+ * Enumeration for video/picture orientation.
+ */
+typedef enum pjmedia_orient
+{
+ /**
+ * Unknown orientation.
+ */
+ PJMEDIA_ORIENT_UNKNOWN,
+
+ /**
+ * Natural orientation, e.g: sky upside on landscape view, head upside
+ * on human portrait.
+ */
+ PJMEDIA_ORIENT_NATURAL,
+
+ /**
+ * Specifies that the video/picture needs to be rotated 90 degrees
+ * clockwise to be displayed in natural orientation.
+ */
+ PJMEDIA_ORIENT_ROTATE_90DEG,
+
+ /**
+ * Specifies that the video/picture needs to be rotated 180 degrees
+ * clockwise to be displayed in natural orientation.
+ */
+ PJMEDIA_ORIENT_ROTATE_180DEG,
+
+ /**
+ * Specifies that the video/picture needs to be rotated 270 degrees
+ * clockwise to be displayed in natural orientation.
+ */
+ PJMEDIA_ORIENT_ROTATE_270DEG
+
+} pjmedia_orient;
+
+
+/**
* Macro for packing format from a four character code, similar to FOURCC.
*/
#define PJMEDIA_FOURCC(C1, C2, C3, C4) ( C4<<24 | C3<<16 | C2<<8 | C1 )