Opened 4 years ago

Closed 4 years ago

#4545 closed defect (fixed)

MPEG Dash output does not pass MPD Validator

Reported by: FishB8 Owned by:
Priority: normal Component: avformat
Version: git-master Keywords: dash
Cc: Abbadon Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Various errors when testing the MPD output on the validator.

http://www-itec.uni-klu.ac.at/dash/?page_id=605

Change History (12)

comment:1 Changed 4 years ago by cehoyos

  • Keywords dash mpd removed
  • Resolution set to needs_more_info
  • Status changed from new to closed

comment:2 Changed 4 years ago by FishB8

I can provide more info... but I'm not sure where to start. All mpd output fails, but the validator only gives the first error it finds. If I manually fix and error another pops up, so there are multiple errors happening.

Suggestions welcome.

comment:3 Changed 4 years ago by FishB8

Actually I take that back, there only seems to one error. I messed up my copy/paste into the validator. I'll file a separate bug that is more specific.

comment:4 Changed 4 years ago by jamrial

You can reopen and edit this one instead, if it's still about mpeg dash output not validating

comment:5 Changed 4 years ago by FishB8

Ok.

To generate content for testing:

ffmpeg -y -f lavfi -i testsrc=size=1280x720:rate=30000/1001 -f lavfi -i sine=f=440:b=880:r=48000 -map 0:v -map 1:a -t 20 -c:v libx264 -b:v 1280k -g 30 -preset:v superfast -pix_fmt yuv420p -c:a libfdk_aac -ab 96k -ac 2 -f dash ./test.mpd

Running test.mpd through the validator produces the following:

Line:Col[12:93]:cvc-datatype-valid.1.2.1: ‘video’ is not a valid value for ‘integer’.
Line:Col[12:93]:cvc-attribute.3: The value ‘video’ of attribute ‘id’ on element ‘AdaptationSet?’ is not valid with respect to its type, ‘unsignedInt’.
Unexpected error: For input string: "video"

The same applies for 'audio' on an AdaptationSet? element following it.

Of course there is always a possibility the validator is incorrect, but I'm assuming it is authoritative since it is provided by the standards group.

comment:6 Changed 4 years ago by FishB8

  • Resolution needs_more_info deleted
  • Status changed from closed to reopened

comment:7 Changed 4 years ago by FishB8

I just now noticed that the validator is based off the 2012 standard, so it may not be up-to-date with the newer 2014 standard. Don't know enough about it yet to know what the differences are.

comment:8 Changed 4 years ago by jamrial

  • Status changed from reopened to open

A patch is on the mailing list.

comment:9 Changed 4 years ago by jamrial

  • Resolution set to fixed
  • Status changed from open to closed

Fixed in 32a4177a627ddce984a5a9ed7023d9a63dcbdf85, thanks for the report.

comment:10 Changed 4 years ago by cehoyos

  • Keywords dash added

comment:11 Changed 4 years ago by Abbadon

  • Resolution fixed deleted
  • Status changed from closed to reopened

I'm doing MPEG-DASH live streaming, and the generated mpd file is not valid when testing with the mentioned mpd validator.

The error:
Line:Col[12:150]:cvc-complex-type.3.2.2: Attribute ‘publishTime’ is not allowed to appear in element ‘MPD’.

I'm using the static windows build git-91b668a (2015-09-23), but had this error also with earlier builds.

The generated MPD file looks like this: http://pastebin.com/xf0kNREr

comment:12 Changed 4 years ago by cehoyos

  • Cc Abbadon added
  • Resolution set to fixed
  • Status changed from reopened to closed

Please open a new ticket, do not reopen fixed tickets. Don't forgot to paste the necessary information in the ticket, please do not point to external resources. Also add information on how to produce the faulty file, ie provide a simplified command line including the complete, uncut console output.

Note: See TracTickets for help on using tickets.