Skip to content

Conversation

@lars18th
Copy link
Contributor

When using the satipc module with "no_pids_all" enabled, it has sense that with "emulate_pids_all" enabled the pids emulation processing will be done locally. So instead of sending "pids=all" the request contains the full pids list.

This patch fixes this issue. Therefore, you don't need that the target SAT>IP box have real "pids=all" support. Using -k -s ~satip_server will be sufficient.

When using the satipc module with "no_pids_all" enabled, it has sense that with "emulate_pids_all" enabled the pids emulation processing will be done locally. So instead of sending "pids=all" the request contains the full pids list.

This patch fixes this issue. Therefore, you don't need that the target SAT>IP box have real "pids=all" support. Using `-k -s ~satip_server` will be sufficient.
@lars18th
Copy link
Contributor Author

lars18th commented Oct 1, 2025

Please do not merge yet. I'll improve it a bit.

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 1, 2025

Not sure if it's worth emulating this on both ends, couldn't you just run minisatip on the target device and use -k there? Then the client (minisatip) could send pids=all normally.

@lars18th
Copy link
Contributor Author

lars18th commented Oct 1, 2025

Hi @Jalle19 ,

Don't worry about that! My next improvement is to use -k for local pids emulation and -s ~ for remote SAT>IP servers. But in both cases it will be independent. Te reason is because it not have sense to enforce both and also when using -s ~ we need to do real emulation (not like now that be do a fake emulation). Using this behaviour the user could select to use local emulation or send pids=all and the emulation will be done remotely (if the remote server needs it).

Regards.

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 1, 2025

I don't understand why any of this is necessary? If you have a device that doesn't support pids=all, run minisatip on it with -k. What else is needed?

@lars18th
Copy link
Contributor Author

lars18th commented Oct 1, 2025

I don't understand why any of this is necessary? If you have a device that doesn't support pids=all, run minisatip on it with -k. What else is needed?

🤣 🤣 🤣 🤣 🤣

I'm using minisatip on one X86 powerful server receiving the streams from several E2 boxes running minisatip too. However, when emulating pids all... why want you to execute it on the low end hardware tuners instead of a powerful CPU in the central minisatip instance?

Seriously, when using the satipc module you don't need to use only good SAT>IP tuners. And emulate the pids=all feature could be interesting if the user wants to use it. By default this is not enabled and it's only an enhanced feature. Futhermore, in the future I'll reuse it to support someting requested years ago: #793.

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 1, 2025

I have yet to see any evidence whatsoever that emulating pids all is an expensive operation that your average Enigma box cannot handle on its own.

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 1, 2025

In general it's a good idea to keep hacks to a minimum, and emulating pids=all is a hack

@lars18th
Copy link
Contributor Author

lars18th commented Oct 2, 2025

In general it's a good idea to keep hacks to a minimum, and emulating pids=all is a hack

The emulation of pids=all it's a feature. It's a hack in Enigma2 boxes when it's enabled by default.

Please note that “minisatip” is a powerful SAT>IP server for professionals and researchers. Any “optional” feature can be very useful for engineers. The only important thing is to not activate features by default that may be annoying to a regular user.

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 2, 2025

I'm thinking more about the maintainability of the code

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 2, 2025

Professionals don't use hacky hardware, hobbyists do.

@lars18th
Copy link
Contributor Author

lars18th commented Oct 2, 2025

Professionals don't use hacky hardware, hobbyists do.

Why do you think that emulating pids=all is related to hacky hardware? This patch is to provide a functionality. It's true that originally it was evolved from a limitation of some E2 boxes. But I'm a professional and engineer, and I use SAT>IP for several use cases. So, please stop to think that minisatip is only a simple server inside a small STB. When using the satipc module it evolves to a full central server processing streams from multiple tuners. And this PR (when enhanced) will be the base to provide the implementation of the idea described in #793.

So please wait until the patch is complete.

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 2, 2025

I don't think #793 is a good idea either. It's non-standard and none of this is required if you use proper DVB hardware. The limitation of E2 boxes is the original and only remaining reason for this functionality, and thus it should be limited in scope and only used on such devices.

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 2, 2025

Do you have any examples of hardware that can't do pids=all, except for Enigma boxes?

@lars18th
Copy link
Contributor Author

lars18th commented Oct 2, 2025

I don't think #793 is a good idea either. It's non-standard and none of this is required if you use proper DVB hardware. The limitation of E2 boxes is the original and only remaining reason for this functionality, and thus it should be limited in scope and only used on such devices.

My idea is to implement this new functionality pids=all,nav (or allnov I'm not sure) that indicates: send me all pids but block every Audio/Video packet.

And this will not breaks anything. It only adds a new word (nav) that has this sense: enable pids all emulation and don't pass any audio or video pid. Why this? Imagine that you want to receive ALL other pids, mainly tables plus something else. This reduces the bitrate to a minium (around 1~500Kbps).

This will have no impact on you (an advanced user). And for me and other engineers, it will be a very valuable feature.

Anyway, please wait until I complete this PR.

@Jalle19
Copy link
Collaborator

Jalle19 commented Oct 2, 2025

How exactly is it valuable? What does any of this actually fix or enable?

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