No input on multicast udp source #844

Closed
opened 2026-01-29 16:54:57 +00:00 by claunia · 2 comments
Owner

Originally created by @pszemus on GitHub (Sep 15, 2025).

CCextractor built from master is stuck on waiting for source data when the input is a multicast address.

This works:

$ ./ccextractor --udp 127.0.0.1:10003
CCExtractor 0.94, Carlos Fernandez Sanz, Volker Quetschke.
Teletext portions taken from Petr Kutalek's telxcc
--------------------------------------------------------------------------
Input: Network, 127.0.0.1:10003@127.0.0.1:10003
[Extract: 1] [Stream mode: Autodetect]
[Program : Auto ] [Hauppage mode: No] [Use MythTV code: Auto]
[CEA-708: 63 decoders active]
[CEA-708: using charset "none" for all services]
[Timing mode: Auto] [Debug: No] [Buffer input: Yes]
[Use pic_order_cnt_lsb for H.264: No] [Print CC decoder traces: No]
[Target format: .srt] [Encoding: UTF-8] [Delay: 0] [Trim lines: No]
[Add font color data: Yes] [Add font typesetting: Yes]
[Convert case: No][Filter profanity: No] [Video-edit join: No]
[Extraction start time: not set (from start)]
[Extraction end time: not set (to end)]
[Live stream: No] [Clock frequency: 90000]
[Teletext page: Autodetect]
[Start credits text: None]
[Quantisation-mode: CCExtractor's internal function]
[Tesseract PSM: 3]
Warning: Source '127.0.0.1:10003' contains port - this should be hostname only
Extracting hostname '127.0.0.1' from '127.0.0.1:10003'
Source address: 127.0.0.1
Source: 127.0.0.1
Source port: 10003

----------------------------------------------------------------------
Reading from UDP socket 127.0.0.1@127.0.0.1:10003
File seems to be a transport stream, enabling TS mode
Analyzing data in general mode

This doesn't:

$ ./ccextractor --udp 239.100.0.1:1234
CCExtractor 0.94, Carlos Fernandez Sanz, Volker Quetschke.
Teletext portions taken from Petr Kutalek's telxcc
--------------------------------------------------------------------------
Input: Network, 239.100.0.1:1234@239.100.0.1:1234
[Extract: 1] [Stream mode: Autodetect]
[Program : Auto ] [Hauppage mode: No] [Use MythTV code: Auto]
[CEA-708: 63 decoders active]
[CEA-708: using charset "none" for all services]
[Timing mode: Auto] [Debug: No] [Buffer input: Yes]
[Use pic_order_cnt_lsb for H.264: No] [Print CC decoder traces: No]
[Target format: .srt] [Encoding: UTF-8] [Delay: 0] [Trim lines: No]
[Add font color data: Yes] [Add font typesetting: Yes]
[Convert case: No][Filter profanity: No] [Video-edit join: No]
[Extraction start time: not set (from start)]
[Extraction end time: not set (to end)]
[Live stream: No] [Clock frequency: 90000]
[Teletext page: Autodetect]
[Start credits text: None]
[Quantisation-mode: CCExtractor's internal function]
[Tesseract PSM: 3]
Warning: Source '239.100.0.1:1234' contains port - this should be hostname only
Extracting hostname '239.100.0.1' from '239.100.0.1:1234'
Source address: 239.100.0.1
Source: 239.100.0.1
Source port: 1234

----------------------------------------------------------------------
Reading from UDP socket 239.100.0.1@239.100.0.1:1234

It worked fine with a non-rust built from 3f44115 (broken by a commit that disabled non-rust builds: commit ba59eb0)

Originally created by @pszemus on GitHub (Sep 15, 2025). CCextractor built from master is stuck on waiting for source data when the input is a multicast address. This works: ``` $ ./ccextractor --udp 127.0.0.1:10003 CCExtractor 0.94, Carlos Fernandez Sanz, Volker Quetschke. Teletext portions taken from Petr Kutalek's telxcc -------------------------------------------------------------------------- Input: Network, 127.0.0.1:10003@127.0.0.1:10003 [Extract: 1] [Stream mode: Autodetect] [Program : Auto ] [Hauppage mode: No] [Use MythTV code: Auto] [CEA-708: 63 decoders active] [CEA-708: using charset "none" for all services] [Timing mode: Auto] [Debug: No] [Buffer input: Yes] [Use pic_order_cnt_lsb for H.264: No] [Print CC decoder traces: No] [Target format: .srt] [Encoding: UTF-8] [Delay: 0] [Trim lines: No] [Add font color data: Yes] [Add font typesetting: Yes] [Convert case: No][Filter profanity: No] [Video-edit join: No] [Extraction start time: not set (from start)] [Extraction end time: not set (to end)] [Live stream: No] [Clock frequency: 90000] [Teletext page: Autodetect] [Start credits text: None] [Quantisation-mode: CCExtractor's internal function] [Tesseract PSM: 3] Warning: Source '127.0.0.1:10003' contains port - this should be hostname only Extracting hostname '127.0.0.1' from '127.0.0.1:10003' Source address: 127.0.0.1 Source: 127.0.0.1 Source port: 10003 ---------------------------------------------------------------------- Reading from UDP socket 127.0.0.1@127.0.0.1:10003 File seems to be a transport stream, enabling TS mode Analyzing data in general mode ``` This doesn't: ``` $ ./ccextractor --udp 239.100.0.1:1234 CCExtractor 0.94, Carlos Fernandez Sanz, Volker Quetschke. Teletext portions taken from Petr Kutalek's telxcc -------------------------------------------------------------------------- Input: Network, 239.100.0.1:1234@239.100.0.1:1234 [Extract: 1] [Stream mode: Autodetect] [Program : Auto ] [Hauppage mode: No] [Use MythTV code: Auto] [CEA-708: 63 decoders active] [CEA-708: using charset "none" for all services] [Timing mode: Auto] [Debug: No] [Buffer input: Yes] [Use pic_order_cnt_lsb for H.264: No] [Print CC decoder traces: No] [Target format: .srt] [Encoding: UTF-8] [Delay: 0] [Trim lines: No] [Add font color data: Yes] [Add font typesetting: Yes] [Convert case: No][Filter profanity: No] [Video-edit join: No] [Extraction start time: not set (from start)] [Extraction end time: not set (to end)] [Live stream: No] [Clock frequency: 90000] [Teletext page: Autodetect] [Start credits text: None] [Quantisation-mode: CCExtractor's internal function] [Tesseract PSM: 3] Warning: Source '239.100.0.1:1234' contains port - this should be hostname only Extracting hostname '239.100.0.1' from '239.100.0.1:1234' Source address: 239.100.0.1 Source: 239.100.0.1 Source port: 1234 ---------------------------------------------------------------------- Reading from UDP socket 239.100.0.1@239.100.0.1:1234 ``` <and stuck forever> It worked fine with a non-rust built from 3f44115 (broken by a commit that disabled non-rust builds: commit ba59eb0)
Author
Owner

@pszemus commented on GitHub (Sep 15, 2025):

I think there is a bug in setting the source address. Please see the "Warning" message above.
Also, if I set let source = None; here: https://github.com/CCExtractor/ccextractor/blob/master/src/rust/lib_ccxr/src/net/source.rs#L203 the code begins to work with only address and port set.

Will try to send a PR

@pszemus commented on GitHub (Sep 15, 2025): I think there is a bug in setting the `source` address. Please see the "Warning" message above. Also, if I set `let source = None;` here: https://github.com/CCExtractor/ccextractor/blob/master/src/rust/lib_ccxr/src/net/source.rs#L203 the code begins to work with only `address` and `port` set. Will try to send a PR
Author
Owner

@pszemus commented on GitHub (Sep 15, 2025):

I've manage to fix/implement the original (C++) format of the --udp parameter:

--udp [[src@]host:]port

Updating the PR...

@pszemus commented on GitHub (Sep 15, 2025): I've manage to fix/implement the original (C++) format of the `--udp` parameter: ``` --udp [[src@]host:]port ``` Updating the PR...
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ccextractor#844