mirror of
https://git.freebsd.org/ports.git
synced 2025-06-25 06:30:29 -04:00
23 lines
993 B
C++
23 lines
993 B
C++
--- player/plugin/video/ffmpeg/ffmpeg.cpp 2007-07-02 22:26:03.000000000 +0200
|
|
+++ player/plugin/video/ffmpeg/ffmpeg.cpp 2008-10-10 23:01:19.519476374 +0200
|
|
@@ -585,10 +585,16 @@ static int ffmpeg_decode (codec_data_t *
|
|
from.data[ix] = ffmpeg->m_picture->data[ix];
|
|
from.linesize[ix] = ffmpeg->m_picture->linesize[ix];
|
|
}
|
|
-
|
|
- img_convert(&to, PIX_FMT_YUV420P,
|
|
- &from, ffmpeg->m_c->pix_fmt,
|
|
- ffmpeg->m_c->width, ffmpeg->m_c->height);
|
|
+#ifdef HAVE_FFMPEG_INSTALLED
|
|
+ SwsContext *pSWSCtx;
|
|
+ pSWSCtx = sws_getContext(ffmpeg->m_c->width, ffmpeg->m_c->height,
|
|
+ ffmpeg->m_c->pix_fmt,
|
|
+ ffmpeg->m_c->width, ffmpeg->m_c->height,
|
|
+ PIX_FMT_YUV420P, SWS_BICUBIC, 0, 0, 0);
|
|
+ sws_scale(pSWSCtx, from.data, from.linesize, 0, ffmpeg->m_c->height,
|
|
+ to.data, to.linesize);
|
|
+ sws_freeContext(pSWSCtx);
|
|
+#endif
|
|
ffmpeg->m_vft->video_filled_buffer(ffmpeg->m_ifptr,
|
|
ffmpeg->have_cached_ts ?
|
|
ffmpeg->cached_ts : ts);
|