aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2009-06-26 19:29:02 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2009-06-26 19:29:02 +0000
commit49e4bdf5d9e467093c72597cad1ef5f71af426f8 (patch)
tree8558af395a481a402d8f9a6d76ccc99c629fd017 /include
parentfe79e2ee5c213c9defbfcfebc0a69ce403f0c90e (diff)
Merged revisions 203699 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ........ r203699 | file | 2009-06-26 16:27:24 -0300 (Fri, 26 Jun 2009) | 2 lines Improve T.38 negotiation by exchanging session parameters between application and channel. ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@203701 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include')
-rw-r--r--include/asterisk/frame.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/include/asterisk/frame.h b/include/asterisk/frame.h
index 144040525..18f8c18b6 100644
--- a/include/asterisk/frame.h
+++ b/include/asterisk/frame.h
@@ -313,6 +313,7 @@ enum ast_control_frame_type {
AST_CONTROL_VIDUPDATE = 18, /*!< Indicate video frame update */
AST_CONTROL_T38 = 19, /*!< T38 state change request/notification */
AST_CONTROL_SRCUPDATE = 20, /*!< Indicate source of media has changed */
+ AST_CONTROL_T38_PARAMETERS = 24, /*!< T38 state change request/notification with parameters */
};
enum ast_control_t38 {
@@ -323,6 +324,31 @@ enum ast_control_t38 {
AST_T38_REFUSED /*!< T38 refused for some reason (usually rejected by remote end) */
};
+enum ast_control_t38_rate {
+ AST_T38_RATE_2400 = 0,
+ AST_T38_RATE_4800,
+ AST_T38_RATE_7200,
+ AST_T38_RATE_9600,
+ AST_T38_RATE_12000,
+ AST_T38_RATE_14400,
+};
+
+enum ast_control_t38_rate_management {
+ AST_T38_RATE_MANAGEMENT_TRANSFERED_TCF = 0,
+ AST_T38_RATE_MANAGEMENT_LOCAL_TCF,
+};
+
+struct ast_control_t38_parameters {
+ enum ast_control_t38 request_response; /*!< Request or response of the T38 control frame */
+ unsigned int version; /*!< Supported T.38 version */
+ unsigned int max_datagram; /*!< Maximum datagram size supported */
+ enum ast_control_t38_rate rate; /*!< Maximum fax rate supported */
+ enum ast_control_t38_rate_management rate_management; /*!< Rate management setting */
+ unsigned int fill_bit_removal:1; /*!< Set if fill bit removal should be used */
+ unsigned int transcoding_mmr:1; /*!< Set if MMR transcoding should be used */
+ unsigned int transcoding_jbig:1; /*!< Set if JBIG transcoding should be used */
+};
+
#define AST_SMOOTHER_FLAG_G729 (1 << 0)
#define AST_SMOOTHER_FLAG_BE (1 << 1)