com.aliyun.svideosdk.crop

## Class CropParam

- java.lang.Object
- - com.aliyun.svideosdk.crop.CropParam

-     public class CropParam
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CropParam()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getCrf()` 获取crf
    `Rect` | `getCropRect()` 获取裁剪区域
    `long` | `getEndTime()` 获取裁剪的结束时间， 单位：微秒
    `long` | `getEndTime(java.util.concurrent.TimeUnit timeUnit)` 获取裁剪的结束时间, 单位：毫秒
    `int` | `getFillColor()` 获取填充色
    `int` | `getFrameRate()` 获取帧率 单位：fps
    `int` | `getGop()` 获取GOP大小
    `java.lang.String` | `getInputPath()` 获取输入视频路径
    `MediaType` | `getMediaType()` 获取输入媒体类型
    `int` | `getOutputHeight()` 获取输出高度
    `java.lang.String` | `getOutputPath()` 获取视频输出路径
    `int` | `getOutputWidth()` 获取输出宽度
    `VideoQuality` | `getQuality()` 获取视频质量
    `VideoDisplayMode` | `getScaleMode()` 获取裁剪模式 如果裁剪模式设置为`VideoDisplayMode.FILL`，则此时`setCropRect(Rect)`将无效
    `long` | `getStartTime()` 获取裁剪的开始时间, 单位：微秒
    `long` | `getStartTime(java.util.concurrent.TimeUnit timeUnit)` 获取裁剪的开始时间
    `int` | `getvideobitrate()` 获取码率
    `VideoCodecs` | `getVideoCodec()` 获取编码器
    `java.lang.String` | `getVideoPath()` Deprecated.
    `boolean` | `isUseGPU()` Deprecated.
    `void` | `setCrf(int crf)` 设置crf
    `void` | `setCropRect(Rect cropRect)` 设置裁剪区域
    `void` | `setEndTime(long endTime)` 设置裁剪的结束时间
    `void` | `setEndTime(long endTime, java.util.concurrent.TimeUnit timeUnit)` 设置裁剪的结束时间
    `void` | `setFillColor(int fillColor)` 设置填充颜色，只有`mScaleMode` = `VideoDisplayMode.FILL`时该属性才有效
    `void` | `setFrameRate(int frameRate)` 设置帧率 单位：fps
    `void` | `setGop(int gop)` 设置GOP大小
    `void` | `setInputPath(java.lang.String inputPath)` 设置源视频文件路径
    `void` | `setMediaType(MediaType mediaType)` 设置媒体类型
    `void` | `setOutputHeight(int outputHeight)` 设置输出高度
    `void` | `setOutputPath(java.lang.String outputPath)` 设置视频输出路径
    `void` | `setOutputWidth(int outputWidth)` 设置输出宽度
    `void` | `setQuality(VideoQuality quality)` 设置视频质量 0：极高 1：高 2：中 3：低
    `void` | `setScaleMode(VideoDisplayMode scaleMode)` 设置裁剪模式
    `void` | `setStartTime(long startTime)` 设置裁剪的开始时间
    `void` | `setStartTime(long startTime, java.util.concurrent.TimeUnit timeUnit)` 设置裁剪的开始时间
    `void` | `setUseGPU(boolean useGPU)` Deprecated.
    `void` | `setVideoBitrate(int bitrate)` 设置码率 单位：kbps
    `void` | `setVideoCodec(VideoCodecs videoCodec)` 设置编码器
    `void` | `setVideoPath(java.lang.String inputPath)` Deprecated.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### CropParam

          public CropParam()

  - ### Method Detail

    - #### getQuality

          public VideoQuality getQuality()

      获取视频质量
      Returns:
        返回视频质量

    - #### setQuality

          public void setQuality(VideoQuality quality)

      设置视频质量 0：极高 1：高 2：中 3：低
      Parameters:
        `quality` -

    - #### setVideoBitrate

          public void setVideoBitrate(int bitrate)

      设置码率 单位：kbps
      Parameters:
        `bitrate` -

    - #### getvideobitrate

          public int getvideobitrate()

      获取码率
      Returns:
        码率值，单位:kbps

    - #### getFrameRate

          public int getFrameRate()

      获取帧率 单位：fps
      Returns:
        帧率

    - #### setFrameRate

          public void setFrameRate(int frameRate)

      设置帧率 单位：fps
      Parameters:
        `frameRate` -

    - #### getGop

          public int getGop()

      获取GOP大小
      Returns:
        gop大小

    - #### setGop

          public void setGop(int gop)

      设置GOP大小
      Parameters:
        `gop` - 单位是帧数，因此，关键帧间隔 = gop / fps

    - #### getScaleMode

          public VideoDisplayMode getScaleMode()

      获取裁剪模式 如果裁剪模式设置为`VideoDisplayMode.FILL`，则此时`setCropRect(Rect)`将无效
      Returns:
        裁剪模式
      See Also:
        `VideoDisplayMode`

    - #### setScaleMode

          public void setScaleMode(VideoDisplayMode scaleMode)

      设置裁剪模式
      Parameters:
        `scaleMode` -

    - #### getVideoPath

          public java.lang.String getVideoPath()

      Deprecated.
      获取视频路径，请使用`getInputPath()`替代
      Returns:
        视频路径

    - #### getInputPath

          public java.lang.String getInputPath()

      获取输入视频路径
      Returns:
        路径字符串

    - #### setVideoPath

          public void setVideoPath(java.lang.String inputPath)

      Deprecated.
      设置视频路径，请使用`setInputPath(String)`替代
      Parameters:
        `inputPath` -

    - #### setInputPath

          public void setInputPath(java.lang.String inputPath)

      设置源视频文件路径
      Parameters:
        `inputPath` -

    - #### getOutputPath

          public java.lang.String getOutputPath()

      获取视频输出路径
      Returns:
        视频输出路径

    - #### setOutputPath

          public void setOutputPath(java.lang.String outputPath)

      设置视频输出路径
      Parameters:
        `outputPath` -

    - #### getOutputWidth

          public int getOutputWidth()

      获取输出宽度
      Returns:
        输出宽度

    - #### setOutputWidth

          public void setOutputWidth(int outputWidth)

      设置输出宽度
      Parameters:
        `outputWidth` -

    - #### getOutputHeight

          public int getOutputHeight()

      获取输出高度
      Returns:
        输出高度

    - #### setOutputHeight

          public void setOutputHeight(int outputHeight)

      设置输出高度
      Parameters:
        `outputHeight` -

    - #### getStartTime

          public long getStartTime()

      获取裁剪的开始时间, 单位：微秒
      Returns:
        裁剪的开始时间

    - #### getStartTime

          public long getStartTime(java.util.concurrent.TimeUnit timeUnit)

      获取裁剪的开始时间

      v3.27.0新增

      Returns:
        裁剪的开始时间

    - #### setStartTime

          public void setStartTime(long startTime)

      设置裁剪的开始时间
      Parameters:
        `startTime` - 单位：微秒

    - #### setStartTime

          public void setStartTime(long startTime,
                                   java.util.concurrent.TimeUnit timeUnit)

      设置裁剪的开始时间

      v3.27.0新增

      Parameters:
        `startTime` -
        `timeUnit` - 时间单位

    - #### getEndTime

          public long getEndTime()

      获取裁剪的结束时间， 单位：微秒
      Returns:
        裁剪的结束时间

    - #### getEndTime

          public long getEndTime(java.util.concurrent.TimeUnit timeUnit)

      获取裁剪的结束时间, 单位：毫秒

      v3.27.0新增

      Parameters:
        `timeUnit` - 时间单位
      Returns:
        裁剪的结束时间

    - #### setEndTime

          public void setEndTime(long endTime)

      设置裁剪的结束时间
      Parameters:
        `endTime` - 单位：us

    - #### setEndTime

          public void setEndTime(long endTime,
                                 java.util.concurrent.TimeUnit timeUnit)

      设置裁剪的结束时间

      v3.27.0新增

      Parameters:
        `endTime` -
        `timeUnit` - 时间单位

    - #### getCropRect

          public Rect getCropRect()

      获取裁剪区域
      Returns:
        裁剪区域

    - #### setCropRect

          public void setCropRect(Rect cropRect)

      设置裁剪区域
      Parameters:
        `cropRect` - 裁剪区域是相对视频原始大小计算的，因此cropRect不能超出视频的原始分辨率

    - #### getMediaType

          public MediaType getMediaType()

      获取输入媒体类型
      Returns:
        `MediaType.ANY_AUDIO_TYPE` 音频类型 `MediaType.ANY_IMAGE_TYPE` 图片类型 `MediaType.ANY_VIDEO_TYPE` 视频类型

    - #### setMediaType

          public void setMediaType(MediaType mediaType)

      设置媒体类型
      Parameters:
        `mediaType` - `MediaType.ANY_AUDIO_TYPE` 音频类型 `MediaType.ANY_IMAGE_TYPE` 图片类型 `MediaType.ANY_VIDEO_TYPE` 视频类型

    - #### getFillColor

          public int getFillColor()

      获取填充色
      Returns:
        填充色，8位，按照ARGB的格式

    - #### isUseGPU

          @Deprecated
          public boolean isUseGPU()

      Deprecated.

    - #### setUseGPU

          @Deprecated
          public void setUseGPU(boolean useGPU)

      Deprecated.

    - #### setFillColor

          public void setFillColor(int fillColor)

      设置填充颜色，只有`mScaleMode` = `VideoDisplayMode.FILL`时该属性才有效
      Parameters:
        `fillColor` - 8位，按照ARGB的格式

    - #### getVideoCodec

          public VideoCodecs getVideoCodec()

      获取编码器
      Returns:
        @see VideoCodecs

    - #### setVideoCodec

          public void setVideoCodec(VideoCodecs videoCodec)

      设置编码器
      Parameters:
        `videoCodec` - @see VideoCodecs

    - #### getCrf

          public int getCrf()

      获取crf
      Returns:
        视频质量因子，ffmpeg编码方式下有效，该值越小，视频清晰度越高，同时生成的文件大小越大。默认 23

    - #### setCrf

          public void setCrf(int crf)

      设置crf
      Parameters:
        `crf` - 视频质量因子，ffmpeg编码方式下有效，该值越小，视频清晰度越高，同时生成的文件大小越大。默认 23