The X1 series printers run a RTSP server that streams video over the network.
- URL:
rtsps://{PRINTER_IP}:322/streaming/live/1
- TLS: yes
- Authentication: required
- Username:
bblp
- Password:
dev_access_code
from aDevice
object (aka the LAN access code).
The A1 and P1 series printers run a simple TCP server that streams 1280x720 JPEG images over the network. Integers are encoded in little-endian byte order.
- Host:
{PRINTER_IP}:6000
- TLS: yes
- Authentication: required
- Username:
bblp
- Password:
dev_access_code
from aDevice
object (aka the LAN access code).
This packet must be sent when connecting to the server.
Offset | Size | Value |
---|---|---|
0 | 4 bytes | Inlined Payload size (0x40) |
4 | 4 bytes | Type (0x3000) |
8 | 4 bytes | Flags (0) |
12 | 4 bytes | 0 |
16 | 32 bytes | Username encoded as ASCII, right-padded with null bytes. |
48 | 32 bytes | Password encoded as ASCII, right-padded with null bytes. |
The server sends a 16-byte header for each frame.
Offset | Size | Value |
---|---|---|
0 | 4 bytes | Payload size |
4 | 4 bytes | itrack (0) |
8 | 4 bytes | Flags (1) |
12 | 4 bytes | 0 |
After the header, the server sends a total of payload size
bytes containing the JPEG image.
The image data might be received in multiple chunks (e.g. up to 4096 bytes each), depending on the programming language and operating system. These chunks need to be concatenated to reconstruct the complete image.
The following magic bytes can be checked to verify that the image has been successfully received:
- Start of Image:
FF D8
- End of Image:
FF D9