zoukankan      html  css  js  c++  java
  • ffmpeg中sws_scale和sws_getContext的api分析

    sws_scale

    可以使用它进行图像像素的转换,分辨率的转换

    int sws_scale(struct SwsContext *c, const uint8_t *const srcSlice[],
                  const int srcStride[], int srcSliceY, int srcSliceH,
                  uint8_t *const dst[], const int dstStride[]);
    
    /*
    @params c 	: 	用来存放像素转换前后数据的上下文SwsContext,使用sws_getContext来创建
    @params srcSlice	: 	输入图像的每个颜色通道的数据指针。其实就是解码后的AVFrame中的data[]数组
    @params srcStride : 	输入图像的每个颜色通道的跨度。.也就是每个通道的行字节数,对应的是解码后的AVFrame中的linesize[]数组。
    @param srcSliceY	:		定义在输入图像上处理区域,srcSliceY是起始位置
    @param srcSliceH	:   定义在输入图像上处理区域,srcSliceY是处理多少行,如果srcSilceY=0,srcSliceH=height,表示一次性处理完整的图像,可以使用多线程进行优化处理
    @param dst       图像输出信息,输出的data[]
    @param dstStride 图像输出信息,输出的linesize[]
    @return         返回值为高度
    */
    

    sws_getContext

    分配并返回一个SwsContext, 在sws_scale中可以执行执行转换和缩放的功能

    struct SwsContext *sws_getContext(int srcW, int srcH, enum AVPixelFormat srcFormat,
                                      int dstW, int dstH, enum AVPixelFormat dstFormat,
                                      int flags, SwsFilter *srcFilter,
                                      SwsFilter *dstFilter, const double *param);
    /*
    @param srcW : 源图像的宽度
    @param srcH : 源图像的高度
    @param srcFormat : 源图像的像素格式
    @param dstW : 目标图像的宽度
    @param dstH : 目标图像的高度
    @param dstFormat : 目标图像的格式
    @param flags: 指定算法和选项进行重新缩放
    @param srcFilter :  源图像滤波参数
    @param dstFilter : 输出图像的滤波参数
    @param param : 定义特定缩放算法需要的参数
    @return 
    		成功 :  返回一个上下文管理器 SwsContext
    */
    
  • 相关阅读:
    @Aspect 注解使用详解
    Mysql的4个隔离级别
    【学习笔记】二分类问题中的“最大似然”与“交叉熵损失”概念的理解
    【转】对“先验概率”与“后验概率”概念的通俗理解
    nginx——安装部署vue项目
    JWT
    Vue——自定义组件实现vmodel
    Vue——子级向父级传递参数
    SpringBoot2(十四)全局异常切面
    Vue——ElementUI表格分页
  • 原文地址:https://www.cnblogs.com/fandx/p/12181900.html
Copyright © 2011-2022 走看看