com.aliyun.svideosdk.editor

## Interface AliyunIPipController

- All Superinterfaces:
    AliyunISteamController

      public interface AliyunIPipController
      extends AliyunISteamController

  sdk version >= v3.25.0

  picture in picture (PIP) instance's controller

  you can set all PIP properties with this controller. It contains multiple sub controllers

  you must call #apply `AliyunISteamController.apply()` to take effect.

  AliyunIPipController set PIP stream properties.

  |------ AliyunIAudioController set PIP audio properties.

  |------ AliyunILayoutController set PIP layout properties.

  |------ AliyunIAnimationController set PIP animation properties.

  |------ AliyunIAugmentationController set PIP augmentation properties.

  Attentions：

  1,you must call #apply `AliyunISteamController.apply()` to take effect.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `AliyunIPipTrack` | `getOwnerTrack()` get the pip's track
    `RectF` | `getPipRectFInCurrentScreen()` get pip view rect on screen
    `AliyunIPipController` | `setBorderColor(int value)` set the border's color
    `AliyunIPipController` | `setBorderCornerRadius(float value)` set the border's radius in pixel
    `AliyunIPipController` | `setBorderWidth(float value)` set the border's width
    `AliyunIPipController` | `setClipEndTime(long endTime, java.util.concurrent.TimeUnit timeUnit)` set clip's duration
    `AliyunIPipController` | `setClipStartTime(long startTime, java.util.concurrent.TimeUnit timeUnit)` set clip's startTime
    `AliyunIPipController` | `setHorizontalFlip(boolean flip)` set video horizontal flip or no
    `AliyunIPipController` | `setTimelineStartTime(long startTime, java.util.concurrent.TimeUnit timeUnit)` set startTime at Timeline

    - ### Methods inherited from interface com.aliyun.svideosdk.editor.AliyunISteamController

      `apply, getAnimationController, getAudioController, getAugmentationController, getClipDurationInMillis, getClipStartTimeInMillis, getHeight, getLayoutController, getPath, getStreamId, getTimeLineEndTimeInMillis, getTimeLineStartTimeInMillis, getWidth`

- - ### Method Detail

    - #### setClipStartTime

          AliyunIPipController setClipStartTime(long startTime,
                                                java.util.concurrent.TimeUnit timeUnit)

      set clip's startTime
      Specified by:
        `setClipStartTime` in interface `AliyunISteamController`
      Parameters:
        `startTime` -
        `timeUnit` -

    - #### setClipEndTime

          AliyunIPipController setClipEndTime(long endTime,
                                              java.util.concurrent.TimeUnit timeUnit)

      set clip's duration
      Specified by:
        `setClipEndTime` in interface `AliyunISteamController`
      Parameters:
        `endTime` -
        `timeUnit` -

    - #### setTimelineStartTime

          AliyunIPipController setTimelineStartTime(long startTime,
                                                    java.util.concurrent.TimeUnit timeUnit)

      set startTime at Timeline
      Specified by:
        `setTimelineStartTime` in interface `AliyunISteamController`
      Parameters:
        `startTime` -
        `timeUnit` -

    - #### setBorderColor

          AliyunIPipController setBorderColor(int value)

      set the border's color
      Specified by:
        `setBorderColor` in interface `AliyunISteamController`
      Parameters:
        `value` -

    - #### setBorderWidth

          AliyunIPipController setBorderWidth(float value)

      set the border's width
      Specified by:
        `setBorderWidth` in interface `AliyunISteamController`
      Parameters:
        `value` -
      Returns:

    - #### setBorderCornerRadius

          AliyunIPipController setBorderCornerRadius(float value)

      set the border's radius in pixel
      Specified by:
        `setBorderCornerRadius` in interface `AliyunISteamController`
      Parameters:
        `value` -
      Returns:

    - #### setHorizontalFlip

          AliyunIPipController setHorizontalFlip(boolean flip)

      set video horizontal flip or no
      Specified by:
        `setHorizontalFlip` in interface `AliyunISteamController`
      Parameters:
        `flip` - flip or no
      Returns:

    - #### getPipRectFInCurrentScreen

          RectF getPipRectFInCurrentScreen()

           get pip view rect on screen

      Returns:
        rect of current view

    - #### getOwnerTrack

          AliyunIPipTrack getOwnerTrack()

      get the pip's track
      Returns: