Skip to main content

Sentinel-1 Instrument Source Packets decoder

Project description

GitHub Actions Status

s1isp is Python tool to decode Sentinel-1 Instrument Source Packets (ISPs) contained in the RAW data files included in the Sentinel-1 L0 products. It uses the bpack library for binary data decoding and provides a complete set of descriptors to represent all the possible binary record of the Sentinel-1 Instrument Source Packets (ISPs), or at least the ones related to science data.

The relevant specification documents used to write the s1isp software are:

Requirements and Installation

The package requires Cython and the bitstruct module. These dependencies are managed automatically by PDM and the pyproject.toml file.

Using PDM (recommended):

$ pdm install

For development with all optional dependencies:

$ pdm install -G:all

To build the package:

$ pdm build

Using pip:

$ python3 -m pip install .

For editable mode:

$ python3 -m pip install --editable .

For optional dependencies:

$ python3 -m pip install s1isp[cli,hdf5]

The extension for Huffman decoding can be built locally using:

$ make ext

Command line interface (CLI)

The package has a simple CLI:

$ python3 -m s1isp -h
usage: s1isp [-h] [--version]
            [--loglevel {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
            [-q] [-v] [-d] [-o OUTFILE] [--skip SKIP] [--maxcount MAXCOUNT]
            [--bytes_offset BYTES_OFFSET] [--enum-value]
            [--output-format {pkl,h5,csv,xlsx}] [--force]
            [--data {none,extract,decode}]
            filename

Sentinel-1 Instrument Source Packets decoder Command Line Interface.

positional arguments:
filename              RAW data file name

options:
-h, --help            show this help message and exit
--version             show program's version number and exit
--loglevel {DEBUG,INFO,WARNING,ERROR,CRITICAL}
                        logging level (default: INFO)
-q, --quiet           suppress standard output messages, only errors are
                        printed to screen
-v, --verbose         print verbose output messages
-d, --debug           print debug messages
-o OUTFILE, --outfile OUTFILE
                        output file name for metadata (default file with
                        the same basename of the input stored in the
                        current working directory)
--skip SKIP           number of ISPs to skip at the beginning of the file
--maxcount MAXCOUNT   number of ISPs to dump
--bytes_offset BYTES_OFFSET
                        number bytes to skip at the beginning of the file
--enum-value          dump the enum numeric value instead of the symbolic name
--output-format {pkl,h5,csv,xlsx}, --of {pkl,h5,csv,xlsx}
                        specify the output format
                        (default: <EOutputFormat.PICKLE: 'pkl'>)
--force               overwtire the output file if it already exists
--data {none,extract,decode}
                        control the management of the user data field data
                        (default: 'none')

License

Copyright (c) 2022-2025 Antonio Valentino <antonio.valentino@tiscali.it>

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

s1isp-0.1.dev0.tar.gz (450.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

s1isp-0.1.dev0-py3-none-any.whl (194.5 kB view details)

Uploaded Python 3

File details

Details for the file s1isp-0.1.dev0.tar.gz.

File metadata

  • Download URL: s1isp-0.1.dev0.tar.gz
  • Upload date:
  • Size: 450.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.26.1 CPython/3.12.9 Darwin/24.5.0

File hashes

Hashes for s1isp-0.1.dev0.tar.gz
Algorithm Hash digest
SHA256 f6177e602bd21088029e28a93963220a2f4066dedb966f35acd8a57ab0fb1743
MD5 8e4d1c7899ca4dc2a298d78cace42c06
BLAKE2b-256 889a8f34169a9c07412b198e6194caf75e9203131581f6190cb4916c43846933

See more details on using hashes here.

File details

Details for the file s1isp-0.1.dev0-py3-none-any.whl.

File metadata

  • Download URL: s1isp-0.1.dev0-py3-none-any.whl
  • Upload date:
  • Size: 194.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.26.1 CPython/3.12.9 Darwin/24.5.0

File hashes

Hashes for s1isp-0.1.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 f651923ad9eb8f8a76ff96d404d6288852f0aa1767dd3dfa6877e582ed00edf0
MD5 804102206011922723842bcaa3db91a1
BLAKE2b-256 0a6d2a94cba15ea63a4ae66af67dd81a01f3f39a18d98a8e9d4687f38a948d7f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page