Blosc / Blosc/python-blosc2

vlmeta parameter in kwargs?

Offen
#109 1 Kommentar 0 Reaktionen 2 zugewiesene Personen Beansprucht von @aleixalcacer Auf GitHub ansehen
enhancement
Vorherrschende Sprache
Python
Sterne
211
Forks
58
Ø Merge
1 T. 17 Std.
Gemergte PRs (30 T.)
6

Beschreibung

Hello again, it could be interesting to pass the `vlmeta` parameter in the `kwargs` (passing the `meta` parameter in `kwargs` is already supported)?

I'm interested because I'm defining a codec in which I need to read/write information that could be stored in the `vlmeta` parameter.

My use case :
```python
# encoder and decoder is already defined and registered

cparams = {
'codec': codec_id,
'codec_meta': 0,
'nthreads': 1,
'filters': [],
'splitmode': blosc2.SplitMode.NEVER_SPLIT,
}

dparams = {
'nthreads': 1,
}

c_img = blosc2.asarray(img, chunks=chunks, blocks=blocks, cparams=cparams, dparams=dparams)
```

It would be nice if I could pass the `vlmeta` as `kwargs` and have it serialized before compression. I think, it could be something like:

```python
# encoder and decoder is already defined and registered

cparams = {
'codec': codec_id,
'codec_meta': 0,
'nthreads': 1,
'filters': [],
'splitmode': blosc2.SplitMode.NEVER_SPLIT,
}

dparams = {
'nthreads': 1,
}

vlmeta = {
'my_codec': my_info
}

c_img = blosc2.asarray(img, chunks=chunks, blocks=blocks, cparams=cparams, dparams=dparams, vlmeta=vlmeta)
```

I know it's not ideal in terms of performance (as they will have to be rewritten every time you compress a chunk). But since it's optional, it shouldn't affect users who care about performance.

If it seems good to you and you don't see any inconvenience, can I start with it and create a PR?

Aleix :)

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.