<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                在PC(Web)與移動終端(手機、Pad)進行視頻通訊的過程中,由于移動終端的手持方向將會影響到視頻采集的方向,如橫向放置時采集的視頻大小是320x240(4:3)方向正立,而豎向放置時采集的視頻大小是240x320(3:4)方向為橫向,為了保持在PC(Web)端所看到的畫面始終是正立的就需要對視頻畫面進行旋轉,然后調整到合適的大小,而視頻畫面經過旋轉之后,分辯率會發生變化,在調整的過程中會對視頻進行裁剪,自AnyChat r4319版本開始,我們開放了裁剪模式控制接口,可以由上層應用根據實際的應用場景來選擇: 視頻裁剪模式定義 #define ANYCHAT_VIDEOCLIPMODE_AUTO 0 ///< 默認模式,以最大比例進行裁剪,然后再整體拉伸,畫面保持比例,但被裁剪畫面較大 #define ANYCHAT_VIDEOCLIPMODE_OVERLAP 1 ///< 重疊模式,只取最大有效部分,對邊緣進行裁剪 #define ANYCHAT_VIDEOCLIPMODE_SHRINK 2 ///< 縮小模式,縮小到合適的比例,不進行裁剪 #define ANYCHAT_VIDEOCLIPMODE_STRETCH 3 ///< 平鋪模式,不進行裁剪,但可能導致畫面不成比例 #define ANYCHAT_VIDEOCLIPMODE_DYNAMIC 4 ///< 動態模式,由上層應用根據分辯率來調整顯示表面,保持畫面不變形 每種模式的工作原理介紹如下: 一、默認模式,以最大比例進行裁剪,然后再整體拉伸,畫面保持比例,但被裁剪畫面較大,常量定義為:ANYCHAT_VIDEOCLIPMODE_AUTO ![](https://box.kancloud.cn/d6d94c5b66d67107e9de1e8ffda3b182_843x428.jpg) 二、重疊模式,只取最大有效部分,對邊緣進行裁剪,常量定義為:ANYCHAT_VIDEOCLIPMODE_OVERLAP ![](https://box.kancloud.cn/816504916bde73ec18b25f78b1f4459b_843x428.jpg) 三、縮小模式,縮小到合適的比例,不進行裁剪,常量定義為:ANYCHAT_VIDEOCLIPMODE_SHRINK ![](https://box.kancloud.cn/f0068ea54ed54981dcfec64a7c97d2a3_843x428.jpg) 四、平鋪模式,不進行裁剪,但可能導致畫面不成比例,常量定義為:ANYCHAT_VIDEOCLIPMODE_STRETCH ![](https://box.kancloud.cn/5f3c13d97f5bd2ffefefd23df999cc73_843x428.jpg) 五、動態模式,由上層應用根據分辯率來調整顯示表面,保持畫面不變形,常量定義為:ANYCHAT_VIDEOCLIPMODE_DYNAMIC,在動態模式下,視頻畫面旋轉時將會觸發異步事件(WM_GV_VIDEOSIZECHG),上層應用需要主動調整顯示表面(控件)的大小,否則視頻將會被拉伸處理導致畫面變形。(注意:動態模式暫時不適應錄制參數設置) ![](https://box.kancloud.cn/e691b5acc1b72ac24e5b51c824c91797_1167x428.jpg) 客戶端SDK增加視頻顯示、錄制過程中的視頻裁剪模式控制接口: #define BRAC_SO_VIDEOSHOW_CLIPMODE 86 ///< 遠程視頻顯示旋轉裁剪模式(參數為int型, 0 自動[默認]) #define BRAC_SO_RECORD_CLIPMODE 144 ///< 錄制視頻裁剪模式(參數為:int型) 服務器SDK增加錄制過程中的視頻裁剪模式控制接口: #define BRAS_SO_RECORD_CLIPMODE 8 ///< 錄制視頻裁剪模式(參數為:int型) 調用示例代碼(JavaScript): 一、視頻顯示時采用動態模式 var iVideoClipMode = ANYCHAT_VIDEOCLIPMODE_DYNAMIC; BRAC_SetSDKOption(BRAC_SO_VIDEOSHOW_CLIPMODE, iVideoClipMode); 二、視頻錄制時采用重疊模式 var iVideoClipMode = ANYCHAT_VIDEOCLIPMODE_OVERLAP; BRAC_SetSDKOption(BRAC_SO_RECORD_CLIPMODE, iVideoClipMode); var dwFlags = ANYCHAT_RECORD_FLAGS_VIDEO + ANYCHAT_RECORD_FLAGS_AUDIO + ANYCHAT_RECORD_FLAGS_MIXAUDIO + ANYCHAT_RECORD_FLAGS_MIXVIDEO + ANYCHAT_RECORD_FLAGS_ABREAST; BRAC_StreamRecordCtrlEx(-1, 1, dwFlags, 0, "Hello, AnyChat!");
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看