Maybe they store splats as .png to avoid .dds compression, but the object model is wierd since they are marked as textures you would have to set up the texture properly to make sure they do not get compressed on compile or your terrain will look nasty. see http://WWW.LoadImageIntoTexture
(not sure how that would integrate with your server code some qualms on the forum about it). I think someone also posted an unofficial .png reader that reads the files out of the dir more directly.
I tossed my PNG code when I stopping working on Morrowind importing (though it would be damn fun to finish it clearly violates the EULA because I reverse engineered the format for purposes of importing into another game engine) It was actually easier to synthesize the splats on the fly than read them in for what I was really doing, most algorithms are simply height/slope based with a bit of noise maybe some layering.
So you need a array of SplatPrototypes with the texture, size and offset that each splat is going to use (same info as in the editor). Then you have the splat 3D array (setAlphamaps) where you import each splat as a plane in that array, where the plane index corresponds to the splat prototype array index. It is not actually a byte stream array nor RGBA Color or Vector4 that a true .png reader might do . Every 4 splats is a performance hit and each texel across splats must add to 1.0 (do not use Vector.normalize for this which is actually a vector power sum not magnitude sum) It may seem useful to get some 'free' brighter/darker by not adding up, but then distance terrain ignores the splats so it would mismatch. You can use the same texture in different splat planes with different offsets for layered blending to hide tiling and stretching, but there are some custom shaders that do that as well with completely different interface code for talking to the shader code.
Not applying for the gig as I hate interface programming work, I like to play with algorithms and interfaces just get in my way. But hope that points in the right direction.
And don't get my started on rivers, a simple water flow algorithm across a terrain tile is easy, getting water to flow across synthesized terrain that does not exist yet in the tree (I do not use octrees of perlin noise this code is my own unique invention) unless you are there that is also curved depending on where you are like I am doing? My world might have lakes instead of rivers, although people expect canyons and the only way to get those is water erosion. Anyways I am still trying to get spires on my mountains to not be taller than the mountain itself, so lot more dead bodies to step on.