- Import an sgf.
- Close the program without saving changes.
- The file Current.Replay.gor has been created in the folder where you imported the sgf from. This is wrong for two reasons:
- It saves the file in a folder where I don't want it.
- It doesn't delete the file when the program is closed.
Go Audio Lesson Tool
- CarlJung
- Lives in gote
- Posts: 429
- Joined: Wed Apr 21, 2010 1:10 pm
- Rank: SDK
- GD Posts: 0
- KGS: CarlJung
- Location: Sweden
- Has thanked: 101 times
- Been thanked: 73 times
Re: Go Audio Lesson Tool
FusekiLibrary, an opening library.
SGF converter tools: Wbaduk NGF to SGF | 440 go problems | Fuseki made easy | Tesuji made easy | Elementary training & Dan level testing | Dan Tutor Shortcut To Dan
SGF converter tools: Wbaduk NGF to SGF | 440 go problems | Fuseki made easy | Tesuji made easy | Elementary training & Dan level testing | Dan Tutor Shortcut To Dan
- Li Kao
- Lives in gote
- Posts: 643
- Joined: Wed Apr 21, 2010 10:37 am
- Rank: KGS 3k
- GD Posts: 0
- KGS: LiKao / Loki
- Location: Munich, Germany
- Has thanked: 115 times
- Been thanked: 102 times
Re: Go Audio Lesson Tool
The differences between wms's format and my format are interesting.
In his format a node is a central concept, probably both on disk, and in memory.
Whereas in my case a node is pretty unimportant. A node is just a bookmark in the graphical representation. And my replay is inspired by starcraft replays and is a sequence of actions the user performed, and not a sequence of modifications to a sgf tree.
I'll have to think about the role of a node. It might be good to promote it to better interact with other programs and with sgf. But really promoting it requires changing the file and memory format to something similar to what wms uses.
Breaking the current SGF parser shouldn't be too hard. It doesn't know what a node is and translates the properties from left to right. So superfluous nodes are probably automatically combined. And strange ordering of properties inside a node might break it too. Teaching it about nodes is somewhere on my todo list.
Where to save logs, autosaves, etc is an interesting question. Using the working directory is stupid of course.
As a fan of portable apps I'd like to use the app directory or a subdirectory of it. But that causes problems for unprivileged users since they often have no write-access to the directory where the application is installed.
Since I hate programs which write the MyDocuments without permission I won't do that either.
So for non portable installs the user appdata directory is the correct choice probably. But how do I distinguish portable installations from non portable ones?
In his format a node is a central concept, probably both on disk, and in memory.
Whereas in my case a node is pretty unimportant. A node is just a bookmark in the graphical representation. And my replay is inspired by starcraft replays and is a sequence of actions the user performed, and not a sequence of modifications to a sgf tree.
I'll have to think about the role of a node. It might be good to promote it to better interact with other programs and with sgf. But really promoting it requires changing the file and memory format to something similar to what wms uses.
Breaking the current SGF parser shouldn't be too hard. It doesn't know what a node is and translates the properties from left to right. So superfluous nodes are probably automatically combined. And strange ordering of properties inside a node might break it too. Teaching it about nodes is somewhere on my todo list.
Where to save logs, autosaves, etc is an interesting question. Using the working directory is stupid of course.
As a fan of portable apps I'd like to use the app directory or a subdirectory of it. But that causes problems for unprivileged users since they often have no write-access to the directory where the application is installed.
Since I hate programs which write the MyDocuments without permission I won't do that either.
So for non portable installs the user appdata directory is the correct choice probably. But how do I distinguish portable installations from non portable ones?
Sanity is for the weak.
- CarlJung
- Lives in gote
- Posts: 429
- Joined: Wed Apr 21, 2010 1:10 pm
- Rank: SDK
- GD Posts: 0
- KGS: CarlJung
- Location: Sweden
- Has thanked: 101 times
- Been thanked: 73 times
Re: Go Audio Lesson Tool
Good question. I don't know if there is a "proper" way. Perhaps one can hack something together with the types in the Environment.SpecialFolder namespace.Li Kao wrote:So for non portable installs the user appdata directory is the correct choice probably. But how do I distinguish portable installations from non portable ones?
I believe if you just solve where to save temporary data on an unsaved project the portability aspect would sort of solve itself. It would be up to the user where to store the program and his projects.
FusekiLibrary, an opening library.
SGF converter tools: Wbaduk NGF to SGF | 440 go problems | Fuseki made easy | Tesuji made easy | Elementary training & Dan level testing | Dan Tutor Shortcut To Dan
SGF converter tools: Wbaduk NGF to SGF | 440 go problems | Fuseki made easy | Tesuji made easy | Elementary training & Dan level testing | Dan Tutor Shortcut To Dan
- Li Kao
- Lives in gote
- Posts: 643
- Joined: Wed Apr 21, 2010 10:37 am
- Rank: KGS 3k
- GD Posts: 0
- KGS: LiKao / Loki
- Location: Munich, Germany
- Has thanked: 115 times
- Been thanked: 102 times
Re: Go Audio Lesson Tool
Download Alpha 3
* Added Navigation so you can now move around using the keyboard instead of clicking the game-tree
* Fade inactive variations
* Highlight current move and next moves on the board
* When playing an already played move again it doesn't create a new node
For now I'm saving temp files in the app directory but I'll need to change that later.
* Added Navigation so you can now move around using the keyboard instead of clicking the game-tree
* Fade inactive variations
* Highlight current move and next moves on the board
* When playing an already played move again it doesn't create a new node
For now I'm saving temp files in the app directory but I'll need to change that later.
Sanity is for the weak.
- wms
- Lives in gote
- Posts: 450
- Joined: Tue Apr 20, 2010 4:23 pm
- GD Posts: 0
- KGS: wms
- Location: Portland, OR USA
- Has thanked: 257 times
- Been thanked: 287 times
- Contact:
Re: Go Audio Lesson Tool
I have mixed feelings about nodes and SGF. I did it the way I did because (as you point out), if you want to interoperate cleanly with SGF, you need to care about nodes. But nodes can be a real pain in the neck sometimes, and just having a "stop here" bookmark (as you do) would make some things a lot easier. But whenever I think about leaving SGF behind, well, there's so much weight behind the SGF standard, and it works decently enough that it doesn't need to be replaced, so I keep on using SGF (both in file formats, and as an in-program data representation).Li Kao wrote:The differences between wms's format and my format are interesting.
In his format a node is a central concept, probably both on disk, and in memory.
Whereas in my case a node is pretty unimportant. A node is just a bookmark in the graphical representation.
- Li Kao
- Lives in gote
- Posts: 643
- Joined: Wed Apr 21, 2010 10:37 am
- Rank: KGS 3k
- GD Posts: 0
- KGS: LiKao / Loki
- Location: Munich, Germany
- Has thanked: 115 times
- Been thanked: 102 times
Re: Go Audio Lesson Tool
The way I handle nodes has it's fair share of problems too. I recreate the whole tree after every change. And since I create a node where ever variations fork I create unneeded nodes when decorations(like labels) are added to a position which is not at the end of a variation.
One interesting effect of the way I handle nodes is that if I change the node creation logic playing a lesson displays a tree different from the one displayed when recording. But it only affects the tree and not what happens in the game itself.
And it doesn't lend itself to creating a sgf editor. So I'll probably end up with lossy sgf import/export.
One interesting effect of the way I handle nodes is that if I change the node creation logic playing a lesson displays a tree different from the one displayed when recording. But it only affects the tree and not what happens in the game itself.
And it doesn't lend itself to creating a sgf editor. So I'll probably end up with lossy sgf import/export.
Sanity is for the weak.
- koks9dan
- Dies in gote
- Posts: 28
- Joined: Fri Apr 30, 2010 3:47 am
- Rank: 8k KGS
- GD Posts: 260
- Location: Sydney, Australia
- Has thanked: 4 times
- Contact:
Re: Go Audio Lesson Tool
This might be a bug... I cannot open the program: nothing happens when I double click the exe file. I'm using Win XP.

- Li Kao
- Lives in gote
- Posts: 643
- Joined: Wed Apr 21, 2010 10:37 am
- Rank: KGS 3k
- GD Posts: 0
- KGS: LiKao / Loki
- Location: Munich, Germany
- Has thanked: 115 times
- Been thanked: 102 times
Re: Go Audio Lesson Tool
Do you have .net 3.5 installed?
Perhaps even .net 3.5 SP1 is required, but I'm not sure about that.
Perhaps even .net 3.5 SP1 is required, but I'm not sure about that.
Sanity is for the weak.
-
Boywing
- Beginner
- Posts: 15
- Joined: Wed Apr 28, 2010 3:47 am
- Rank: EGF 4 kyu
- GD Posts: 8
- KGS: boywing
- Location: Sweden
- Has thanked: 1 time
- Contact:
Re: Go Audio Lesson Tool
I'm not a Windows programmer but maybe you can have registry-script/installer that creates a Windows registry key. If that key exists you store data in the users appdata. If the registry key is missing then it is a portable app and the data is stored in a sub-directory in the applications directory.Li Kao wrote:So for non portable installs the user appdata directory is the correct choice probably. But how do I distinguish portable installations from non portable ones?
Interesting project btw.
I look forward to a Linux or web port.
Boywing [4k?]
Go for Life
Go for Life
- Li Kao
- Lives in gote
- Posts: 643
- Joined: Wed Apr 21, 2010 10:37 am
- Rank: KGS 3k
- GD Posts: 0
- KGS: LiKao / Loki
- Location: Munich, Germany
- Has thanked: 115 times
- Been thanked: 102 times
Re: Go Audio Lesson Tool
Making it work on mono is on the todo list. But for that I need to search for a cross platform audio api that supports recording. And if it has no C# wrapper I need to do native interop :/
And I'd like to create a player only web version, but I don't like the legal risks associated with having a website which allows third party content. German courts can be pretty annoying.
And I'd like to create a player only web version, but I don't like the legal risks associated with having a website which allows third party content. German courts can be pretty annoying.
Sanity is for the weak.
- koks9dan
- Dies in gote
- Posts: 28
- Joined: Fri Apr 30, 2010 3:47 am
- Rank: 8k KGS
- GD Posts: 260
- Location: Sydney, Australia
- Has thanked: 4 times
- Contact:
Re: Go Audio Lesson Tool
Thanks, I make it run successfully now that I installed .net 3.5 SP1. However, the audio recording doesnt seem to work. I barely hear my voiceLi Kao wrote:Do you have .net 3.5 installed?
Perhaps even .net 3.5 SP1 is required, but I'm not sure about that.
- Li Kao
- Lives in gote
- Posts: 643
- Joined: Wed Apr 21, 2010 10:37 am
- Rank: KGS 3k
- GD Posts: 0
- KGS: LiKao / Loki
- Location: Munich, Germany
- Has thanked: 115 times
- Been thanked: 102 times
Re: Go Audio Lesson Tool
New Version 4:
* Go to a move by clicking on the stone
* Some workflow changes when recording
* Speex preprocessing for higher audio quality
* A html5 webplayer. Works in Firefox, Iron and Opera.
* Go to a move by clicking on the stone
* Some workflow changes when recording
* Speex preprocessing for higher audio quality
* A html5 webplayer. Works in Firefox, Iron and Opera.
Sanity is for the weak.
-
govortex
- Beginner
- Posts: 3
- Joined: Tue May 25, 2010 12:23 am
- Rank: EGF 5 dan
- GD Posts: 0
- Has thanked: 1 time
- Contact:
Re: Go Audio Lesson Tool
Check this http://www.govortex.org/go-audios/ and let me know what you think about it. I'm using a
experimental ZGo 2.1.0 version and for the moment you need some skills to make the audio lesson, but I think I can make it easier to use.
experimental ZGo 2.1.0 version and for the moment you need some skills to make the audio lesson, but I think I can make it easier to use.
- Li Kao
- Lives in gote
- Posts: 643
- Joined: Wed Apr 21, 2010 10:37 am
- Rank: KGS 3k
- GD Posts: 0
- KGS: LiKao / Loki
- Location: Munich, Germany
- Has thanked: 115 times
- Been thanked: 102 times
Re: Go Audio Lesson Tool
Not yet in the client. The web-viewer on the other hand can be skinned with css.
Example of the webviewer(Works in Firefox, Opera and Chrome)
Example of the webviewer(Works in Firefox, Opera and Chrome)
Sanity is for the weak.
