Mercurial > mplayer.hg
comparison libmpdemux/video.c @ 9610:76c6d8f1ebf5
this is a combo patch that:
1) adds an experimental TS demuxer to mplayer
2) adds an input (streaming) interface from DVB cards.
It compiles and runs with the following versions of the drivers:
dvb-kernel (HEAD) (with stock kernel 2.4.20) and 0.9.4 (with kernel 2.4.18)
patch by Nico <nsabbi@libero.it>
some cleanups, ts demuxer fixes by me
author | arpi |
---|---|
date | Sun, 16 Mar 2003 20:13:28 +0000 |
parents | 0197c1e933fe |
children | 1d598bf65571 |
comparison
equal
deleted
inserted
replaced
9609:bb8593ea37cb | 9610:76c6d8f1ebf5 |
---|---|
132 // for MPEG headers: | 132 // for MPEG headers: |
133 if (!demux_is_mpeg_rtp_stream(d_video->demuxer)) break; | 133 if (!demux_is_mpeg_rtp_stream(d_video->demuxer)) break; |
134 // otherwise fall through to... | 134 // otherwise fall through to... |
135 #endif | 135 #endif |
136 case DEMUXER_TYPE_PVA: | 136 case DEMUXER_TYPE_PVA: |
137 case DEMUXER_TYPE_MPEG_TS: | |
137 case DEMUXER_TYPE_MPEG_ES: | 138 case DEMUXER_TYPE_MPEG_ES: |
138 case DEMUXER_TYPE_MPEG_PS: { | 139 case DEMUXER_TYPE_MPEG_PS: { |
139 //mpeg_header_parser: | 140 //mpeg_header_parser: |
140 // Find sequence_header first: | 141 // Find sequence_header first: |
141 videobuf_len=0; videobuf_code_len=0; | 142 videobuf_len=0; videobuf_code_len=0; |
268 int in_size=0; | 269 int in_size=0; |
269 | 270 |
270 *start=NULL; | 271 *start=NULL; |
271 | 272 |
272 if(demuxer->file_format==DEMUXER_TYPE_MPEG_ES || demuxer->file_format==DEMUXER_TYPE_MPEG_PS | 273 if(demuxer->file_format==DEMUXER_TYPE_MPEG_ES || demuxer->file_format==DEMUXER_TYPE_MPEG_PS |
273 || demuxer->file_format==DEMUXER_TYPE_PVA | 274 || demuxer->file_format==DEMUXER_TYPE_PVA || demuxer->file_format==DEMUXER_TYPE_MPEG_TS |
274 #ifdef STREAMING_LIVE_DOT_COM | 275 #ifdef STREAMING_LIVE_DOT_COM |
275 || (demuxer->file_format==DEMUXER_TYPE_RTP && demux_is_mpeg_rtp_stream(demuxer)) | 276 || (demuxer->file_format==DEMUXER_TYPE_RTP && demux_is_mpeg_rtp_stream(demuxer)) |
276 #endif | 277 #endif |
277 ){ | 278 ){ |
278 int in_frame=0; | 279 int in_frame=0; |
420 frame_time=d_video->pts-pts1; | 421 frame_time=d_video->pts-pts1; |
421 break; | 422 break; |
422 } | 423 } |
423 | 424 |
424 if(demuxer->file_format==DEMUXER_TYPE_MPEG_PS || | 425 if(demuxer->file_format==DEMUXER_TYPE_MPEG_PS || |
426 demuxer->file_format==DEMUXER_TYPE_MPEG_TS || | |
425 demuxer->file_format==DEMUXER_TYPE_MPEG_ES){ | 427 demuxer->file_format==DEMUXER_TYPE_MPEG_ES){ |
426 | 428 |
427 // if(pts>0.0001) printf("\r!!! pts: %5.3f [%d] (%5.3f) \n",pts,picture_coding_type,i_pts); | 429 // if(pts>0.0001) printf("\r!!! pts: %5.3f [%d] (%5.3f) \n",pts,picture_coding_type,i_pts); |
428 | 430 |
429 sh_video->pts+=frame_time; | 431 sh_video->pts+=frame_time; |