diff --git a/app/src/main/java/com/ray650128/gstreamer_demo_app/ui/mainScreen/MainActivity.kt b/app/src/main/java/com/ray650128/gstreamer_demo_app/ui/mainScreen/MainActivity.kt index a7b79cf..87bc5ab 100644 --- a/app/src/main/java/com/ray650128/gstreamer_demo_app/ui/mainScreen/MainActivity.kt +++ b/app/src/main/java/com/ray650128/gstreamer_demo_app/ui/mainScreen/MainActivity.kt @@ -141,7 +141,8 @@ class MainActivity : AppCompatActivity() { for (i in 0 until splitVideoViewAdapter.itemCount) { splitVideoViewAdapter.stop(i) } - delay(oldSplitMode * Constants.CONF_DELAY_BASE_MILLIS) + //delay(oldSplitMode * Constants.CONF_DELAY_BASE_MILLIS) + delay((oldSplitMode * 100) + Constants.CONF_DELAY_BASE_MILLIS) oldSplitMode = splitMode splitVideoViewAdapter.clear() // 如果群組內沒有裝置,則顯示底圖 diff --git a/app/src/main/java/com/ray650128/gstreamer_demo_app/ui/mainScreen/SplitViewFragment.kt b/app/src/main/java/com/ray650128/gstreamer_demo_app/ui/mainScreen/SplitViewFragment.kt index 93ce2b8..eddf60f 100644 --- a/app/src/main/java/com/ray650128/gstreamer_demo_app/ui/mainScreen/SplitViewFragment.kt +++ b/app/src/main/java/com/ray650128/gstreamer_demo_app/ui/mainScreen/SplitViewFragment.kt @@ -163,7 +163,8 @@ class SplitViewFragment : Fragment() { } MainScope().launch { stopAll() - delay(splitMode * Constants.CONF_DELAY_BASE_MILLIS) + //delay(splitMode * Constants.CONF_DELAY_BASE_MILLIS) + delay((splitMode * 100) + Constants.CONF_DELAY_BASE_MILLIS) val item = data[position] val bundle = Bundle().apply { //putInt(MonitoringActivity.BUNDLE_DEVICE_ID, item.id) diff --git a/gstreamer_player/jni/gst_player.c b/gstreamer_player/jni/gst_player.c index 14c888c..e8398a6 100644 --- a/gstreamer_player/jni/gst_player.c +++ b/gstreamer_player/jni/gst_player.c @@ -354,8 +354,8 @@ static void gst_native_play(JNIEnv *env, jobject thiz) { if (!data) return; GST_DEBUG ("Setting state to PLAYING"); - data->target_state = GST_STATE_PLAYING; data->is_live = (gst_element_set_state(data->pipeline, GST_STATE_PLAYING) == GST_STATE_CHANGE_NO_PREROLL); + data->target_state = GST_STATE_PLAYING; } /* Set pipeline to PAUSED state */ @@ -364,8 +364,8 @@ static void gst_native_pause(JNIEnv *env, jobject thiz) { if (!data) return; GST_DEBUG ("Setting state to PAUSED"); - data->target_state = GST_STATE_PAUSED; data->is_live = (gst_element_set_state(data->pipeline, GST_STATE_PAUSED) == GST_STATE_CHANGE_NO_PREROLL); + data->target_state = GST_STATE_PAUSED; } /* Static class initializer: retrieve method and field IDs */