-
Notifications
You must be signed in to change notification settings - Fork 539
[FEATURE] Support for Source-Specific Multicast #802
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
Conversation
src/lib_ccx/ccx_common_option.h
Outdated
| LLONG debug_mask; // dbg_print will use this mask to print or ignore different types | ||
| LLONG debug_mask_on_debug; // If we're using temp_debug to enable/disable debug "live", this is the mask when temp_debug=1 | ||
| /* Networking */ | ||
| char *udpsrc; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
check surrounding indentation
src/lib_ccx/params_dump.c
Outdated
| case CCX_DS_NETWORK: | ||
| if (ccx_options.udpaddr == NULL) | ||
| if (ccx_options.udpsrc != NULL) | ||
| mprint ("Network, %s@%s:%d", ccx_options.udpsrc, ccx_options.udpaddr, ccx_options.udpport); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
udpaddr could be null, first check for null or in if add condition
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I follow. Is params_dump.c used without params.c being called? Unless I messed up the parameter parsing, if you have a udpsrc you must have a udpaddr -- even if it's just \0 -- so you won't end up in a condition where udpaddr is null if udpsrc is not also null.
Of course, if there's a path to params_dump.c which doesn't first use params.c, then yeah it might be null, but I'm assuming that's not the case.
src/lib_ccx/params.c
Outdated
| /* Network stuff */ | ||
| if (strcmp (argv[i],"-udp")==0 && i<argc-1) | ||
| { | ||
| char *at = strchr(argv[i + 1], '@'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Look for surrounding indentation
src/lib_ccx/networking.c
Outdated
| group.imr_multiaddr.s_addr = htonl(addr); | ||
| group.imr_interface.s_addr = htonl(INADDR_ANY); | ||
| if (setsockopt(sockfd, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&group, sizeof(group)) < 0) | ||
| int setsockopt_return = 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Look for surrounding indentation
|
One of the build error I see is "/usr/bin/ld: cannot find -lz" |
|
@anshul1912 You probably are using cmake to build. Earlier we were using zlib installed in the environment, hence that flag was required. Now we are using the supplied ones so that flag probably is obsolete. Could you try building again after removing this line : https://github.com/CCExtractor/ccextractor/blob/master/src/CMakeLists.txt#L86 ? |
|
Agh, tab spacing :( will fix |
|
whitespace issues are fixed |
| case CCX_DS_NETWORK: | ||
| if (ccx_options.udpaddr == NULL) | ||
| if (ccx_options.udpsrc != NULL) | ||
| mprint ("Network, %s@%s:%d", ccx_options.udpsrc, ccx_options.udpaddr, ccx_options.udpport); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
check for ccx_options.udpaddr to be null is still missing.
I would suggest to put (ccx_options.udpsrc != NULL) in else if that would make sure if (ccx_options.udpaddr == NULL) has failed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please see my reply to your previous comment, which was hidden due to white space changes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please see my reply to your previous comment, which was hidden due to white space changes.
|
@squarebracket : Sorry for incovinence, I arrpove your changes. |
|
@squarebracket If you'd make one small change (e.g. add your improvement to the changelog) and push that, the tests should be run again, and then we can see how it's impacting the program 👍 |
|
Should I just add it as |
|
Just add it on the next version number or so :) |
|
build errors are due to the python api stuff. I'd already preparing a PR to fix the build system to not break from the python stuff, would you like me to submit that first? |
|
That would be awesome 👍 |
|
Please reopen (or better, send a new PR) when the build errors are fixed. Other than that the changes seem reasonable. |
|
Build errors are unrelated to changes; the changes to the python API I'm talking about above are due to the currently broken automake caused by missing python symbols when building the code. Those I will submit in a different PR, since they are entirely unrelated to these changes. |
Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.2.5 to 7.2.6. - [Release notes](https://github.com/nedbat/coveragepy/releases) - [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst) - [Commits](coveragepy/coveragepy@7.2.5...7.2.6) --- updated-dependencies: - dependency-name: coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Willem <github@canihavesome.coffee>
My familiarity with the project is as follows (check one):
This is a simple change to allow for binding to source-specific multicast UDP feeds.
I've modified the GUI to allow for enough characters to bind to a SSM address, but it doesn't seem to work, even for simple UDP feeds. Can anyone confirm that the GUI works with UDP?
Also, I tried to validate that it works with Windows, but was unable. I see the packets in wireshark, but all of
ccextractor,vlc, andmpvdo not seem to get anything. If someone with more Windows-fu can validate that would be great.