[英]QuickBlox Android SDK OwnSurfaceView Issue
我們的團隊開始使用quickblox android SDK構建視頻聊天應用程序。 我們要求將OpponentView
調整為全屏尺寸,同時使OwnSurfaceView
較小並覆蓋在頂部。 使用這種布局和方法,quickblox iOS SDK可以按預期工作。
我們注意到,在我們測試的大多數android設備上(與OS級別無關;但是這是在5.0和4.4上發生的),該呼叫將被連接,並且OwnSurfaceView
將不會顯示。 此后不久,視頻將崩潰。
我們在日志中看到以下內容:
invalid address or address of corrupt block 0xb7b00a07 passed to dlfree
Fatal signal 11 (SIGSEGV), code 1, fault addr 0xdeadbaad in tid 10326 (Thread-1113)
PROFILE HAL: stopPreview(): E: 1417779352.559218326
config_MSG_ID_STOP_ACK: streamon_mask is not clear. Should not call PP_Release_HW
android::status_t android::QCameraHardwareInterface::setPreviewWindow(preview_stream_ops_t*):Received Setting NULL preview window
android::status_t android::QCameraHardwareInterface::setPreviewWindow(preview_stream_ops_t*): mPreviewWindow = 0x0x0, mStreamDisplay = 0x0xb82edc10
Setting NULL preview window
Destroying camera 1
virtual android::QCameraHardwareInterface::~QCameraHardwareInterface() First stop the polling threads before deleting instances
config_shutdown_pp Camera not in streaming mode. Returning.
vfe_ops_deinit: E
E/qcom_sensors_hal﹕ hal_process_report_ind: Bad item quality: 11
I/OpenGLRenderer﹕ Initialized EGL, version 1.4
D/audio_hw_primary﹕ disable_audio_route: reset and update mixer path: audio-record
D/audio_hw_primary﹕ disable_snd_device: snd_device(16: handset-mic)
D/NuPlayerDriver﹕ reset(0xb82e4480)
D/NuPlayerDriver﹕ notifyResetComplete(0xb82e4480)
D/NuPlayerDriver﹕ reset(0xb8355c10)
D/NuPlayerDriver﹕ notifyResetComplete(0xb8355c10)
Process 10109 exited due to signal (11)
qcom_sensors_hal﹕ hal_process_report_ind: Bad item quality: 11
您所代表的日志與3方庫中的錯誤相關。 顯然,您試圖以錯誤的方式管理Camera實例。 在IOS版本中,每個對手表示都有不同的實例,但是在Android中,兩個用戶都使用一個實例。 因此,您無法管理用於分別代表對手的視圖,但可以嘗試在視圖上管理視頻渲染。 通過VideoRenderer.Callbacks實例。
在不久的將來,我們計划更新android webrtc模塊,並添加QBCustomVideoView以在單獨的視圖中表示每個用戶。
此外,還將在新的QuickBlox SDK版本中添加許多其他功能,例如,將刪除來自Activity類的QBClient實例的強依賴性,將檢查代碼和邏輯,將添加多調用功能,依此類推。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.