Hosting OSM Vector Tile Server using ubuntu - apache

Here what am looking for,
Am trying to host my own vector tile server,
Here is an image for the kind of Map I want on some pages it is named as a "positron" not opensourced, even a similar kind of it can also work with me.
Reference link for the style.json that we found Positron Style Json
Inside style.json they have induced links of MapTiler Keys that were open-sourced but they removed this in February, there is no alternative we found on how we should run this on frontend.
style.json snippet
"sources": {
"openmaptiles": {
"type": "vector",
"url": "https://api.maptiler.com/tiles/v3/tiles.json?key={key}"
}
},
"sprite": "https://openmaptiles.github.io/positron-gl-style/sprite",
"glyphs": "https://api.maptiler.com/fonts/{fontstack}/{range}.pbf?key={key}",
Initially, when I started I was not much aware of the difference between vector tile and raster tiles
I followed this link and build the serverOSM Tile Server, it was working very good but it was native and I was looking for the kind of above design I have linked above. The native raster tiles look like this OSM Tile View, we are not actually looking for this
For the installation of PBF file we followed this planet.osm link and installed them with Postgress Database Planet OSM file used
Soon we realized we need to host a vector tile server rather than a raster one as they are providing images and we are not looking for this kind of design. As there is no-installation I found for the vector tile server on the main switch2OSM maps website.
I went through this link OSM Vector Tile Server Now when we are installing them ReadMe file "tessera" they are deprecated and also removed their support from the back. Now even the raster Tile server has stopped working.
Now I don't know what mistake am doing or what step I should take now, our usage is cumbersome and we want to host our own vector tile server to reduce the cost.
Any reference or guidance will be really appreciated.
Note: Tech Stack we are using
Frontend: VueJS
Backend: GeoDjango

if anyone gets stuck at the same position where have been with switch2OSM and looking to build their own vector tile server.
Please use this link named OpenMapTiles
I wasn't aware at the start therefore it took some time to figure it out.
Also thanks to OpenStreetMaps Telegram Community.

Related

SUMO Internal Edge

I have run the quick start tutorial of SUMO and it is working fine (https://sumo.dlr.de/docs/Tutorials/quick_start.html).
I want to understand the purpose of Internal edge as it is not touched in the quick start tutorial, though mentioned in the tutorial code on github:
(https://github.com/eclipse/sumo/blob/master/tests/complex/tutorial/quickstart/data/quickstart.net.xml).
I have read the internal edge details: https://sumo.dlr.de/docs/Networks/SUMO_Road_Networks.html#internal_edges
My question is:
What is the benefit of using internal edge?
Do we have to define internal edges manually as I couldn't find option in netedit (i have latest version)
Is it always required to define internal edge.
Thanking you in advance.
I finally received an answer from sumo's mailing list:
Please check if the option „internal-links” in netedit is enable or not. You can do that by going to “processing” in the tool bar, then “Options” - > “junction”. The option “no internal links” should NOT be selected. Below you can find two images with the steps. After you have done this, try to save the network again and the internal edges should be added.
The github link you have sent (https://github.com/eclipse/sumo/blob/master/tests/complex/tutorial/quickstart/data/quickstart.net.xml) is a sumo Network file. In this file you can find the elements of the network: nodes, edges, etc. See SUMO_Road_Networks.html (https://sumo.dlr.de/docs/Networks/SUMO_Road_Networks.html) for more information about sumo networks.
Your two question are answered in the link I sent you (See internal_links (https://sumo.dlr.de/docs/Simulation/Intersections.html#internal_links) for information about simulating with/without internal edges or links). Internal links and internal edges are the same thing.
Regards,

How do I emulate WebGL stuff with OESMesa on AWS Lambda?

I would like to take a screenshot of a web site using WebGL. I don't have to use GPU to open that site. Using emulation is enough for me.
At the beginning, I already tried headless-chrome to do this. That can take screenshot of ordinal web sites. But, It not works for WebGL canvases.
I think one of possibility is using OSMesa or something to emulate OpenGL.
I have used all of my strategy for overcoming this. Is this actually possible to do?
If yes, please tell me how to do that. If no, I would like to know why.
Thanks.
Yes it is possible!
You need the right combination of:
headless-chromium binary
libosmesa.os binary (in same directory)
launch chrome headless with the right flags, such as (see link for full details): ['--use-gl=osmesa', '--enable-webgl', '--ignore-gpu-blacklist', '--homedir=/tmp', '--single-process', '--data-path=/tmp/data-path', '--disk-cache-dir=/tmp/cache-dir']
This thread on the serverless-chrome github project discusses the issue and provides some binaries which I have used to capture screenshots of WebGL content on AWS Lambda using Page.captureScreenshot().
https://github.com/adieuadieu/serverless-chrome/issues/108#issuecomment-416494572
(See comment by #apalchys on 28th August)
This particular example uses SwiftShader which seems to be the preferred option going forward.
Note, however, that I was unable to create PDFs using Page.printToPDF() using this version - WebGL content just appears blank/white. However, I was able to also get Page.printToPDF() using an earlier version which uses osmesa, see https://github.com/adieuadieu/serverless-chrome/issues/108#issuecomment-371199530

silverstripe dynamic backend for flexible frontend

I'm searching for a while, but didn't find a practical answer for the following problem:
An Articlepage in the Frontend can contain different types of sections. For example a block text section and than a text section with left photo an at the end an wallpaper photo.
Now I want to implement this in my backend dynamically, so that I can choose, which type of section and -even more important- how many sections my article should contain.
In my recent project I've solved the problem as an Articlesection with a Dropdown, wich contains the different section styles. And one article hat xy Artilesections as childpages. In the frontend I included all Childpages of the Article - so to speak the Articlesections, where I've checked with if conditions, which sectionsystyle I have in this Section and here I styled the section as I want.
For example Artilce1 has 2 Childpages: Articlesection1 and Artilcesection2.
In AS1 I have choose in the dropdown: right text with left photo and check with if conditions, to style the section. The same with AS2, that is for example a wallpaper photo.
This semiprofessional solution worked, but there are some bugs with displaying the Article correct in the backend, because I have to declare the Articlesections as Includes and not native childpages. And in generell this don't seems like the developers of silverstripe want the users to do it this way..
Are there better ways to implement a dynamically changing backend, so I can decide, which and how much sections I have in the frontend.
Take a look at https://github.com/sheadawson/silverstripe-blocks. There's quite a few addons that offer similar functionality as Blocks such as Elemental. The following blog post might also be useful too - https://www.silverstripe.org/blog/silverstripe-strips/.
Thank you for your reply, but there is a problem, because I don't work a lot with the terminal and the composer. In principle I want to install sheadawsons silverstripe-block. I have installed the composer and run the command:
"composer require sheadawson/silverstripe-blocks" it seems like it installed that correctly, because I became no errors, but what then? With dev/build -to refresh the database- happened nothing and the following instructions in the readmy chanced nothing. Should I copy any files in my Sivlerstripe web folder or what else..? I'm a bit desperate, because there is such a poor documentation.
Tank you

webrtc AEC algorithm

I have made a software that uses WebRTC DSP libraries (AEC, NS, AGC, VAD). Now I need to know what algorithm uses each one to write my Master´s Thesis, but I don't find any information about that.
Someone knows the algorithms of this libraries, specially the Acoustic Echo Cancellation (like for example NLMS, that I know it's commonly used, but I don't know if WebRTC also uses it).
I've tryed to know the algorithm looking into the source code, but I don't understand enough.
Thanks in advance!
I've just successfully using standalone WebRTC aecm module for android. and there's some tips:
1.the most important is the thing called "delay", you can find the definition of it in dir:
..\src\modules\audio_processing\include\audio_processing.h
quote:
Sets the |delay| in ms between AnalyzeReverseStream() receiving a
far-end frame and ProcessStream() receiving a near-end frame
containing the corresponding echo. On the client-side this can be
expressed as delay = (t_render - t_analyze) + (t_process - t_capture)
where,
t_analyze is the time a frame is passed to AnalyzeReverseStream() and t_render is the time the first sample of the same frame is
rendered by the audio hardware.
t_capture is the time the first sample of a frame is captured by the audio hardware and t_pull is the time the same frame is passed to
ProcessStream().
if you wanna use aecm module in standalone mode, be sure you obey this doc strictly.
2.AudioRecord and AudioTrack sometimes block(due to minimized buffer size), so when you calc the delay, don't forget adding blocking time to it.
3.if you don't know how to compile aecm module, you may learn Android NDK first, and the module src path is
..\src\modules\audio_processing\aecm
BTW, this blog may help a lot in native dev. and debuging.
http://mhandroid.wordpress.com/2011/01/23/using-eclipse-for-android-cc-development/
http://mhandroid.wordpress.com/2011/01/23/using-eclipse-for-android-cc-debugging/
hope this may help you.
From the code inspection of AGC algorithm in WebRtc, it matches closely with the description in http://www.ti.com/lit/wp/spraal1/spraal1.pdf
It's based on NLMS, but has a variable step length (mu).

Is there a script that turns a Pharo core image into something more useful, that would include an OmniBrowser?

I cannot use the most recent dev Pharo release because of some strange issues with the compiler built into Pharo. Well. I was wondering if there is a quick way to install all the nifty extras into Pharo that the core image misses, as compared to the dev image.
With all non-core Pharo images come a script which was used to build that image. Just edit that file and drag&drop it on a new core.
You could also tell me what you don't like in the Pharo images so that I can enhance them.
There is also the script I published on the Pharo wiki that I use to build my images:
http://code.google.com/p/pharo/wiki/ImageBuildScripts
Of course it is very specific to my preferences and needs, but you can take it as an example and adapt it to your own needs.
CommandShell works with Pharo 9.10.10. You will hit several errors as you try to load the package due to Pharo lacking MVC, but you can simply proceed past the first bunch and abandon the last one (that tries to actually open a CommandShell in Morphic). At that point, you'll have a class called PipeableOSProcess that can be used very easily to grab output. For example:
(PipeableOSProcess command: 'ls /bin') output
will return the contents of your bin directory as a string.
Ok, OB itself can be easily downloaded using ScriptLoader loadSuperOB.
Damien adds (from comment below):
The problem with that approach is that nobody really maintains it.
Moreover, you miss some configuration steps to enhance the use of OB
(for example, you won't have the OB-based browsers if you ask for the
senders of a message from a workspace)