diff --git a/src/gstamlvideosink.c b/src/gstamlvideosink.c
index 2094f58..a189642 100644
--- a/src/gstamlvideosink.c
+++ b/src/gstamlvideosink.c
@@ -100,6 +100,7 @@
     PROP_VIDEO_FRAME_DROP_NUM,
     PROP_WINDOW_SET,
     PROP_RES_USAGE,
+    PROP_DISPLAY_OUTPUT,
 #if GST_IMPORT_LGE_PROP
     PROP_LGE_RESOURCE_INFO,
     PROP_LGE_CURRENT_PTS,
@@ -302,6 +303,12 @@
                          "Flags to indicate intended usage",
                          G_MININT, G_MAXINT, 0, G_PARAM_WRITABLE));
 
+    g_object_class_install_property(
+        G_OBJECT_CLASS(klass), PROP_DISPLAY_OUTPUT,
+        g_param_spec_int("display-output", "display output index",
+                         "display output index, 0 is primary output and default value; 1 is extend display output",
+                         G_MININT, G_MAXINT, 0, G_PARAM_READWRITE));
+
 #if GST_IMPORT_LGE_PROP
     g_object_class_install_property(
         G_OBJECT_CLASS(klass), PROP_LGE_RESOURCE_INFO,
@@ -364,6 +371,7 @@
     sink->droped = 0;
     sink->avsync_mode = GST_DEFAULT_AVSYNC_MODE;
     sink->pip_mode = 0;
+    sink->display_output_index = 0;
     sink->secure_mode = FALSE;
     g_mutex_init(&sink->eos_lock);
     g_cond_init(&sink->eos_cond);
@@ -407,6 +415,13 @@
         g_value_set_int(value, sink->droped);
         GST_OBJECT_UNLOCK(sink);
         break;
+    case PROP_DISPLAY_OUTPUT:
+    {
+        GST_OBJECT_LOCK(sink);
+        g_value_set_int(value, sink->display_output_index);
+        GST_OBJECT_UNLOCK(sink);
+        break;
+    }
 #if GST_IMPORT_LGE_PROP
     case PROP_LGE_CURRENT_PTS:
     {
@@ -510,6 +525,23 @@
         GST_OBJECT_UNLOCK(sink);
         break;
     }
+    case PROP_DISPLAY_OUTPUT:
+    {
+        GST_OBJECT_LOCK(sink);
+        gint index = g_value_get_int(value);
+        if (index == 0 || index == 1)
+        {
+            sink->display_output_index = index;
+            if (sink_priv->render_device_handle)
+            {
+                if (render_set(sink_priv->render_device_handle, KEY_SELECT_DISPLAY_OUTPUT, &sink->display_output_index) == -1)
+                    GST_ERROR_OBJECT(sink, "render lib update output index error");
+            }
+        }
+        GST_DEBUG_OBJECT(sink, "update display output index to:%d", sink->display_output_index);
+        GST_OBJECT_UNLOCK(sink);
+        break;
+    }
 #if GST_IMPORT_LGE_PROP
     case PROP_LGE_RESOURCE_INFO:
     {
@@ -647,6 +679,12 @@
     }
     case GST_STATE_CHANGE_READY_TO_PAUSED:
     {
+
+        if (render_set(sink_priv->render_device_handle, KEY_SELECT_DISPLAY_OUTPUT, &sink->display_output_index) == -1)
+        {
+            GST_ERROR_OBJECT(sink, "render lib first set output index error");
+            goto error;
+        }
         if (render_connect(sink_priv->render_device_handle) == -1)
         {
             GST_ERROR_OBJECT(sink, "render lib connect device fail");
diff --git a/src/gstamlvideosink.h b/src/gstamlvideosink.h
index b505256..a7685e4 100644
--- a/src/gstamlvideosink.h
+++ b/src/gstamlvideosink.h
@@ -58,6 +58,7 @@
   gint droped;
   gint avsync_mode;
   gboolean pip_mode;
+  gint display_output_index;
   GMutex eos_lock;
   GCond eos_cond;
 
