szpajder/dumpvdl2

IQ File Piping

Closed this issue · 3 comments

dumpvdl2 --iq-file <file_name> --centerfreq 136955000 136975000

Anyway to pipe in STDIN here? I tried the obvious:

./ss_client iq -r 176.176.220.12 -q 5555 -s 24000 -f 136725000 - | dumpvdl2 --iq-file - 136725000

but dumpvdl2 output:

dumpvdl2 2.0.0-65988a4 (libacars 2.0.1)
Sampling rate set to 1050000 sps
fopen(): No such file or directory

which tells me it's not aware of STDIN pipe when passed -.

You can get the spyserver_client at https://github.com/miweber67/spyserver_client if you'd like to try using it with a remote server when trying to test stdin pipe. I have an GH issue open there (miweber67/spyserver_client#6) as well.

I made some progress by using a fifo:

mkfifo ss-dumpvdl-fifo

then starting each separately.

./ss_client iq -r 184.91.130.173 -q 5555 -s 105000 -f 136800000 -g 40 ss-dumpvdl-fifo
dumpvdl2 --iq-file ss-dumpvdl-fifo --dump-asn1 --oversample 1 --debug all 136800000

Unfortunately not seeing any decoded frames.

Here's a run with --debug all enabled (just a snippet of the total run):

demod(): 7391285: I: 0.135773 Q: -0.055937 symb_pwr: 0.021563 frame_pwr: 0.254081 dphi: 3.443027 * pi/4 idx: 3 bits: 2
demod(): 7391295: I: 0.206643 Q: 0.608244 symb_pwr: 0.412662 frame_pwr: 0.255947 dphi: 3.416046 * pi/4 idx: 3 bits: 2
demod(): 7391305: I: 0.047340 Q: 0.001416 symb_pwr: 0.002243 frame_pwr: 0.252996 dphi: 7.790527 * pi/4 idx: 0 bits: 0
demod(): 7391315: I: 0.481092 Q: 0.708337 symb_pwr: 0.733191 frame_pwr: 0.258516 dphi: 2.537733 * pi/4 idx: 3 bits: 2
demod(): 7391325: I: -0.006753 Q: -0.466563 symb_pwr: 0.217726 frame_pwr: 0.258052 dphi: 6.076666 * pi/4 idx: 6 bits: 5
demod(): 7391335: I: 0.043578 Q: -0.076000 symb_pwr: 0.007675 frame_pwr: 0.255239 dphi: 2.016769 * pi/4 idx: 2 bits: 3
demod(): 7391345: I: 0.253354 Q: 0.447164 symb_pwr: 0.264144 frame_pwr: 0.255338 dphi: 4.016236 * pi/4 idx: 4 bits: 6
demod(): 7391355: I: -0.148774 Q: -0.265330 symb_pwr: 0.092534 frame_pwr: 0.253549 dphi: 5.341123 * pi/4 idx: 5 bits: 7
demod(): bitstream len=248 requested_bits=248, launching frame decoder
bitstream_descramble(): descrambled from 27 to 272
decode_vdl2_burst(): Data:
decode_vdl2_burst(): c9 05 63 42 1f 96 34 b4 61 87 5c 66 34 d9 ef ef 1f 75 1f 31 8d 2e 24 67 fe 91 71 ea 86 
decode_vdl2_burst(): FEC:
decode_vdl2_burst(): 52 29 
decode_vdl2_burst(): Deinterleaved blocks:
decode_vdl2_burst(): Block 0:
decode_vdl2_burst(): c9 05 63 42 1f 96 34 b4 61 87 5c 66 34 d9 ef ef 1f 75 1f 31 8d 2e 24 67 fe 91 71 ea 86 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 52 29 00 00 00 00 
rs_verify(): Input data:
rs_verify(): c9 05 63 42 1f 96 34 b4 61 87 5c 66 34 d9 ef ef 1f 75 1f 31 8d 2e 24 67 fe 91 71 ea 86 00 00 00 
rs_verify(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
rs_verify(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
rs_verify(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
rs_verify(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
rs_verify(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
rs_verify(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
rs_verify(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 52 29 00 00 00 00 
rs_verify(): erasure_cnt=4
rs_verify(): Erasures:
rs_verify(): fb fc fd fe 
decode_vdl2_burst(): Block 0 FEC: 5
decode_vdl2_burst(): Corrected block 0:
decode_vdl2_burst(): c9 05 63 42 1f 96 34 b4 61 87 5c 66 34 d9 ef ef 1f 75 1f 31 8d 2e 24 67 fe 91 71 ea 86 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 7b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
decode_vdl2_burst(): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 52 29 bb d5 e8 6f 
decode_vdl2_burst(): Cut last 4 bits from bitstream, bs->end was 232 now is 228
bitstream_copy_next_frame(): dst len: 108, next src read at 117, remaining src length: 111
decode_vdl2_burst(): Frame 0: Bit stream error: does not end on a byte boundary
decode_vdl2_burst(): DEC_IDLE
got_sync(): Preamble found at 7553733 (pherr[2]=30.921425 pherr[1]=3.845904 pherr[0]=43.528114 vertex_x=-3.283263 syncbufidx=148, syncpoint=145 syncpoint_phase=1.187872 sclk=3 v->dphi=1.503453 ppm=18.365946)
demod(): DM_SYNC, v->sclk=3
demod(): 7553743: I: -0.487068 Q: -0.454963 symb_pwr: 0.444226 frame_pwr: 0.444226 dphi: 1.529923 * pi/4 idx: 2 bits: 3
demod(): 7553753: I: -0.112066 Q: 0.173165 symb_pwr: 0.042545 frame_pwr: 0.243385 dphi: 3.860440 * pi/4 idx: 4 bits: 6
demod(): 7553763: I: -0.093643 Q: -0.156586 symb_pwr: 0.033288 frame_pwr: 0.173353 dphi: 0.668186 * pi/4 idx: 1 bits: 1
demod(): 7553773: I: -0.313303 Q: -0.201071 symb_pwr: 0.138588 frame_pwr: 0.164662 dphi: 5.498458 * pi/4 idx: 5 bits: 7
demod(): 7553783: I: 0.494354 Q: 0.409391 symb_pwr: 0.411987 frame_pwr: 0.214127 dphi: 2.239918 * pi/4 idx: 2 bits: 3
demod(): 7553793: I: -0.238030 Q: -0.310643 symb_pwr: 0.153157 frame_pwr: 0.203965 dphi: 2.372622 * pi/4 idx: 2 bits: 3
demod(): 7553803: I: -0.201204 Q: -0.303435 symb_pwr: 0.132556 frame_pwr: 0.193764 dphi: 6.172706 * pi/4 idx: 6 bits: 5
demod(): 7553813: I: -0.243590 Q: -0.456306 symb_pwr: 0.267551 frame_pwr: 0.202987 dphi: 6.206926 * pi/4 idx: 6 bits: 5
demod(): 7553823: I: 0.118134 Q: 0.042585 symb_pwr: 0.015769 frame_pwr: 0.182185 dphi: 1.150588 * pi/4 idx: 1 bits: 1
demod(): bitstream len=27 requested_bits=25, launching frame decoder
bitstream_descramble(): descrambled from 0 to 26
decode_header(): received: 0x17da52 syndrome: 0xb error: 0x100000, decoded: 0x7da52
decode_vdl2_burst(): v->datalen=38648 v->syndrome=11 - frame rejected
process_samples(): 136800000: noise_floor: -10.4 dBFS
process_samples(): 136800000: noise_floor: -10.6 dBFS
process_samples(): 136800000: noise_floor: -10.7 dBFS

Any thoughts here?

This feature is available in version 2.3.0.