diff options
author | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-09-08 23:28:17 +0000 |
---|---|---|
committer | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-09-08 23:28:17 +0000 |
commit | 39c2e914dba42cd2411039da66a8168a3a0f5389 (patch) | |
tree | b9dc35b572cfe6f44e4b2d9546cc360f9291589c /dec_video.c | |
parent | 07e4b2db172162595eea6ae26725c46fddf0a2cb (diff) | |
download | mpv-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.c | 17 |
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; |