#field #sockets #forms #vdif #vtp

rustvdif

A Rust library for interacting with data encoded in the VLBI Data Interchange Format (VDIF)

7 releases (breaking)

new 0.6.0 Apr 16, 2025
0.5.0 Feb 17, 2025
0.4.1 Jan 22, 2025
0.4.0 Dec 17, 2024
0.1.0 Sep 29, 2024

#29 in #forms

Download history 27/week @ 2024-12-19 1/week @ 2025-01-02 2/week @ 2025-01-09 72/week @ 2025-01-16 59/week @ 2025-01-23 2/week @ 2025-01-30 4/week @ 2025-02-06 90/week @ 2025-02-13 18/week @ 2025-02-20 8/week @ 2025-02-27

488 downloads per month

MIT/Apache

26KB
417 lines

Rust VDIF

A rust crate for interacting with data encoded in the VLBI Data Interchange Format (VDIF), commonly used in radio astronomy experiments. The VDIF data format is defined in the VDIF specification, found here.

This is a minimalist crate designed to relieve the problem of dealing with VDIF data in your own applications.

With rustvdif you can:

  • Read VDIF frames from and write to various sources, including files and sockets
  • Read/write VDIF data encoded using the VDIF Transport Protocol (VTP)
  • Easily encode and decode VDIF header fields
  • Access VDIF payload data in u32 or byte form
  • Encode and decode VDIF payloads, with up to 32 bits/sample

Documentation is available here.

Contributing

I'd love to see contributions from the VLBI community, and if you have any suggestions or questions you can always reach out to me directly or open an issue.

Known Issues

Since VDIF is an explicitly little-endian format, supporting big-endian systems takes a bit of extra effort. So big-endian systems aren't currently supported, but I could probably be persuaded to implement support if someone needs it.

Licensing

This library is licensed under either the MIT License or the Apache 2.0 License at your option.

No runtime deps