Go to advanced search

by blackshard83
Fri May 10, 2019 12:28 pm
Forum: Advanced users
Topic: Seeking the illusive zero write
Replies: 14
Views: 660

Re: Seeking the illusive zero write

using f2fs for the partition where chromium writes mounting the partition with commit=x argument (x is the number of seconds the cache has to be flushed after, look for documentation for full explanation) mount the partition with noatime argument, so there is the access time is not changed every tim...
by blackshard83
Thu May 09, 2019 11:21 am
Forum: Advanced users
Topic: Analogue audio redux
Replies: 74
Views: 20932

Re: Analogue audio redux

I revive this old thread with an edge case. Here there is some code (and precompiled binary) that creates a pbuffer and uses vgGaussianBlur() to make some image manipulation using VC4. It does not render anything on screen, but running this while some audio is playing causes massive buffer underruns...
by blackshard83
Fri Mar 01, 2019 10:48 am
Forum: Graphics programming
Topic: Getting direct access to a dispmanx resource
Replies: 25
Views: 2130

Re: Getting direct access to a dispmanx resource

As an indirectly related matter which goes beyond dispmanx, EGL provides some facilities (EGLWaitNative, EGL_KHR_lock_surface extension , ...) to share native buffers between ARM an GPU. I never used it, so I don't know what is the impact in performance and other caveats, but in theory you can use G...
by blackshard83
Wed Dec 19, 2018 3:07 pm
Forum: C/C++
Topic: Compile programs for the Raspberry Pi 1 and Zero's ARMv6 SoC
Replies: 10
Views: 1662

Re: Compile programs for the Raspberry Pi 1 and Zero's ARMv6 SoC

Just pass -march=armv6 to gcc compilation arguments. I'm doing this all the time (compiling on a Pi2, running on a Pi1) If you want to be sure, maybe you can add -mfpu=vfp and -mfloat-abi=hard too. You can patch CFLAGS variable in the Makefile or something like this, depending on the project. This i...
by blackshard83
Tue Dec 18, 2018 9:05 am
Forum: Graphics, sound and multimedia
Topic: On-Board HDMI Audio vs USB Audio vs Add-on DAC Card
Replies: 2
Views: 726

Re: On-Board HDMI Audio vs USB Audio vs Add-on DAC Card

It depends on the quality of your converter. HDMI and USB are both digital representation of data, so there is no loss during transport of the signal: the quality of their DAC and the board circuitry is crucial for a good output. An onboard hat with a DAC is exactly the same, it just uses the intern...
by blackshard83
Fri Nov 30, 2018 3:27 pm
Forum: Advanced users
Topic: f2fs : why not distribution with root fs as f2fs
Replies: 14
Views: 2058

Re: f2fs : why not distribution with root fs as f2fs

The last time I took a deep dive into SDCARD performance, and specifically the more recent Sandisk cards. Pointed to several reasons most people anecdotally recall F2FS doesn't really perform much better than ext4: 1. Primarily F2FS was intended for raw memory chips without the built-in wear-leveli...
by blackshard83
Fri Nov 30, 2018 3:19 pm
Forum: Advanced users
Topic: f2fs : why not distribution with root fs as f2fs
Replies: 14
Views: 2058

Re: f2fs : why not distribution with root fs as f2fs

Is that regardless of whether you 'sync' beforehand. Or is data safe as long as applications fsync appropriately? IIRC, the default behaviour of linux is to flush data that has been cached for more than 30 seconds, using too much RAM and block IO if cached data is taking up more than a certain perc...
by blackshard83
Wed Nov 28, 2018 3:30 pm
Forum: Advanced users
Topic: f2fs : why not distribution with root fs as f2fs
Replies: 14
Views: 2058

Re: f2fs : why not distribution with root fs as f2fs

Ext4 is working well. F2fs hasn't been proven to be a worthwhile. When people have tried it for Android, they found that performance degrades over time, requiring them to reformat. Then they went back to Ext4. If you look on XDA, the general view of it isn't positive. To consider switching, we'd ne...
by blackshard83
Mon Nov 05, 2018 9:30 am
Forum: Graphics programming
Topic: EGL and concurrent resource upload
Replies: 1
Views: 2802

Re: EGL and concurrent resource upload

Just to add some other details, I'm noticing that calling eglSwapBuffers() starves all other threads of the same process which try to call eglMakeCurrent() and also other threads of the same process which try to invoke OMX functions to load videos. Juggling with priorities (lowering rendering thread...
by blackshard83
Fri Nov 02, 2018 8:50 am
Forum: Graphics programming
Topic: EGL and concurrent resource upload
Replies: 1
Views: 2802

EGL and concurrent resource upload

Hello, I have a pure OpenVG application with two threads: the first thread is the graphics rendering loop, and the other thread does the resource upstreaming. The first thread does its work and then issues a call to eglSwapBuffers() call. eglSwapBuffes waits for vsync, blits the things and then does...
by blackshard83
Mon Feb 26, 2018 8:28 am
Forum: C/C++
Topic: ALSA Programming
Replies: 6
Views: 1001

Re: ALSA Programming

PeterO wrote:
Sat Feb 24, 2018 8:39 am
BUT ISTR that might depend on the sound device having to support signed samples (and not all of them do that). I can't remember if the alsa code will do the conversion on the fly for you..
AFAIK signed 16 bit integers are the standard for 16 bit samples
by blackshard83
Thu Feb 22, 2018 12:10 pm
Forum: Graphics programming
Topic: Reduce VRAM fragmentation
Replies: 0
Views: 763

Reduce VRAM fragmentation

Hello, I'm working on a font rendering engine that uses vector paths and renders them via OpenVG. Everything works fine at the moment, but using paths for font glyphs causes a lot of free blocks inside video memory. I provide exact segment and coords hints for the paths, create them using vgCreatePa...
by blackshard83
Thu Feb 01, 2018 10:45 am
Forum: C/C++
Topic: Is there a way to turn off the Vdd on the USB connectors
Replies: 1
Views: 545

Re: Is there a way to turn off the Vdd on the USB connectors

You try to do some testing with hub-ctrl you can find somewhere here in the forums. Some time ago I tried it but I felt it was not really cutting power to the USB ports. I needed to really cut power to reset some stubborn USB sticks, but was not able to. It also works "reliably" only on rpi2 and upp...
by blackshard83
Wed Jan 31, 2018 2:54 pm
Forum: Graphics programming
Topic: vcdbg: unable to open /dev/fb0 (unbound framebuffer)
Replies: 2
Views: 1522

Re: vcdbg: unable to open /dev/fb0 (unbound framebuffer)

Got it, thanks for the detailed and interesting explanation!
by blackshard83
Wed Jan 31, 2018 10:47 am
Forum: Graphics programming
Topic: vcdbg: unable to open /dev/fb0 (unbound framebuffer)
Replies: 2
Views: 1522

vcdbg: unable to open /dev/fb0 (unbound framebuffer)

Hello, I detatched the framebuffer using this command: echo "soc:fb" > /sys/bus/platform/drivers/bcm2708_fb/unbind this detatches the framebuffer completely, so /dev/fb0 disappears. In this state launching: vcdbg reloc causes a lot of error rows like this: debug_sym: vc_mem_copy: Unable to open '/de...
by blackshard83
Tue Oct 17, 2017 10:31 am
Forum: Graphics programming
Topic: OpenCL on the VideoCore IV!
Replies: 82
Views: 50802

Re: OpenCL on the VideoCore IV!

Great job indeed!
Congratulations!
by blackshard83
Tue Oct 17, 2017 10:29 am
Forum: Graphics programming
Topic: EGL and OpenVG broadcom extensions, what they do?
Replies: 17
Views: 4543

Re: EGL and OpenVG broadcom extensions, what they do?

Yep, looks like the Ultibo OpenVG examples is based on AJStarkes code and that uses JPEGlib so it is probably not accelerated :( But who knows, you have to dig deep to find the real code and with so many layers I get confused. This in VGShapes.pas function VGShapesCreateImageFromJpeg(const filename...
by blackshard83
Mon Oct 02, 2017 7:35 am
Forum: Graphics programming
Topic: EGL and OpenVG broadcom extensions, what they do?
Replies: 17
Views: 4543

Re: EGL and OpenVG broadcom extensions, what they do?

I was exactly thinking about https://github.com/raspberrypi/firmware/blob/master/hardfp/opt/vc/include/EGL/eglext_brcm.h include header. Listing the official EGL extensions I get these ones: EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap EGL_KHR_vg_parent_image EGL_KHR_gl_texture_2D_image EGL...
by blackshard83
Thu Sep 28, 2017 2:17 pm
Forum: Graphics programming
Topic: EGL and OpenVG broadcom extensions, what they do?
Replies: 17
Views: 4543

Re: EGL and OpenVG broadcom extensions, what they do?

Thanks for the answer, but it does not help. I was specifically asking some documentation about EGL and OpenVG broadcom extensions.
EGL and OpenVG libraries are well documented by khronos specifications available on their site for free
by blackshard83
Thu Sep 28, 2017 11:10 am
Forum: Graphics programming
Topic: EGL and OpenVG broadcom extensions, what they do?
Replies: 17
Views: 4543

EGL and OpenVG broadcom extensions, what they do?

I see that in /opt/vc/include egl and openvg directories there are some import header files dealing with some broadcom specific extensions to EGL and OpenVG, but I can't find any documentation about them. I'm curious about what they do and if can be generally useful. I guess that most probably they ...
by blackshard83
Tue Sep 26, 2017 11:51 am
Forum: Graphics programming
Topic: How to free unused dispmanx layer (in case of SIGSEGV)
Replies: 7
Views: 2580

Re: How to free unused dispmanx layer (in case of SIGSEGV)

AFAIK there is no documented way for a process to get the handle to a dispmanx layer of another process, so you can't free it after the leak. Though I never tried to store the dispmanx handles somewhere (maybe on the filesystem) and let another process pick them up and do the calls to free them. Fro...
by blackshard83
Tue Sep 26, 2017 11:38 am
Forum: Graphics programming
Topic: OpenVG & vgWritePixels
Replies: 13
Views: 3537

Re: OpenVG & vgWritePixels

It looks weird to me too, you should "just" see the colors altered if you fail to match the channels from the source image to the OpenVG format. Nonetheless it could be tricky because if you map a color channel to the alpha channel you may actually miss some parts of the image because the color chan...
by blackshard83
Thu Sep 07, 2017 10:01 am
Forum: Troubleshooting
Topic: Recipe to freeze the VideoCore (and freeze on reboot)
Replies: 0
Views: 214

Recipe to freeze the VideoCore (and freeze on reboot)

Hello, I don't know if this is a news or it is well-known, but I found a way to freeze the VideoCore and make the ARM unable to reboot. issuing: vcgencmd set_logging level=128 and then running any video using the omxplayer will flood the VideoCore log and bring the GPU to its knees. Unfortunately th...
by blackshard83
Thu Mar 23, 2017 7:48 am
Forum: OpenMAX
Topic: audio_render time latency
Replies: 3
Views: 2785

Re: audio_render time latency

No, I didn't. My basic block is a simple audio rendering driver, just a little piece of code that outputs some raw audio. In my experience, usually you program the audio consumer part (the audio_render component, in this case) with the latency you want (in terms of buffers/samples) and then the cons...
by blackshard83
Wed Mar 22, 2017 4:50 pm
Forum: OpenMAX
Topic: audio_render time latency
Replies: 3
Views: 2785

Re: audio_render time latency

Hmmm, I guess I got it wrong: my initial thought was that I had to feed the omx component as soon as every buffer is completed, so I have a semaphore which is increased as soon as a buffer is done, catching the EmptyBufferDone callback. This is not ideal because, I realize, the buffer is emptied imm...

Go to advanced search