Readit News logoReadit News
FraKtus commented on Ask HN: Do you create music? let's hear it    · Posted by u/saadalem
smrq · 5 years ago
I've been writing music for, god, almost 20 years by now. My current project is to actually write an album, as opposed to individual songs. It's coming along, slowly.

During quarantine I picked up a few things. I grew up on SNES RPGs, and one little project was to learn how the SPC worked a bit better. I ripped some samples for the instruments from Seiken Densetsu 3 and wrote a small sampler that can play back the raw ripped samples using SuperCollider. With that and ORCA, I made this tune, inspired by Infocom/Brian Moriarty's brilliant game Trinity. https://www.youtube.com/watch?v=ZZ0JY_LTxc8

Another project was inspired by growing up with Winamp visualizations. This ended up being a huge rabbit hole as I made a visualizer using Three.js, ran into performance problems rendering a 1440p video in JS, ported to C++ with plain old OpenGL, and figured out how to use ffmpeg from C++. All for a visualization for a track I did years ago! I love how it turned out, though. https://www.youtube.com/watch?v=zlA_Mkld3xc

FraKtus · 5 years ago
Tetrik is a great track and the visualisations are great.

For me having visuals nicely synchronised to the music is adding a lot.

Now that you have a nice custom tools to produce video you should build on it and produce more of them. You have a fan here!

FraKtus commented on New Xquartz release with native Apple Silicon support   mail-archive.com/xquartz-... · Posted by u/ismiseted
Lucasoato · 5 years ago
Is it related to Quartz composer?
FraKtus · 5 years ago
From very far.

Quartz Composer is a graph of filers that you can interconnect in a graphical interface. You use it to create visual filters or generators. iTunes was using Quartz composer files .qtz for some of his music visualizers.

Quartz Composer is GPU accelerated thanks to its use of the Quartz API.

It was very popular with artists because of the creative freedom it gave when composing the filters. You did not need to be a developer to create a filter, thanks to the editing application.

Quartz Composer is now deprecated and dying in slow and anonymous death.

XQuartz is a windowing system accelerated with Quartz. The X system was not invented by Apple but very popular on top of Unix.

FraKtus commented on Ask HN: Please share your experience teaching your kids to program    · Posted by u/lmilcin
FraKtus · 5 years ago
I tried several things but what got the interest of my daughter(10) is code.org

She also uses it at school, and she regularly enjoys working with it on her own.

Because she seems to go more toward the graphical creative side, I made her work on the logo of a personal project I work on at the moment, and she did enjoy it a lot.

Sometimes I ask her to edit some c++ code I work on and see how the result is when running the code from Xcode; we have a lot of fun doing that!

FraKtus commented on Show HN: Make comic book layouts in the browser   andrewfulrich.gitlab.io/p... · Posted by u/TiredGuy
FraKtus · 5 years ago
Does not seems to work with Safari 13, had no problems with Chrome on macOS.

Really great, did show this to my daughter that is into comics!

FraKtus commented on Show HN: I Built a Synthesizer with WASM   timdaub.github.io/wasm-sy... · Posted by u/timdaub
timdaub · 5 years ago
Hi, OP here.

I also wrote a long blog post about my journey building it here: https://timdaub.github.io/2020/02/19/wasm-synth/

Have fun jamming :)

FraKtus · 5 years ago
It does not work for me with Safari 13, no sound. Works fine with Chrome.

This is nice!

Can you explain how you implemented the interface?

FraKtus commented on Show HN: BeautifulCode, generate beautiful images of your source code   beautifulcodes.in/... · Posted by u/rahulpadalkar
FraKtus · 5 years ago
Editing the code is weird with Safari 13, the pointer was a few char off. Exporting PNG does not work.
FraKtus commented on Run x86 Apps (including homebrew) in the Terminal on Apple Silicon   notion.so/Run-x86-Apps-in... · Posted by u/JoshuaMulliken
teilo · 5 years ago
No, not even close. There is more that doesn't work than works. Of what I use, all I got was python3 and git. But no python3.8, no ffmpeg, no erlang, no gnutls, and on and on.

https://github.com/Homebrew/brew/issues/7857

FraKtus · 5 years ago
There is no need of homebrew to install ffmpeg on Apple Silicon. I could just ./configure and make on the DTK.

ffmpeg has so many configure options, I always avoid building it with brew.

FraKtus commented on Dear ImGui – Bloat-free graphical user interface library for C++   github.com/ocornut/imgui... · Posted by u/dragonsh
exDM69 · 5 years ago
As much as I like Dear ImGui, the immediate mode paradigm doesn't work everywhere. The problem of "page tearing" (not to be confused with vsync) means you either need to render frames continuously, or at least 2 frames for every time you get input or need to implement some kind of "retained mode state tracking" on top of Imgui. It's good for games, but for applications where you're not rendering new frames constantly, the paradigm doesn't seem a very good fit.

I wish there was a retained mode GUI library that would be as easy to integrate in your game and graphics apps as ImGui (or nuklear) is.

On my spare time, I've been working on a retained mode GUI layout and rendering framework (not a complete GUI toolkit) that uses a DOM-like tree, CSS style flexbox layouts and produces a vertex buffer for rendering like ImGui does.

Unfortunately life gets in the way, and all I have to show for my project is a small prototype in C and another one in Rust (can't decide which I like more) that draws some text and rectangles with a fancy layout. Code is not public at the moment but I'm willing to share it with anyone (on GitHub) who responds with a thoughtful comment or a good question.

I have been following Raph Levien's fantastic work on Druid and Rust GUIs which has been very inspirational, this video in particular [0].

Where Raph is focused on native GUI rendering and high fidelity text output, I've only focused on rendering in a GPU application using shaders and only very basic text layout with simple kerning (like Dear ImGui).

As Raph points out in his later talks on the topic, layout and rendering are only half of the GUI puzzle. The other half is maintaining the state of the application, usually through some kind of widget tree.

Leave a comment if you're interested, I'd be happy to chat even though it doesn't seem like my projects are going anywhere anytime soon.

[0] https://www.youtube.com/watch?v=4YTfxresvS8 Data Oriented GUI in Rust by Raph Levien

FraKtus · 5 years ago
Maybe it is still VBL related, in the DX11 sample you will see this when presenting the final frame:

g_pSwapChain->Present(1, 0); // Present with vsync

//g_pSwapChain->Present(0, 0); // Present without vsync

So you can control this by setting the first argument to 1 or 0.

u/FraKtus

KarmaCake day177March 25, 2012
About
Software architect, fascinated by music visualization. http://blog.fraktus.com
View Original