xuning

YoloV8VideoProcessor 仿照ncnn写入mainviewmodel

... ... @@ -33,7 +33,7 @@ import io.livekit.android.room.track.CameraPosition
import io.livekit.android.room.track.LocalVideoTrack
import io.livekit.android.room.track.LocalVideoTrackOptions
import io.livekit.android.room.track.video.CameraCapturerUtils
import io.livekit.android.track.processing.video.OpencvVideoProcessor
import io.livekit.android.track.processing.video.YoloV8VideoProcessor
import io.livekit.android.util.LoggingLevel
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.asExecutor
... ... @@ -55,12 +55,11 @@ class MainViewModel(application: Application) : AndroidViewModel(application) {
),
)
private val processor = OpencvVideoProcessor().apply {
// Load model before processing to avoid unsupported overlay
// modelId: 0=mobilenetv3, sizeId: 6=640, intraInter:1, postproc:0(fast), cpuGpu:0(CPU)
private val processor = YoloV8VideoProcessor().apply {
// Load YOLOv8 model: taskid=0(det_coco), modelid=0, cpugpu=0(CPU)
try {
val ok = loadModel(application.assets, 0, 0, 1, 0, 0)
android.util.Log.d("MainViewModel", "OpencvVideoProcessor.loadModel result=$ok")
val ok = loadModel(application.assets, 0, 0, 0)
android.util.Log.d("MainViewModel", "YoloV8VideoProcessor.loadModel result=$ok")
} catch (t: Throwable) {
android.util.Log.e("MainViewModel", "loadModel failed", t)
}
... ...