summaryrefslogtreecommitdiffstats
path: root/libmpcodecs/dec_video.c
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-04-06 22:05:01 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-04-06 22:05:01 +0000
commite24cd4d942c0e7261709b4eaca527cfc9750c619 (patch)
tree73812111226d414f6c8516c3b19658f181a4f6b0 /libmpcodecs/dec_video.c
parent55bafcc362e9ec4ea5883bef9e9e30469b6f7517 (diff)
downloadmpv-e24cd4d942c0e7261709b4eaca527cfc9750c619.tar.bz2
mpv-e24cd4d942c0e7261709b4eaca527cfc9750c619.tar.xz
video filter layer - written from scratch, but inspired a lot by Fredrik Kuivinen's patch
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5508 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs/dec_video.c')
-rw-r--r--libmpcodecs/dec_video.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/libmpcodecs/dec_video.c b/libmpcodecs/dec_video.c
index 50edb84a3d..936be20e22 100644
--- a/libmpcodecs/dec_video.c
+++ b/libmpcodecs/dec_video.c
@@ -26,6 +26,7 @@ extern int verbose; // defined in mplayer.c
#include "stheader.h"
#include "vd.h"
+#include "vf.h"
#include "dec_video.h"
@@ -152,15 +153,14 @@ int init_video(sh_video_t *sh_video,char* codecname,int vfm,int status){
extern int vo_directrendering;
-int decode_video(vo_functions_t *video_out,sh_video_t *sh_video,unsigned char *start,int in_size,int drop_frame){
+int decode_video(sh_video_t *sh_video,unsigned char *start,int in_size,int drop_frame){
+vf_instance_t* vf=sh_video->vfilter;
mp_image_t *mpi=NULL;
int blit_frame=0;
unsigned int t=GetTimer();
unsigned int t2;
double tt;
-sh_video->video_out=video_out;
-
//if(!(sh_video->ds->flags&1) || sh_video->ds->pack_no<5)
mpi=mpvdec->decode(sh_video, start, in_size, drop_frame);
@@ -185,13 +185,8 @@ video_time_usage+=tt;
if(drop_frame) return 0;
-if(!(mpi->flags&(MP_IMGFLAG_DIRECT|MP_IMGFLAG_DRAW_CALLBACK))){
- // blit frame:
- if(mpi->flags&MP_IMGFLAG_PLANAR)
- video_out->draw_slice(mpi->planes,mpi->stride,sh_video->disp_w,sh_video->disp_h,0,0);
- else
- video_out->draw_frame(mpi->planes);
-}
+//vo_draw_image(video_out,mpi);
+vf->put_image(vf,mpi);
t2=GetTimer()-t2;
tt=t2*0.000001f;
@@ -200,5 +195,3 @@ if(!(mpi->flags&(MP_IMGFLAG_DIRECT|MP_IMGFLAG_DRAW_CALLBACK))){
return blit_frame;
}
-
-