原型:
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)
成功后返回SwsContext 類型的結構體。
參數1:被轉換源的寬
參數2:被轉換源的高
參數3:被轉換源的格式,eg:YUV、RGB……(枚舉格式,也可以直接用枚舉的代號表示eg:AV_PIX_FMT_YUV420P這些枚舉的格式在libavutil/pixfmt.h中列出)
參數4:轉換后指定的寬
參數5:轉換后指定的高
參數6:轉換后指定的格式同參數3的格式
參數7:轉換所使用的算法,
參數8:NULL
參數9:NULL
參數10:NULL
轉換所用的算法在libswscale/swscale.h中枚舉
網上有人測試這些算法,將一幅1920*1080的風景圖像,縮放為400*300的24位RGB
算法
幀率
圖像主觀感受
SWS_FAST_BILINEAR
228
圖像無明顯失真,感覺效果很不錯。
SWS_BILINEAR
95
感覺也很不錯,比上一個算法邊緣平滑一些。
SWS_BICUBIC
80
感覺差不多,比上上算法邊緣要平滑,比上一算法要銳利。