Changeset 155614be656a8ae32310a792d3b39900bf06bfbe
- Timestamp:
- 02/09/08 23:22:51
(3 months ago)
- Author:
- Laurent Aimar <fenrir@videolan.org>
- git-committer:
- Laurent Aimar <fenrir@videolan.org> 1220390571 +0200
- git-parent:
[8fab20701f86d1f51a60fce4eed2a04856e7db14]
- git-author:
- Laurent Aimar <fenrir@videolan.org> 1220390248 +0200
- Message:
Fixed a big rtp demuxer.
DEMUX_GET_PTS_DELAY should returns microsecond.
You should NOT remove caching to PTS to create PCR.
It was probably a workaround for the previous bug. It could explains
the problems with TS over RTP (for TS with small pcr/pts delay that is, not
created by VLC)
Implemented missing DEMUX_CAN_* query.
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| ra87c0c1 |
r155614b |
|
| 335 | 335 | float *v = va_arg (args, float *); |
|---|
| 336 | 336 | *v = 0.; |
|---|
| 337 | | return 0; |
|---|
| | 337 | return VLC_SUCCESS; |
|---|
| 338 | 338 | } |
|---|
| 339 | 339 | |
|---|
| … | … | |
| 343 | 343 | int64_t *v = va_arg (args, int64_t *); |
|---|
| 344 | 344 | *v = 0; |
|---|
| 345 | | return 0; |
|---|
| | 345 | return VLC_SUCCESS; |
|---|
| 346 | 346 | } |
|---|
| 347 | 347 | |
|---|
| … | … | |
| 349 | 349 | { |
|---|
| 350 | 350 | int64_t *v = va_arg (args, int64_t *); |
|---|
| 351 | | *v = p_sys->caching; |
|---|
| 352 | | return 0; |
|---|
| | 351 | *v = p_sys->caching * 1000; |
|---|
| | 352 | return VLC_SUCCESS; |
|---|
| | 353 | } |
|---|
| | 354 | |
|---|
| | 355 | case DEMUX_CAN_PAUSE: |
|---|
| | 356 | case DEMUX_CAN_SEEK: |
|---|
| | 357 | case DEMUX_CAN_CONTROL_PACE: |
|---|
| | 358 | { |
|---|
| | 359 | bool *v = (bool*)va_arg( args, bool * ); |
|---|
| | 360 | *v = false; |
|---|
| | 361 | return VLC_SUCCESS; |
|---|
| 353 | 362 | } |
|---|
| 354 | 363 | } |
|---|
| … | … | |
| 454 | 463 | { |
|---|
| 455 | 464 | block->i_dts = 0; /* RTP does not specify this */ |
|---|
| 456 | | es_out_Control (demux->out, ES_OUT_SET_PCR, |
|---|
| 457 | | block->i_pts - demux->p_sys->caching * 1000); |
|---|
| | 465 | es_out_Control (demux->out, ES_OUT_SET_PCR, block->i_pts ); |
|---|
| 458 | 466 | es_out_Send (demux->out, (es_out_id_t *)data, block); |
|---|
| 459 | 467 | } |
|---|