Go to file
2024-02-15 20:56:18 +02:00
examples add a rust replay example, packet has identical data, src port, dest port, dest address 2024-01-19 23:39:23 +02:00
src rust: create target dir, use frames/basename as decode.py 2023-12-31 14:17:03 +02:00
.gitignore move rust to root, make a separate main example, start using iterator 2023-12-31 00:19:24 +02:00
Cargo.lock move rust to root, make a separate main example, start using iterator 2023-12-31 00:19:24 +02:00
Cargo.toml move rust to root, make a separate main example, start using iterator 2023-12-31 00:19:24 +02:00
cvview.py add c to temp value 2023-12-31 20:25:51 +02:00
decode.py rewrite to use scapy.all.sniff callback parameter, better, still sucks 2024-02-15 20:56:18 +02:00
in.pcap decoder 2023-12-25 23:55:12 +02:00
listen.py almost live, but horrible hack for stream capture, and not live ffmpeg, just live save of images 2024-02-15 00:26:10 +02:00
README.md almost live, but horrible hack for stream capture, and not live ffmpeg, just live save of images 2024-02-15 00:26:10 +02:00
replay.py almost live, but horrible hack for stream capture, and not live ffmpeg, just live save of images 2024-02-15 00:26:10 +02:00
requirements.txt requirements: add maturin 2023-12-29 17:03:54 +02:00
run_dhcp_server.sh try to run a dhcp server 2024-01-19 23:31:26 +02:00
run_live.sh live working with image 2024-02-15 00:30:45 +02:00
rustdecode.sh add rustdecode.sh 2023-12-31 14:18:30 +02:00
test_rust.py almost live, but horrible hack for stream capture, and not live ffmpeg, just live save of images 2024-02-15 00:26:10 +02:00
test2.py add missing test2.py 2023-12-31 11:30:54 +02:00
thermal.mp4 almost live, but horrible hack for stream capture, and not live ffmpeg, just live save of images 2024-02-15 00:26:10 +02:00

Thermal decoder

https://telavivmakers.org/tamiwiki/projects/thermalcam

Starting the stream

Enable jumbo frames

sudo ip link set eth0 mtu 9000

Send start packet

You need to send a special packet.

Sending it via sudo because of raw sockets:

sudo ./venv/bin/python ./replay.py

To send it you need the capability to open sockets in raw mode, but that does not work well with scripts (see [1]

[1] setcap for executables, not helpful for python scripts:

setcap cap_net_raw,cap_net_admin=eip ./replay.py

Rust lib usage

if you don't already have a virtualenv. Linux specific, adjust to your OS.

virtualenv venv
. venv/bin/activate
pip install -r requirements.txt
(cd thermaldecoder; maturin develop -r)
python test_rust.py