catalinii / minisatip

minisatip is an SATIP server for linux using local DVB-S2, DVB-C, DVB-T or ATSC cards
https://minisatip.org
325 stars 78 forks source link

Astra Cesbo with minisatip CI+ not functioning #1028

Closed Delitants closed 1 year ago

Delitants commented 1 year ago

Minisatip 1.2.48 (with CI+ built and valid CAM) ExecStart=/root/minisatip-1.2.48/minisatip -I minisatip -O -x 8081 -y 554 -D 1 -e 1 -c 1:1 -j 1:5-1120 -l ca -M *:5.0-5.0 -t -F /var/log/minisatip.log -m 001122334410

Astra Cesbo [ae302329 2022-09-20] New Adapter - Sat>IP rtsp://localhost:554 Type: DVB-S2 Adapter: 0 Freq: 10727 Pol: Horizontal SYM: 30000

Virtual adapter in Astra connects to minisatip but shows 0 bitrate, however I able to scan channels and select them, but only open channels are successfully streaming to astra, while encrypted do not pass decoding process on minisatip level. CI+ properly configured and CAM is authenticated, I can stream same channel in Tvheadend+minisatip for example.

`[20/12 07:59:43.626 main]: Read HTTP (handle -1) [192.168.0.55:55409] sid -1, sock 10 [20/12 07:59:43.626 main]: Reply (handle 10) [192.168.0.55:55409] content_len:1205, sock 10 [20/12 07:59:43.627 main]: select_and_execute[10]: Close on socket 10 (sid:-1) from 192.168.0.55:55409 - type http (3) errno 0 [20/12 07:59:43.627 main]: minisatip.c:1630 get_sid returns NULL for s_id = -1 [20/12 07:59:43.627 main]: Requested sid close -1 timeout -1 type -1, sock 10, handle 10, timeout 1 [20/12 07:59:43.627 main]: closing stream sid -1 [20/12 07:59:43.627 main]: sockets_del: sock 10 -> handle 10, sid -1, overflow bytes 0, allocated 0, used 0, unsend packets 0 [20/12 07:59:43.627 main]: sockets_del: sock 10 Last open socket is at index 10 current_handle 10 [20/12 07:59:43.627 main]: Destroying mutex 0x563b041cd8d8 [20/12 07:59:43.627 main]: Delete socket 10 done: sid -1 20/12 07:59:45.135 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C01, data length 6

20/12 07:59:45.135 AD1: CI+ CA1: operator profile initialised [20/12 07:59:45.136 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C04, data length 0 20/12 07:59:45.350 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C05, data length 25

20/12 07:59:45.350 AD1: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C06, data length 9 [20/12 07:59:46.504 AD1]: Found session_number 8 for resource 400041, name EN50221_APP_MMI_RESOURCEID, status 00 20/12 07:59:46.517 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C09, data length 41

20/12 07:59:46.517 AD1: CI+ CA1: F0 27 43 0B 01 22 26 00 03 60 C1 02 75 00 03 43 0B 01 22 26 00 05 60 C1 02 75 00 03 43 0B 01 21 88 00 14 00 C2 03 00 00 04 20/12 07:59:46.517 AD1: Please TUNE to transponder 43b1 V [20/12 07:59:49.517 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C0A, data length 18 [20/12 07:59:49.542 AD1]: ca_read_apdu: CA 1, session 8, name EN50221_APP_MMI_RESOURCEID, read tag 9F8801, data length 2 [20/12 07:59:49.542 AD1]: mmi display ctl cb received for CA 1 session_num 8 cmd_id 0x01 mmi_mode 1 [20/12 07:59:49.542 AD1]: ca_write_apdu: CA 1, session 8, name EN50221_APP_MMI_RESOURCEID, write tag 9F8802, data length 2

20/12 08:00:09.723 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C07, data length 6

20/12 08:00:09.723 AD1: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C06, data length 9 20/12 08:00:10.877 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C09, data length 41

20/12 08:00:10.877 AD1: CI+ CA1: F0 27 43 0B 01 22 26 00 03 60 C1 02 75 00 03 43 0B 01 22 26 00 05 60 C1 02 75 00 03 43 0B 01 21 88 00 14 00 C2 03 00 00 04 20/12 08:00:10.877 AD1: Please TUNE to transponder 43b1 V [20/12 08:00:13.055 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:00:13.055 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 [20/12 08:00:13.877 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C0A, data length 18 [20/12 08:00:23.073 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:00:23.073 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 [20/12 08:00:33.090 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:00:33.090 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 20/12 08:00:34.915 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C07, data length 6

20/12 08:00:34.915 AD1: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C06, data length 9 20/12 08:00:36.069 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C09, data length 41

20/12 08:00:36.069 AD1: CI+ CA1: F0 27 43 0B 01 22 26 00 03 60 C1 02 75 00 03 43 0B 01 22 26 00 05 60 C1 02 75 00 03 43 0B 01 21 88 00 14 00 C2 03 00 00 04 20/12 08:00:36.069 AD1: Please TUNE to transponder 43b1 V [20/12 08:00:39.069 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C0A, data length 18 [20/12 08:00:43.107 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:00:43.107 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 [20/12 08:00:53.125 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:00:53.125 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 20/12 08:01:00.127 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C07, data length 6

[20/12 08:01:00.128 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C06, data length 9 20/12 08:01:01.281 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C09, data length 41

20/12 08:01:01.281 AD1: CI+ CA1: F0 27 43 0B 01 22 26 00 03 60 C1 02 75 00 03 43 0B 01 22 26 00 05 60 C1 02 75 00 03 43 0B 01 21 88 00 14 00 C2 03 00 00 04 20/12 08:01:01.281 AD1: Please TUNE to transponder 43b1 V [20/12 08:01:03.144 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:01:03.144 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 [20/12 08:01:04.281 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C0A, data length 18 [20/12 08:01:13.161 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:01:13.161 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 [20/12 08:01:23.180 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:01:23.180 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 20/12 08:01:25.327 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C07, data length 6

[20/12 08:01:25.328 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C06, data length 9 20/12 08:01:26.481 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C09, data length 41

20/12 08:01:26.481 AD1: CI+ CA1: F0 27 43 0B 01 22 26 00 03 60 C1 02 75 00 03 43 0B 01 22 26 00 05 60 C1 02 75 00 03 43 0B 01 21 88 00 14 00 C2 03 00 00 04 20/12 08:01:26.481 AD1: Please TUNE to transponder 43b1 V [20/12 08:01:29.481 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C0A, data length 18 [20/12 08:01:33.198 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:01:33.198 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 [20/12 08:01:43.215 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:01:43.215 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 20/12 08:01:50.503 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C07, data length 6

[20/12 08:01:50.504 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C06, data length 9 20/12 08:01:51.657 AD1: ca_read_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, read tag 9F9C09, data length 41

20/12 08:01:51.657 AD1: CI+ CA1: F0 27 43 0B 01 22 26 00 03 60 C1 02 75 00 03 43 0B 01 22 26 00 05 60 C1 02 75 00 03 43 0B 01 21 88 00 14 00 C2 03 00 00 04 20/12 08:01:51.657 AD1: Please TUNE to transponder 43b1 V [20/12 08:01:53.233 CA_poll]: Sending time to CA 1 to session 2, response interval: 10000 [20/12 08:01:53.233 CA_poll]: ca_write_apdu: CA 1, session 2, name EN50221_APP_DATETIME_RESOURCEID, write tag 9F8441, data length 5 [20/12 08:01:54.657 AD1]: ca_write_apdu: CA 1, session 4, name CIPLUS_APP_OPRF_RESOURCEID, write tag 9F9C0A, data length 18 ^C`

Jalle19 commented 1 year ago

Can you play the channel using the RTSP/HTTP URL from the web interface (when you have Astra trying to play the channel)? And did you mean that encrypted channels work in tvheadend when using minisatip as the SAT>IP server?

Delitants commented 1 year ago

Can you play the channel using the RTSP/HTTP URL from the web interface (when you have Astra trying to play the channel)? And did you mean that encrypted channels work in tvheadend when using minisatip as the SAT>IP server?

What web interface? I'm not using any web interfaces. Tvheadend was a primary client for minisatip and I want to get rid of it. I mean astra reads any channel from minisatip if it's FREE-TO-AIR type, while tvheadend reads ANY. When astra makes a request, minisatip for some reason does not bother to send channel via CI interface. Please get trial version https://cesbo.com/orders/software/astra/buy/ and see yourself, it's easier than me to try to explain. Astra has specific sat>ip form to fill up in "New Adapter" menu and something not complies with the protocol.

Jalle19 commented 1 year ago

What web interface?

minisatip's web interface. If tvheadend works but Astra doesn't, please compare the stream URLs in the web interface to see what the difference is.

it's easier than me to try to explain.

It is not, but I might try it at some point.

Jalle19 commented 1 year ago

A complete log from minisatip might also help, the snippet you posted isn't really showing anything.

Delitants commented 1 year ago

That is a complete log from beginning to the end of tuning in astra. Yes, exactly it does not show anything just like channel doesn’t play anything. What is the problem fir you to get astra and test? It’s 5 minutes of work, but spending here more to discuss.On Dec 19, 2022, at 10:11 PM, Sam Stenvall @.***> wrote: A complete log from minisatip might also help, the snippet you posted isn't really showing anything.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

Jalle19 commented 1 year ago

That sounds like an Astra problem then 🤷

Jalle19 commented 1 year ago

Does Astra have any logs you can post?

Jalle19 commented 1 year ago

Please also post a log with -l general instead of -l ca

Yuri666 commented 1 year ago

You just need put your CAM to TV and disble operator profile in the CAM menu.

Yuri666 commented 1 year ago

I suggest to disable operator profile handler in minisatip for some reasons. For this just needs to change line https://github.com/catalinii/minisatip/blob/master/src/ca.c#L1774 from uint8_t tag_part = 0x04; / operator_info_req / to uint8_t tag_part = 0x08; / operator_exit /

Jalle19 commented 1 year ago

That wouldn't explain why it works with tvheadend + minisatip

Yuri666 commented 1 year ago

I don't know how tvh works, but according the log CAM not initialized properly

Yuri666 commented 1 year ago

And yes, second point how astra configured to connect to minisatip. Should be enabled pid filtering in connection

Delitants commented 1 year ago

Trust me, CAM is fine.I’m going to look at web interface of minisatip to see the url difference when I get a chance.On Dec 20, 2022, at 11:33 PM, Yuri666 @.***> wrote: I don't know how tvh works, but according the log CAM not initialized properly

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

Yuri666 commented 1 year ago

Trust me, CAM is fine.

Ok. Just provide full log. From start minisatip to connect from astra. With -l general

Delitants commented 1 year ago

Does Astra have any logs you can post?

No. Astra does not report anything but "[Museum 4K i/1] Bitrate:42Kbit/s PES:0 CC:0"

minisatip's web interface. If tvheadend works but Astra doesn't, please compare the stream URLs in the web interface to see what the difference is. Screenshot 2022-12-21 at 5 49 33 PM

First is rtsp://192.168.0.57:555/?fe=0&src=1&freq=10727&pol=H&msys=DVBS2&sr=30000&pids=357,4165,4164,0,356,1,17,16,18 Second is rtsp://192.168.0.57:555/?fe=0&src=1&freq=10727&pol=H&msys=DVBS2&sr=30000&pids=all

If I just copy one of these URL's and paste in Astra as "Stream", it works decoded. But if I fill up a new virtual adapter form in Astra with type sat>ip and scan and add the channel attached to this adapter - it does not work, which is pity.

Yuri666 commented 1 year ago

Talking about many times. CAM can't handle whole transponder's PIDs. You should filter amount PIDs how many can handle your CAM. That why first URL is working, but second - not. It is not minisatip bug.

Delitants commented 1 year ago

Talking about many times. CAM can't handle whole transponder's PIDs. You should filter amount PIDs how many can handle your CAM. That why first URL is working, but second - not. It is not minisatip bug.

Could be that Astra does not change URL accordingly after I select the channel from the scanned list. But how do I suppose to know those PIDs for particular channel? UPDATE: No, direct URL in Astra still plays FTA channel only.

Attached configuration steps. I have to manually collect PIDS of each audio and video stream of each channel and put comma separated in field "PIDS" in the adapter config? 1 2 3 4

Delitants commented 1 year ago

The way TVH connects for one particular encoded channel which is successfully decodes in cam is rtsp://192.168.0.57:555/?fe=-1&src=1&freq=10727&pol=H&msys=DVBS2&sr=30000&pids=6041,6044,6043,6045,6042,6046,6040,0,1,17,16

I don't understand how to manually compose these PIDs but ripping off from TVH and pasting in Astra, which makes no sense, since I want to uninstall TVH at all.

Yuri666 commented 1 year ago

You may ask in astra community or support. In a nutshell, you should fill in the field "SAT>IP PIDS" (from your screen) such minimum PIDs: 0,1,16,17,PNR PID,VPID,APID So, for your case (Museum 4k) in this field you should put 0,1,16,17,6040,6041,6042

Jalle19 commented 1 year ago

Closing this since it doesn't seem to be an issue with minisatip

Delitants commented 1 year ago

What are those 0,1,16,17 came from?On Dec 21, 2022, at 10:44 PM, Yuri666 @.***> wrote: You may ask in astra community or support. In a nutshell, you should fill in the field "SAT>IP" (from your screen) such minimum PIDs: 0,1,16,17,PNR PID,VPID,APID So, for your case (Museum 4k) in this field you should put 0,1,16,17,6040,6041,6042

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

Delitants commented 1 year ago

What's PID in thjs list? 0,1,16,17,PNR PID,VPID,APID

Delitants commented 1 year ago

Channel falls off after 15 min until I restart minisatip, log throws [28/12 23:32:00.623 AD2]: found CW: -1 for Museum 4K PMT 2, old cw 0, packets 273, parity 1, pid 6040: not found after parity change