summaryrefslogtreecommitdiffstats
path: root/dec_video.c
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-09-08 23:28:17 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-09-08 23:28:17 +0000
commit39c2e914dba42cd2411039da66a8168a3a0f5389 (patch)
treeb9dc35b572cfe6f44e4b2d9546cc360f9291589c /dec_video.c
parent07e4b2db172162595eea6ae26725c46fddf0a2cb (diff)
downloadmpv-39c2e914dba42cd2411039da66a8168a3a0f5389.tar.bz2
mpv-39c2e914dba42cd2411039da66a8168a3a0f5389.tar.xz
IMGFMT_MPEGPES support
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@1874 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'dec_video.c')
-rw-r--r--dec_video.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/dec_video.c b/dec_video.c
index 39c4925988..0898b5d6d8 100644
--- a/dec_video.c
+++ b/dec_video.c
@@ -532,8 +532,21 @@ else
}
#endif
case VFM_MPEG:
- mpeg2_decode_data(video_out, start, start+in_size,drop_frame);
- if(!drop_frame) blit_frame=1;
+ if(out_fmt==IMGFMT_MPEGPES){
+ // hardware decoding:
+ static vo_mpegpes_t packet;
+ mpeg2_decode_data(video_out, start, start+in_size,3); // parse headers
+ packet.data=start;
+ packet.size=in_size-4;
+ packet.timestamp=sh_video->timer*90000.0;
+ packet.id=0x1E0; //+sh_video->ds->id;
+ planes[0]=&packet;
+ blit_frame=2;
+ } else {
+ // software decoding:
+ mpeg2_decode_data(video_out, start, start+in_size,drop_frame); // decode
+ if(!drop_frame) blit_frame=1;
+ }
break;
case VFM_RAW:
planes[0]=start;