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

[WIP] feat: added demuxer module #1662

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

steel-bucket
Copy link

@steel-bucket steel-bucket commented Feb 11, 2025

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(2 previous contributions).

In this PR, I have attempted to port the large demuxer module to Rust, the primary logic of the heavily interconnected C libraries file_functions.c, ccx_gxf.c, ccx_demuxer.c and their corresponding header files has aleady been implemented here. There's one more C library, the ccx_demuxer_mxf.c but It was not connected to this, so it could be easily implemented later. I am using a step by step method in which the first step is to use libc to write all the logic, which I have done here. After this I'll replace libc wherever it is used with inbuilt rust functions to ensure memory safety. Only after that I'll be directly calling them through C and then writing tests. This PR was inspired by the ones done for the 708 Decoder in CCextractor.
Any criticism or suggestion is wholeheartedly welcome, I'll be working on this further.

@ccextractor-bot
Copy link
Collaborator

CCExtractor CI platform finished running the test files on linux. Below is a summary of the test results, when compared to test for commit cbd8e27...:

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

All tests passing on the master branch were passed completely.

NOTE: The following tests have been failing on the master branch as well as the PR:


Check the result page for more info.

@cfsmp3 cfsmp3 requested a review from prateekmedia February 12, 2025 20:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants