Opened 12 years ago

Closed 12 years ago

#930 closed defect (fixed)

fails to play some rtsp streams

Reported by: mennucc1@… Owned by: r_togni@…
Priority: normal Component: streaming
Version: 1.0rc2 Severity: normal
Keywords: Cc: reimar
Blocked By: Blocking:
Reproduced by developer: Analyzed by developer:

Description

hi

MPlayer plays neither video nor audio of

rtsp://real.zmml.uni-bremen.de/lecture/extern/nachh/003.rm
rtsp://real.zmml.uni-bremen.de/lecture/extern/nachh/002.rm

This is a regression wrt 1.0rc1 , since the latter stream was playing fine in rc1

a.

ps: this bug was reported as http://bugs.debian.org/410424

Attachments (1)

realfix.diff (565 bytes) - added by reimar 12 years ago.
skip too short audio packets

Download all attachments as: .zip

Change History (6)

comment:1 Changed 12 years ago by reimar

  • Cc Reimar.Doeffinger@… added

This is not a regression, the latter stream still plays fine with SVN (both x86 and x86_64).
The first URL can be played by either using -nosound or doing -dumpstream and playing with -ss 1.
No idea why exactly it fails though.

comment:2 Changed 12 years ago by mennucc1@…

Now I can confirm that 003.rm fails, 002.rm works, even with the official 1.0rc2 release. (When I tried it before, I was having network problems, but I did not know).

comment:3 Changed 12 years ago by reimar

The problem I think is that the demuxer mistakes a data packet as an audio packet and overreads.
I will attach a hack that fixes it, but I doubt it is the proper way to do it.

Changed 12 years ago by reimar

skip too short audio packets

comment:4 Changed 12 years ago by reimar

comment:5 Changed 12 years ago by r_togni@…

  • Component changed from vd to streaming
  • Resolution set to fixed
  • Status changed from new to closed

Fixed in svn
The problem was in the stream layer, not in the demuxer: the flags for the auxiliary stream id=2 (realevent) were parsed incorrectly and the packet was passed on with id=0 (audio stream). Since that packet was shorted than the minimum audio fragment for the codec used, the demuxer overread the packet and lost sync.

The overrread problem will be addressed separately, since it's not the solution for this bug.

Please note that if you dumped the stream locally, the dumped copy will still be unplayable; dump it again or wait for the overread workaround.

Note: See TracTickets for help on using tickets.