Open-EO / Open-EO/openeo-python-driver
Wrong media type for COGs
Open
@ElienVandermaesenVITO is already working on this.
Since May 18, 2026.
- #502 by @copilot-swe-agent — open
- Dominant language
- Python
- Stars
- 12
- Forks
- 8
- Avg merge
- 6d 3h
- Merged PRs (30d)
- 4
Description
I have a Batch job result which points to a valid COG (checked with rio-cogeo), but the media type is set to a "regular" GeoTiff. This means that the Web Editor, STAC Browser, etc. often avoid loading the data as it assumes it's too large for memory.
If you expose a COG (great!) then the media type should be image/tiff; application=geotiff; profile=cloud-optimized instead of image/tiff; application=geotiff.
Example:
{
"assets":{
"openEO.tif":{
"file:size":108814041,
"href":"https://openeo.vito.be/openeo/1.1/jobs/j-240724b6b3564cb6bf5ab810d0cbdc80/results/assets/MjUyNTRjNGRiMTkzMGNhNzQwNjg0OTJmM2NhOWIyZjM0N2JhMWU3ZTI0ZTAzY2U0OTMzOTlmZWE1NmVhOTQzN0BlZ2kuZXU=/bba518f751735c8c7519ddce3280a5e7/openEO.tif?expires=1722459029",
"proj:bbox":[
614210.0,
4222270.0,
665170.0,
4269040.0
],
"proj:epsg":32629,
"proj:shape":[
4677,
5096
],
"raster:bands":[
{
"name":"1",
"statistics":{
"maximum":35012.51171875,
"mean":59.429729521316,
"minimum":0.013798367232084,
"stddev":50.635991559311,
"valid_percent":99.71
}
}
],
"roles":[
"data"
],
"title":"openEO.tif",
"type":"image/tiff; application=geotiff"
}
},
"description":"Results for batch job j-240724b6b3564cb6bf5ab810d0cbdc80",
"extent":{
"spatial":{
"bbox":[
[
-7.689248,
38.141037,
-7.115289,
38.554609
]
]
},
"temporal":{
"interval":[
[
"2019-06-27T00:00:00Z",
"2019-07-04T00:00:00Z"
]
]
}
},
"id":"j-240724b6b3564cb6bf5ab810d0cbdc80",
"license":"proprietary",
"links":[
{
"href":"urn:eop:VITO:TERRASCOPE_S2_TOC_V2:S2A_20190701T110621_29SPC_TOC_V210",
"rel":"derived_from",
"title":"Derived from urn:eop:VITO:TERRASCOPE_S2_TOC_V2:S2A_20190701T110621_29SPC_TOC_V210",
"type":"application/json"
},
{
"href":"urn:eop:VITO:TERRASCOPE_S2_TOC_V2:S2B_20190629T112119_29SPC_TOC_V210",
"rel":"derived_from",
"title":"Derived from urn:eop:VITO:TERRASCOPE_S2_TOC_V2:S2B_20190629T112119_29SPC_TOC_V210",
"type":"application/json"
},
{
"href":"https://openeo.vito.be/openeo/1.1/jobs/j-240724b6b3564cb6bf5ab810d0cbdc80/results",
"rel":"self",
"type":"application/json"
},
{
"href":"https://openeo.vito.be/openeo/1.1/jobs/j-240724b6b3564cb6bf5ab810d0cbdc80/results/MjUyNTRjNGRiMTkzMGNhNzQwNjg0OTJmM2NhOWIyZjM0N2JhMWU3ZTI0ZTAzY2U0OTMzOTlmZWE1NmVhOTQzN0BlZ2kuZXU=/dd43d087e21bf7512d787277797ec1b5?expires=1722459029",
"rel":"canonical",
"type":"application/json"
},
{
"href":"http://ceos.org/ard/files/PFS/SR/v5.0/CARD4L_Product_Family_Specification_Surface_Reflectance-v5.0.pdf",
"rel":"card4l-document",
"type":"application/pdf"
},
{
"href":"https://openeo.vito.be/openeo/1.1/jobs/j-240724b6b3564cb6bf5ab810d0cbdc80/results/items/MjUyNTRjNGRiMTkzMGNhNzQwNjg0OTJmM2NhOWIyZjM0N2JhMWU3ZTI0ZTAzY2U0OTMzOTlmZWE1NmVhOTQzN0BlZ2kuZXU=/bba518f751735c8c7519ddce3280a5e7/openEO.tif?expires=1722459029",
"rel":"item",
"type":"application/geo+json"
}
],
"openeo:status":"finished",
"providers":[
{
"description":"This data was processed on an openEO backend maintained by VITO.",
"name":"VITO",
"processing:expression":{
"expression":{
"load1":{
"arguments":{
"bands":[
"B01",
"B02",
"B03",
"B04"
],
"id":"SENTINEL2_L2A",
"spatial_extent":{
"coordinates":[
[
[
-7.664532,
38.543869
],
[
-7.689248,
38.141037
],
[
-7.159228,
38.151837
],
[
-7.115289,
38.554609
],
[
-7.664532,
38.543869
]
]
],
"type":"Polygon"
},
"temporal_extent":[
"2019-06-27T00:00:00Z",
"2019-07-04T00:00:00Z"
]
},
"process_id":"load_collection"
},
"reduce2":{
"arguments":{
"data":{
"from_node":"load1"
},
"dimension":"t",
"reducer":{
"process_graph":{
"divide1":{
"arguments":{
"x":{
"from_node":"mean1"
},
"y":10000
},
"process_id":"divide",
"result":true
},
"mean1":{
"arguments":{
"data":{
"from_parameter":"data"
}
},
"process_id":"mean"
}
}
}
},
"process_id":"reduce_dimension"
},
"reduce4":{
"arguments":{
"data":{
"from_node":"reduce2"
},
"dimension":"bands",
"reducer":{
"process_graph":{
"0cng0nfg4":{
"arguments":{
"data":{
"from_parameter":"data"
},
"label":"B01"
},
"process_id":"array_element"
},
"48gn5n3mi":{
"arguments":{
"base":{
"from_node":"r3q22kk62"
},
"p":3.94
},
"process_id":"power"
},
"ifzfq42ka":{
"arguments":{
"x":4.26,
"y":{
"from_node":"48gn5n3mi"
}
},
"process_id":"multiply",
"result":true
},
"k8qp5ohv5":{
"arguments":{
"data":{
"from_parameter":"data"
},
"label":"B03"
},
"process_id":"array_element"
},
"r3q22kk62":{
"arguments":{
"x":{
"from_node":"k8qp5ohv5"
},
"y":{
"from_node":"0cng0nfg4"
}
},
"process_id":"divide"
}
}
}
},
"description":"Concentration of Chlorophyll a",
"process_id":"reduce_dimension"
},
"save5":{
"arguments":{
"data":{
"from_node":"reduce4"
},
"format":"GTIFF"
},
"description":"Concentration of Chlorophyll a",
"process_id":"save_result",
"result":true
}
},
"format":"openeo"
},
"processing:facility":"openEO Geotrellis backend",
"processing:software":{
"Geotrellis backend":"0.38.6a1"
},
"roles":[
"processor"
]
}
],
"stac_extensions":[
"https://stac-extensions.github.io/eo/v1.1.0/schema.json",
"https://stac-extensions.github.io/file/v2.1.0/schema.json",
"https://stac-extensions.github.io/processing/v1.1.0/schema.json",
"https://stac-extensions.github.io/projection/v1.1.0/schema.json"
],
"stac_version":"1.0.0",
"summaries":{
"instruments":[
"MSI"
]
},
"title":"Chlorophyll a",
"type":"Collection"
}
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.