3 Commits

Author SHA1 Message Date
d1108be94b updated readme 2023-08-28 11:58:47 +02:00
2e8ccce703 fix: video visualizer 2023-08-28 11:57:40 +02:00
77843db6de fixed assets 2023-08-27 19:58:22 +02:00
6 changed files with 12 additions and 19 deletions

View File

@ -29,8 +29,8 @@ couple of hours (which I was honestly not expecting).
## Dependencies ## Dependencies
- `go >= 1.21` - `go` >= 1.21
- `ffmpeg` (optional, for video visualization, see [visualization methods](#visulazation-methods) - `ffmpeg` (optional, for video visualization, see [visualization methods](#visulazation-methods))
## Usage ## Usage

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 6.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 MiB

After

Width:  |  Height:  |  Size: 12 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 MiB

After

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

After

Width:  |  Height:  |  Size: 9.7 MiB

View File

@ -8,7 +8,6 @@ import (
"os" "os"
"os/exec" "os/exec"
"path" "path"
"sync"
"github.com/mazznoer/colorgrad" "github.com/mazznoer/colorgrad"
) )
@ -35,11 +34,8 @@ func (v *VideoVisualizer) Visualize(solved_chan <-chan *maze.SolvedMaze) {
if err != nil { if err != nil {
panic(err) panic(err)
} }
var wg sync.WaitGroup
i := 0 i := 0
for solved := range solved_chan { for solved := range solved_chan {
wg.Add(1)
go func() {
img_writer := writer.ImageWriter{ img_writer := writer.ImageWriter{
Filename: path.Join(tmp_dir, fmt.Sprintf("%07v.png", i)), Filename: path.Join(tmp_dir, fmt.Sprintf("%07v.png", i)),
Maze: solved, Maze: solved,
@ -50,11 +46,8 @@ func (v *VideoVisualizer) Visualize(solved_chan <-chan *maze.SolvedMaze) {
SolutionGradient: colorgrad.Warm(), SolutionGradient: colorgrad.Warm(),
} }
img_writer.Write() img_writer.Write()
wg.Done()
}()
i++ i++
} }
wg.Wait()
cmd := exec.Command( cmd := exec.Command(
v.ffmpeg_cmd, v.ffmpeg_cmd,
"-y", "-y",