Opened 15 years ago
Closed 15 years ago
#2255 closed defect (fixed)
JP2KAK driver cannot write to /vsimem
|Reported by:||warmerdam||Owned by:||warmerdam|
The JP2KAK driver does not support reading and writing files through VSI*L, and thus does not support in memory or other virtualized dataset access.
Change History (3)
comment:1 by , 15 years ago
|Status:||new → assigned|
comment:2 by , 15 years ago
A narrower version of the change which doesn't touch all the KAKADU4 if'defs nor do other cleanup has been applied in the 1.4-esri branch (r13920).
I will attempt to apply a similar change in 1.5 branch...
comment:3 by , 15 years ago
|Status:||assigned → closed|
Fixed in 1.5 branch as well (r13921).
Note: See TracTickets for help on using tickets.
Implement reading and writing via VSI*L API in trunk (r13918) and added a test (r13917).
Note, the trunk jp2kakdataset now assumes at least Kakadu 4.2.
The read through vsi*l only kicks in if poOpenInfo->fp is NULL. So conventional file access will normally be used, and VSI*L will essentially only be used for virtual files of some sort, or files larger than 2GB (such as VSIFOpen() failed). I did this because there was some evidence that going through VSI*L might be making things slightly slower.
Writing is always through VSI*L for simplicity since performance is likely less of a concern in this case (and the perf. diff is very small anyways).