microsoft / PlanetaryComputer

Issues, discussions, and information about the Microsoft Planetary Computer
https://planetarycomputer.microsoft.com/
MIT License
185 stars 8 forks source link

Sentinel-1 RTC not recognized as supported file format? #384

Closed filo-byte closed 2 weeks ago

filo-byte commented 4 weeks ago

I am trying to use odc.stac.load to get Sentinel-1 RTC But I keep getting an error message same thing also happens with stackstac.stac 

{ "name": "RasterioIOError", "message": "'/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-24T01%3A29%3A27Z&se=2024-10-25T02%3A14%3A27Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-25T00%3A10%3A45Z&ske=2024-11-01T00%3A10%3A45Z&sks=b&skv=2024-05-04&sig=oVoayvAI0yIWI/S8TroN%2BAZ%2BaaGX8yzz93TXYReqesM%3D' not recognized as being in a supported file format.", "stack": "--------------------------------------------------------------------------- CPLE_OpenFailedError Traceback (most recent call last) File rasterio/_base.pyx:310, in rasterio._base.DatasetBase.init()

File rasterio/_base.pyx:221, in rasterio._base.open_dataset()

File rasterio/_err.pyx:221, in rasterio._err.exc_wrap_pointer()

CPLE_OpenFailedError: '/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-24T01%3A29%3A27Z&se=2024-10-25T02%3A14%3A27Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-25T00%3A10%3A45Z&ske=2024-11-01T00%3A10%3A45Z&sks=b&skv=2024-05-04&sig=oVoayvAI0yIWI/S8TroN%2BAZ%2BaaGX8yzz93TXYReqesM%3D' not recognized as being in a supported file format.

During handling of the above exception, another exception occurred:

RasterioIOError Traceback (most recent call last) Cell In[100], line 1 ----> 1 s1_stack = odc.stac.load( 2 s1_items, 3 crs=\"EPSG:32651\",
4 bands=[\"vv\", \"vh\"], 5 bbox=[minx, miny, maxx, maxy], 6 resolution=10,
7 patch_url=pc.sign 8 )

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/stac/_stac_load.py:450, in load(items, bands, groupby, resampling, dtype, chunks, pool, crs, resolution, anchor, geobox, bbox, lon, lat, x, y, like, geopolygon, progress, fail_on_error, stac_cfg, patch_url, preserve_original_order, driver, **kw) 446 return ds 448 rdr_env = rdr.capture_env() 449 return _with_debug_info( --> 450 chunked_load( 451 load_cfg, 452 meta, 453 _parsed, 454 tyx_bins, 455 gbt, 456 tss, 457 rdr_env, 458 rdr, 459 chunks=chunks, 460 pool=pool, 461 progress=progress, 462 ) 463 )

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_builder.py:621, in chunked_load(load_cfg, template, srcs, tyx_bins, gbt, tss, env, rdr, chunks, pool, progress) 619 # pylint: disable=too-many-arguments 620 if chunks is None: --> 621 return direct_chunked_load( 622 load_cfg, 623 template, 624 srcs, 625 tyx_bins, 626 gbt, 627 tss, 628 env, 629 rdr, 630 pool=pool, 631 progress=progress, 632 ) 633 return dask_chunked_load( 634 load_cfg, 635 template, (...) 642 chunks=chunks, 643 )

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_builder.py:855, in direct_chunked_load(load_cfg, template, srcs, tyx_bins, gbt, tss, env, rdr, pool, progress) 852 if progress is not None: 853 _work = progress(SizedIterable(_work, totaltasks)) --> 855 for in _work: 856 pass 858 rdr.finalise_load(load_state)

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_utils.py:39, in pmap(func, inputs, pool) 35 \"\"\" 36 Wrapper for ThreadPoolExecutor.map 37 \"\"\" 38 if pool is None: ---> 39 yield from map(func, inputs) 40 return 42 if isinstance(pool, int):

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_builder.py:830, in direct_chunked_load.._do_one(task) 828 for tidx, layer in enumerate(layers): 829 loaders = [rdr.open(src, ctx) for , src in layer] --> 830 _ = _fill_nd_slice( 831 loaders, 832 task.dst_gbox, 833 task.cfg, 834 dst=dst_slice[t_idx], 835 ydim=ydim, 836 ) 837 t, y, x = task.idx_tyx 838 return (task.band, t, y, x)

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_builder.py:511, in _fill_nd_slice(srcs, dst_gbox, cfg, dst, ydim, selection) 508 return dst 510 src, *rest = srcs --> 511 yx_roi, pix = src.read(cfg, dst_gbox, dst=dst, selection=selection) 512 assert len(yx_roi) == 2 513 assert pix.ndim == dst.ndim

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_rio.py:115, in RioReader.read(self, cfg, dst_geobox, dst, selection) 107 def read( 108 self, 109 cfg: RasterLoadParams, (...) 113 selection: Optional[ReaderSubsetSelection] = None, 114 ) -> tuple[tuple[slice, slice], np.ndarray]: --> 115 return rio_read(self._src, cfg, dst_geobox, dst=dst, selection=selection)

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_rio.py:526, in rio_read(src, cfg, dst_geobox, dst, selection) 520 if cfg.fail_on_error: 521 log.error( 522 \"Aborting load due to failure while reading: %s:%d\", 523 src.uri, 524 src.band, 525 ) --> 526 raise e 527 except rasterio.errors.RasterioError as e: 528 if cfg.fail_on_error:

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_rio.py:512, in rio_read(src, cfg, dst_geobox, dst, selection) 508 return roi, out.transpose([1, 2, 0]) 510 try: 511 return fixup_out( --> 512 _rio_read(src, cfg, dst_geobox, prep_dst(dst), selection=selection) 513 ) 514 except ( 515 rasterio.errors.RasterioIOError, 516 rasterio.errors.RasterBlockError, 517 rasterio.errors.WarpOperationError, 518 rasterio.errors.WindowEvaluationError, 519 ) as e: 520 if cfg.fail_on_error:

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_rio.py:560, in _rio_read(src, cfg, dst_geobox, dst, selection) 549 def _rio_read( 550 src: RasterSource, 551 cfg: RasterLoadParams, (...) 556 # if resampling is nearest then ignore sub-pixel translation when deciding 557 # whether we can just paste source into destination 558 ttol = 0.9 if cfg.nearest else 0.05 --> 560 with rasterio.open(src.uri, \"r\", sharing=False) as rdr: 561 assert isinstance(rdr, rasterio.DatasetReader) 562 ovr_idx: Optional[int] = None

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/rasterio/env.py:451, in ensure_env_with_credentials..wrapper(*args, *kwds) 448 session = DummySession() 450 with env_ctor(session=session): --> 451 return f(args, **kwds)

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/rasterio/init.py:304, in open(fp, mode, driver, width, height, count, crs, transform, dtype, nodata, sharing, kwargs) 301 path = _parse_path(raw_dataset_path) 303 if mode == \"r\": --> 304 dataset = DatasetReader(path, driver=driver, sharing=sharing, kwargs) 305 elif mode == \"r+\": 306 dataset = get_writer_for_path(path, driver=driver)( 307 path, mode, driver=driver, sharing=sharing, **kwargs 308 )

File rasterio/_base.pyx:312, in rasterio._base.DatasetBase.init()

RasterioIOError: '/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-24T01%3A29%3A27Z&se=2024-10-25T02%3A14%3A27Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-25T00%3A10%3A45Z&ske=2024-11-01T00%3A10%3A45Z&sks=b&skv=2024-05-04&sig=oVoayvAI0yIWI/S8TroN%2BAZ%2BaaGX8yzz93TXYReqesM%3D' not recognized as being in a supported file format." }

777arc commented 3 weeks ago

Mind sharing the minimal python snippet to reproduce this? Thanks!

filo-byte commented 3 weeks ago

This also happens on stackstac.stac

import planetary_computer as pc import pystac_client import odc.stac

minx = 122.089 miny = 11.243 maxx = 122.589 maxy = 11.743

s1_client = pystac_client.Client.open("https://planetarycomputer.microsoft.com/api/stac/v1/", modifier=pc.sign_inplace) s1_search = s1_client.search( collections=["sentinel-1-rtc"], bbox=[minx, miny, maxx, maxy], datetime="2023-01-01/2023-12-31", )

s1_items= s1_search.item_collection()

retries = 6

for attempt in range(retries): try: s1_stack = odc.stac.load( s1_items, crs="EPSG:32651",
bands=["vv", "vh"], bbox=[minx, miny, maxx, maxy], resolution=10,
patch_url=pc.sign ) break except Exception as e: print(f"Error with Sentinel-1 STAC on attempt {attempt + 1}/{retries}: {e}") time.sleep(10) if attempt == retries - 1: raise


Error with Sentinel-1 STAC on attempt 4/6: '/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-23T10%3A31%3A34Z&se=2024-10-24T11%3A16%3A34Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-24T08%3A35%3A11Z&ske=2024-10-31T08%3A35%3A11Z&sks=b&skv=2024-05-04&sig=GvKCLZiLPf601sFWETx5IZVBTNFglqqVZB%2BbQBMF6QQ%3D' not recognized as being in a supported file format. Aborting load due to failure while reading: https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-23T10%3A31%3A34Z&se=2024-10-24T11%3A16%3A34Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-24T08%3A35%3A11Z&ske=2024-10-31T08%3A35%3A11Z&sks=b&skv=2024-05-04&sig=GvKCLZiLPf601sFWETx5IZVBTNFglqqVZB%2BbQBMF6QQ%3D:1 Error with Sentinel-1 STAC on attempt 5/6: '/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-23T10%3A31%3A34Z&se=2024-10-24T11%3A16%3A34Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-24T08%3A35%3A11Z&ske=2024-10-31T08%3A35%3A11Z&sks=b&skv=2024-05-04&sig=GvKCLZiLPf601sFWETx5IZVBTNFglqqVZB%2BbQBMF6QQ%3D' not recognized as being in a supported file format. Aborting load due to failure while reading: https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-23T10%3A31%3A34Z&se=2024-10-24T11%3A16%3A34Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-24T08%3A35%3A11Z&ske=2024-10-31T08%3A35%3A11Z&sks=b&skv=2024-05-04&sig=GvKCLZiLPf601sFWETx5IZVBTNFglqqVZB%2BbQBMF6QQ%3D:1 Error with Sentinel-1 STAC on attempt 6/6: '/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-23T10%3A31%3A34Z&se=2024-10-24T11%3A16%3A34Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-24T08%3A35%3A11Z&ske=2024-10-31T08%3A35%3A11Z&sks=b&skv=2024-05-04&sig=GvKCLZiLPf601sFWETx5IZVBTNFglqqVZB%2BbQBMF6QQ%3D' not recognized as being in a supported file format.

{ "name": "RasterioIOError", "message": "'/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-23T10%3A31%3A34Z&se=2024-10-24T11%3A16%3A34Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-24T08%3A35%3A11Z&ske=2024-10-31T08%3A35%3A11Z&sks=b&skv=2024-05-04&sig=GvKCLZiLPf601sFWETx5IZVBTNFglqqVZB%2BbQBMF6QQ%3D' not recognized as being in a supported file format.", "stack": "--------------------------------------------------------------------------- CPLE_OpenFailedError Traceback (most recent call last) File rasterio/_base.pyx:310, in rasterio._base.DatasetBase.init()

File rasterio/_base.pyx:221, in rasterio._base.open_dataset()

File rasterio/_err.pyx:221, in rasterio._err.exc_wrap_pointer()

CPLE_OpenFailedError: '/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-23T10%3A31%3A34Z&se=2024-10-24T11%3A16%3A34Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-24T08%3A35%3A11Z&ske=2024-10-31T08%3A35%3A11Z&sks=b&skv=2024-05-04&sig=GvKCLZiLPf601sFWETx5IZVBTNFglqqVZB%2BbQBMF6QQ%3D' not recognized as being in a supported file format.

During handling of the above exception, another exception occurred:

RasterioIOError Traceback (most recent call last) Cell In[40], line 3 1 for attempt in range(retries): 2 try: ----> 3 s1_stack = odc.stac.load( 4 s1_items, 5 crs=\"EPSG:32651\",
6 bands=[\"vv\", \"vh\"], 7 bbox=[minx, miny, maxx, maxy], 8 resolution=10,
9 patch_url=pc.sign 10 ) 11 break # If successful, exit the loop 12 except Exception as e:

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/stac/_stac_load.py:450, in load(items, bands, groupby, resampling, dtype, chunks, pool, crs, resolution, anchor, geobox, bbox, lon, lat, x, y, like, geopolygon, progress, fail_on_error, stac_cfg, patch_url, preserve_original_order, driver, **kw) 446 return ds 448 rdr_env = rdr.capture_env() 449 return _with_debug_info( --> 450 chunked_load( 451 load_cfg, 452 meta, 453 _parsed, 454 tyx_bins, 455 gbt, 456 tss, 457 rdr_env, 458 rdr, 459 chunks=chunks, 460 pool=pool, 461 progress=progress, 462 ) 463 )

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_builder.py:621, in chunked_load(load_cfg, template, srcs, tyx_bins, gbt, tss, env, rdr, chunks, pool, progress) 619 # pylint: disable=too-many-arguments 620 if chunks is None: --> 621 return direct_chunked_load( 622 load_cfg, 623 template, 624 srcs, 625 tyx_bins, 626 gbt, 627 tss, 628 env, 629 rdr, 630 pool=pool, 631 progress=progress, 632 ) 633 return dask_chunked_load( 634 load_cfg, 635 template, (...) 642 chunks=chunks, 643 )

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_builder.py:855, in direct_chunked_load(load_cfg, template, srcs, tyx_bins, gbt, tss, env, rdr, pool, progress) 852 if progress is not None: 853 _work = progress(SizedIterable(_work, totaltasks)) --> 855 for in _work: 856 pass 858 rdr.finalise_load(load_state)

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_utils.py:39, in pmap(func, inputs, pool) 35 \"\"\" 36 Wrapper for ThreadPoolExecutor.map 37 \"\"\" 38 if pool is None: ---> 39 yield from map(func, inputs) 40 return 42 if isinstance(pool, int):

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_builder.py:830, in direct_chunked_load.._do_one(task) 828 for tidx, layer in enumerate(layers): 829 loaders = [rdr.open(src, ctx) for , src in layer] --> 830 _ = _fill_nd_slice( 831 loaders, 832 task.dst_gbox, 833 task.cfg, 834 dst=dst_slice[t_idx], 835 ydim=ydim, 836 ) 837 t, y, x = task.idx_tyx 838 return (task.band, t, y, x)

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_builder.py:511, in _fill_nd_slice(srcs, dst_gbox, cfg, dst, ydim, selection) 508 return dst 510 src, *rest = srcs --> 511 yx_roi, pix = src.read(cfg, dst_gbox, dst=dst, selection=selection) 512 assert len(yx_roi) == 2 513 assert pix.ndim == dst.ndim

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_rio.py:115, in RioReader.read(self, cfg, dst_geobox, dst, selection) 107 def read( 108 self, 109 cfg: RasterLoadParams, (...) 113 selection: Optional[ReaderSubsetSelection] = None, 114 ) -> tuple[tuple[slice, slice], np.ndarray]: --> 115 return rio_read(self._src, cfg, dst_geobox, dst=dst, selection=selection)

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_rio.py:526, in rio_read(src, cfg, dst_geobox, dst, selection) 520 if cfg.fail_on_error: 521 log.error( 522 \"Aborting load due to failure while reading: %s:%d\", 523 src.uri, 524 src.band, 525 ) --> 526 raise e 527 except rasterio.errors.RasterioError as e: 528 if cfg.fail_on_error:

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_rio.py:512, in rio_read(src, cfg, dst_geobox, dst, selection) 508 return roi, out.transpose([1, 2, 0]) 510 try: 511 return fixup_out( --> 512 _rio_read(src, cfg, dst_geobox, prep_dst(dst), selection=selection) 513 ) 514 except ( 515 rasterio.errors.RasterioIOError, 516 rasterio.errors.RasterBlockError, 517 rasterio.errors.WarpOperationError, 518 rasterio.errors.WindowEvaluationError, 519 ) as e: 520 if cfg.fail_on_error:

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/odc/loader/_rio.py:560, in _rio_read(src, cfg, dst_geobox, dst, selection) 549 def _rio_read( 550 src: RasterSource, 551 cfg: RasterLoadParams, (...) 556 # if resampling is nearest then ignore sub-pixel translation when deciding 557 # whether we can just paste source into destination 558 ttol = 0.9 if cfg.nearest else 0.05 --> 560 with rasterio.open(src.uri, \"r\", sharing=False) as rdr: 561 assert isinstance(rdr, rasterio.DatasetReader) 562 ovr_idx: Optional[int] = None

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/rasterio/env.py:451, in ensure_env_with_credentials..wrapper(*args, *kwds) 448 session = DummySession() 450 with env_ctor(session=session): --> 451 return f(args, **kwds)

File ~/miniconda3/envs/rapids-24.10/lib/python3.12/site-packages/rasterio/init.py:304, in open(fp, mode, driver, width, height, count, crs, transform, dtype, nodata, sharing, kwargs) 301 path = _parse_path(raw_dataset_path) 303 if mode == \"r\": --> 304 dataset = DatasetReader(path, driver=driver, sharing=sharing, kwargs) 305 elif mode == \"r+\": 306 dataset = get_writer_for_path(path, driver=driver)( 307 path, mode, driver=driver, sharing=sharing, **kwargs 308 )

File rasterio/_base.pyx:312, in rasterio._base.DatasetBase.init()

RasterioIOError: '/vsicurl/https://sentinel1euwestrtc.blob.core.windows.net/sentinel1-grd-rtc/GRD/2023/1/8/IW/SV/S1A_IW_GRDH_1SSV_20230108T095759_20230108T095824_046691_0598BE_B0B2/measurement/iw-vv.rtc.tiff?st=2024-10-23T10%3A31%3A34Z&se=2024-10-24T11%3A16%3A34Z&sp=rl&sv=2024-05-04&sr=c&skoid=9c8ff44a-6a2c-4dfb-b298-1c9212f64d9a&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2024-10-24T08%3A35%3A11Z&ske=2024-10-31T08%3A35%3A11Z&sks=b&skv=2024-05-04&sig=GvKCLZiLPf601sFWETx5IZVBTNFglqqVZB%2BbQBMF6QQ%3D' not recognized as being in a supported file format." }

777arc commented 3 weeks ago

How long does your script run before giving that error? I think part of the problem is that each asset is 1.7 GB, and there's 2 per item, and your query is returning 56 items. The blob storage download is only going to be like 8 Mbps, try opening the Performance part of Task Manager or whatever way you can visualize network throughput, while the script is running.

777arc commented 2 weeks ago

Closing, feel free to re-open if you need more info