-
Notifications
You must be signed in to change notification settings - Fork 1
GNRC Tutorial Wiki Part 6: Enhance our graph
tandersn edited this page Nov 27, 2022
·
5 revisions
To continue on, we are going to learn some new block types, and integrate them into the graph from Part 5, to drop the extra line that is added to the .tbc file. This was initially needed to play a .tbc file out via the FL2K DAC dongle, but is now no longer required because Vrunk11 has incorporated this function into his forked repo of fl2k_file2. It will help us move forward though, so it is still a convenient exercise.
We will be learning a few new block types, i won't go into as much details as before, but all the previous information about "blocks" still applies.
-
Virtual Sink and Virtual Source: "Virtual Sink" and "Virtual Source" work together to give you a way to "wrap" the flow of your graph. You must add both if you add one. Generally, when you add blocks, you add them in a row from left to right. Eventually, you run out of room in the visible workspace. At this point, you have a few options:
- You can just scroll the worksheet and keep adding. The drawback is that you can't see all your blocks at once.
- You can "rotate" your blocks, so the flow of the graph is kind of like a "Z". I like this way, but a lot of people seem to like to read blocks like they read a book, left to right, next row, etc. etc.
- Use a "Virtual Sink" as the last block on a row, and a corresponding "Virtual Source" as the first block on the next row. We'll use this method this time...
- Stream Demux: "Stream Demux" takes in a stream of items, of a set length (default is one), and splits them up in the numbers you specify, and sends them out different outputs. The default is 2 outputs, but you can have many more. We're going to use this to discard the samples that make up the 526th line of an NTSC TBC.
- Null Sink: Samples have to go "Somewhere". It'd be nice if "Null Sink" was implied, but it isn't. Any time you want to discard some samples, you can send them to a "Null Sink". "Null Sink" is like "/dev/null" on *nix.
(to be continued...)