Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[IMPROVEMENT] MXF caption frame rates #1101

Merged
merged 2 commits into from Aug 16, 2019

Conversation

@jgreer
Copy link
Contributor

commented Aug 15, 2019

In raising this pull request, I confirm the following (please check boxes):

  • I have read and understood the contributors guide.
  • I have checked that another pull request for this purpose does not exist.
  • I have considered, and confirmed that this submission will be valuable to others.
  • I accept that this submission may not be used, and the pull request closed at the will of the maintainer.
  • I give this submission freely, and claim no ownership to its content.
  • I have mentioned this change in the changelog.

My familiarity with the project is as follows (check one):

  • I have never used CCExtractor.
  • I have used CCExtractor just a couple of times.
  • I absolutely love CCExtractor, but have not contributed previously.
  • I am an active contributor to CCExtractor.

Update the MXF demuxer so that it parses frame rates out of the CDP data. Without this, ccextractor assumed 29.97 fps in all content, so for example, on a 59.94 fps file the caption timings were double what they should be.

@jgreer jgreer changed the title **[IMPROVEMENT]** MXF caption frame rates [IMPROVEMENT] MXF caption frame rates Aug 15, 2019

@@ -307,7 +326,7 @@ static int mxf_read_cdp_data(struct ccx_demuxer *demux, int size, struct demuxer
cc_count = buffered_get_byte(demux) & 0x1F;
len++;
// -4 for cdp footer length
if ( (cc_count * 3) != (size - len - 4))
if ( (cc_count * 3) > (size - len - 4))

This comment has been minimized.

Copy link
@jgreer

jgreer Aug 15, 2019

Author Contributor

Some files include extra padding, so this skips the warning when there's extra data, as opposed to missing data.

@ccextractor-bot

This comment has been minimized.

Copy link
Collaborator

commented Aug 15, 2019

CCExtractor CI platform finished running the test files on windows. Below is a summary of the test results:

Report Name Tests Passed
Broken 0/13
DVB 0/7
DVR-MS 0/2
General 0/27
Hauppage 0/3
MP4 0/3
NoCC 0/10
Teletext 0/21
WTV 0/13
XDS 0/34
CEA-708 0/14
DVD 0/3
Options 0/86

All tests were passed completely.


Check the result page for more info.
@ccextractor-bot

This comment has been minimized.

Copy link
Collaborator

commented Aug 15, 2019

CCExtractor CI platform finished running the test files on linux. Below is a summary of the test results:

Report Name Tests Passed
Broken 12/13
DVB 3/7
DVR-MS 2/2
General 27/27
Hauppage 3/3
MP4 3/3
NoCC 10/10
Teletext 14/21
WTV 13/13
XDS 33/34
CEA-708 14/14
DVD 3/3
Options 81/86

It seems that not all tests were passed completely. This is an indication that the output of some files is not as expected (but might be according to you).

Your PR breaks these cases:


Check the result page for more info.

@cfsmp3 cfsmp3 merged commit 2bcd993 into CCExtractor:master Aug 16, 2019

3 of 4 checks passed

CI - linux Not all tests completed successfully, please check
Details
CI - windows Tests completed
Details
WIP Ready for review
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.