Git Product home page Git Product logo

barnard's Introduction

barnard

barnard is a terminal-based client for the Mumble voice chat software.

Screenshot

Installation

Requirements:

  1. Go
  2. Git
  3. Opus development headers
  4. OpenAL development headers

To fetch and build:

go get -u layeh.com/barnard

After running the command above, barnard will be compiled as $(go env GOPATH)/bin/barnard.

Manual

Key bindings

  • F1: toggle voice transmission
  • Ctrl+L: clear chat log
  • Tab: toggle focus between chat and user tree
  • Page Up: scroll chat up
  • Page Down: scroll chat down
  • Home: scroll chat to the top
  • End: scroll chat to the bottom
  • F10: quit

License

GPLv2

Author

Tim Cooper ([email protected])

barnard's People

Contributors

sregister avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

barnard's Issues

No sound was recorded and transmitted.

I'm using an USB sound card and I test my microphone and headphone by using sox. All of them works well.
Here's my arecord-l outputs:

pi@raspberrypi:~` $ arecord -l
**** List of CAPTURE Hardware Devices ****
card 1: Camera [H264 USB Camera], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: Audio [USB Audio], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0

Here's my .asoundrc

pcm.output {
type hw
card 2
}
ctl.!default {
type hw
card 2
}

When I was using barnard, the headphone was working ,but the microphone does not seem to be working. I could hear other people talking but others could not hear me.

By the way , is this project EOL?

Post-F1 keypress crash

I get the following output after connecting to the server and hitting F1, any ideas?

[13:31:49] Welcome message: Welcome to chat █
To: Chat Server
runtime: newstack framesize=0xc argsize=0x0 sp=0x44cfede4 stack=[0x469fd000, 0x469fefd0]
morebuf={pc:0x0 sp:0x0 lr:0x0}
sched={pc:0x255b8 sp:0x44cfede4 lr:0x76e10778 ctxt:0x0}
runtime: split stack overflow: 0x44cfede4 < 0x469fd000
fatal error: runtime: split stack overflow

runtime stack:
runtime.throw(0x45e31b)
/usr/lib/go/src/pkg/runtime/panic.c:520 +0x5c
runtime.newstack()
/usr/lib/go/src/pkg/runtime/stack.c:725 +0x21c
runtime.morestack()
/usr/lib/go/src/pkg/runtime/asm_arm.s:210 +0x44

goroutine 26 [stack growth]:
runtime.cgocall(0x14960, 0x469feee8)
/usr/lib/go/src/pkg/runtime/cgocall.c:142 +0xdc fp=0x469feed8 sp=0x469feeac
github.com/timshannon/go-openal/openal._Cfunc_alcCaptureSamples(0x0, 0x574ecc00, 0x1e0)
github.com/timshannon/go-openal/openal/_obj/_cgo_defun.c:297 +0x34 fp=0x469feee4 sp=0x469feed8
github.com/timshannon/go-openal/openal.(*CaptureDevice).CaptureTo(0x57522280, 0x574ecc00, 0x3c0, 0x3c0)
/home/pi/gocode/src/github.com/timshannon/go-openal/openal/alcCore.go:179 +0x8c fp=0x469feef4 sp=0x469feee4
github.com/timshannon/go-openal/openal.(*CaptureDevice).CaptureSamples(0x57522280, 0x1e0, 0x574ecc00, 0x3c0, 0x3c0)
/home/pi/gocode/src/github.com/timshannon/go-openal/openal/alcCore.go:204 +0xa4 fp=0x469fef20 sp=0x469feef4
layeh.com/gumble/gumbleopenal.(*Stream).sourceRoutine(0x57510c00)
/home/pi/gocode/src/layeh.com/gumble/gumbleopenal/stream.go:142 +0x22c fp=0x469fefc4 sp=0x469fef20
runtime.goexit()
/usr/lib/go/src/pkg/runtime/proc.c:1445 fp=0x469fefc4 sp=0x469fefc4
created by layeh.com/gumble/gumbleopenal.(*Stream).StartSource
/home/pi/gocode/src/layeh.com/gumble/gumbleopenal/stream.go:66 +0xb0

goroutine 16 [runnable]:
github.com/nsf/termbox-go.SetCell(0x454, 0xc5, 0x20, 0x10008)
/home/pi/gocode/src/github.com/nsf/termbox-go/api.go:225
layeh.com/barnard/uiterm.(*Textview).uiDraw(0x56c6e24c)
/home/pi/gocode/src/layeh.com/barnard/uiterm/textview.go:146 +0x218
layeh.com/barnard/uiterm.(*Ui).Refresh(0x56c28840)
/home/pi/gocode/src/layeh.com/barnard/uiterm/ui.go:60 +0x120
layeh.com/barnard.(*Barnard).OnVoiceToggle(0x56c6e1a0, 0x56c28840, 0x9ffff)
/home/pi/gocode/src/layeh.com/barnard/ui.go:58 +0xcc
layeh.com/barnard.*Barnard.OnVoiceToggle·fm(0x56c28840, 0x56c1ffff)
/home/pi/gocode/src/layeh.com/barnard/ui.go:152 +0x3c
layeh.com/barnard/uiterm.(*Ui).onKeyEvent(0x56c28840, 0xffff8100)
/home/pi/gocode/src/layeh.com/barnard/uiterm/ui.go:142 +0x118
layeh.com/barnard/uiterm.(*Ui).Run(0x56c28840, 0x0, 0x0)
/home/pi/gocode/src/layeh.com/barnard/uiterm/ui.go:126 +0x2d4
main.main()
/home/pi/gocode/src/github.com/layeh/barnard/cmd/barnard/main.go:47 +0x628

goroutine 19 [finalizer wait]:
runtime.park(0x2af40, 0x473848, 0x45f0c9)
/usr/lib/go/src/pkg/runtime/proc.c:1369 +0x5c
runtime.parkunlock(0x473848, 0x45f0c9)
/usr/lib/go/src/pkg/runtime/proc.c:1385 +0x40
runfinq()
/usr/lib/go/src/pkg/runtime/mgc0.c:2644 +0xa0
runtime.goexit()
/usr/lib/go/src/pkg/runtime/proc.c:1445

goroutine 20 [syscall]:
os/signal.loop()
/usr/lib/go/src/pkg/os/signal/signal_unix.go:21 +0x24
created by os/signal.init·1
/usr/lib/go/src/pkg/os/signal/signal_unix.go:27 +0x48

goroutine 21 [select]:
github.com/nsf/termbox-go.func·001()
/home/pi/gocode/src/github.com/nsf/termbox-go/api.go:86 +0x38c
created by github.com/nsf/termbox-go.Init
/home/pi/gocode/src/github.com/nsf/termbox-go/api.go:105 +0x7a8

goroutine 22 [select]:
github.com/nsf/termbox-go.PollEvent(0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/pi/gocode/src/github.com/nsf/termbox-go/api.go:320 +0x5c8
layeh.com/barnard/uiterm.func·001()
/home/pi/gocode/src/layeh.com/barnard/uiterm/ui.go:104 +0x2c
created by layeh.com/barnard/uiterm.(*Ui).Run
/home/pi/gocode/src/layeh.com/barnard/uiterm/ui.go:106 +0x150

goroutine 17 [syscall]:
runtime.goexit()
/usr/lib/go/src/pkg/runtime/proc.c:1445

goroutine 23 [IO wait]:
net.runtime_pollWait(0x46adea70, 0x72, 0x0)
/usr/lib/go/src/pkg/runtime/netpoll.goc:146 +0x6c
net.(*pollDesc).Wait(0x56c3e0b8, 0x72, 0x0, 0x0)
/usr/lib/go/src/pkg/net/fd_poll_runtime.go:84 +0x44
net.(*pollDesc).WaitRead(0x56c3e0b8, 0x0, 0x0)
/usr/lib/go/src/pkg/net/fd_poll_runtime.go:89 +0x40
net.(*netFD).Read(0x56c3e080, 0x56c60800, 0x400, 0x400, 0x0, 0x46add230, 0xb)
/usr/lib/go/src/pkg/net/fd_unix.go:242 +0x320
net.(*conn).Read(0x56c32428, 0x56c60800, 0x400, 0x400, 0x0, 0x0, 0x0)
/usr/lib/go/src/pkg/net/net.go:122 +0xd4
crypto/tls.(*block).readFromUntil(0x56c1d260, 0x46adeaf8, 0x56c32428, 0x5, 0x0, 0x0)
/usr/lib/go/src/pkg/crypto/tls/conn.go:451 +0xdc
crypto/tls.(*Conn).readRecord(0x56c70180, 0x17, 0x0, 0x0)
/usr/lib/go/src/pkg/crypto/tls/conn.go:536 +0x1b4
crypto/tls.(*Conn).Read(0x56c70180, 0x57522816, 0x6, 0x6, 0x0, 0x0, 0x0)
/usr/lib/go/src/pkg/crypto/tls/conn.go:901 +0x16c
io.ReadAtLeast(0x46ae3388, 0x56c70180, 0x57522816, 0x6, 0x6, 0x6, 0x0, 0x0, 0x0)
/usr/lib/go/src/pkg/io/io.go:289 +0xf4
io.ReadFull(0x46ae3388, 0x56c70180, 0x57522816, 0x6, 0x6, 0x0, 0x0, 0x0)
/usr/lib/go/src/pkg/io/io.go:307 +0x6c
layeh.com/gumble/gumble.(*Conn).ReadPacket(0x574e7b30, 0x5750e600, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/pi/gocode/src/layeh.com/gumble/gumble/conn.go:46 +0x15c
layeh.com/gumble/gumble.(*Client).readRoutine(0x56c63d90)
/home/pi/gocode/src/layeh.com/gumble/gumble/client.go:234 +0x5c
created by layeh.com/gumble/gumble.DialWithDialer
/home/pi/gocode/src/layeh.com/gumble/gumble/client.go:116 +0x298

goroutine 24 [select]:
layeh.com/gumble/gumble.(*Client).pingRoutine(0x56c63d90)
/home/pi/gocode/src/layeh.com/gumble/gumble/client.go:217 +0x330
created by layeh.com/gumble/gumble.DialWithDialer
/home/pi/gocode/src/layeh.com/gumble/gumble/client.go:134 +0x550

goroutine 27 [chan receive]:
layeh.com/gumble/gumble.func·001()
/home/pi/gocode/src/layeh.com/gumble/gumble/client.go:182 +0x6c
created by layeh.com/gumble/gumble.(*Client).AudioOutgoing
/home/pi/gocode/src/layeh.com/gumble/gumble/client.go:191 +0xc0

build failed

log:

../go-openal/openal/alcCore.go:114:149: cannot use _cgo0 (type *_Ctype_struct_ALCde
 argument to _Cfunc_alcGetError
*:156:100: cannot use _cgo0 (type *_Ctype_struct_ALCde
 argument to _Cfunc_alcCloseDevice
*:162:107: cannot use _cgo0 (type *_Ctype_struct_ALCde
 argument to _Cfunc_alcCreateContext
*:171:110: cannot use _cgo0 (type *_Ctype_struct_ALCde
 argument to _Cfunc_walcGetIntegerv
*:176:156: cannot use _cgo0 (type *_Ctype_struct_ALCde
 argument to _Cfunc_walcGetInteger
*:200:114: cannot use _cgo0 (type *_Ctype_struct_ALCde
 argument to _Cfunc_alcCaptureCloseDevice
*:208:88: cannot use _cgo0 (type *_Ctype_struct_ALCdev
argument to _Cfunc_alcCaptureStart
*:212:86: cannot use _cgo0 (type *_Ctype_struct_ALCdev
argument to _Cfunc_alcCaptureStop
*:216:179: cannot use _cgo0 (type *_Ctype_struct_ALCde
 argument to _Cfunc_alcCaptureSamples
*:220:179: cannot use _cgo0 (type *_Ctype_struct_ALCde
 argument to _Cfunc_alcCaptureSamples
../go-openal/openal/alcCore.go:220:179: too many errors

problems with jack server

I am using this on a raspberry pi. When i updated (fresh install) to Raspbian(debian) stretch, Barnard started giving me trouble with the jack server: if I use jack2 it asks for d-bus (not working because in headless mode), and if I use jack1 it gives me "unknown option character l".

I still can't understand exactly where this option is used.

Thank you in advance,
Pier

Can't install

Hi, so i've upgraded to Go 1.5.3 but i still can't install it, any clue?

go get -u github.com/layeh/barnard/cmd/barnard
# github.com/timshannon/go-openal/openal
go/src/github.com/timshannon/go-openal/openal/alcCore.go:86: cannot use unsafe.Pointer(self.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_alcGetError
go/src/github.com/timshannon/go-openal/openal/alcCore.go:121: cannot use unsafe.Pointer(self.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_alcCloseDevice
go/src/github.com/timshannon/go-openal/openal/alcCore.go:127: cannot use unsafe.Pointer(self.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_alcCreateContext
go/src/github.com/timshannon/go-openal/openal/alcCore.go:132: cannot use unsafe.Pointer(self.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_walcGetIntegerv
go/src/github.com/timshannon/go-openal/openal/alcCore.go:137: cannot use unsafe.Pointer(self.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_walcGetInteger
go/src/github.com/timshannon/go-openal/openal/alcCore.go:158: cannot use unsafe.Pointer(self.Device.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_alcCaptureCloseDevice
go/src/github.com/timshannon/go-openal/openal/alcCore.go:166: cannot use unsafe.Pointer(self.Device.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_alcCaptureStart
go/src/github.com/timshannon/go-openal/openal/alcCore.go:170: cannot use unsafe.Pointer(self.Device.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_alcCaptureStop
go/src/github.com/timshannon/go-openal/openal/alcCore.go:174: cannot use unsafe.Pointer(self.Device.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_alcCaptureSamples
go/src/github.com/timshannon/go-openal/openal/alcCore.go:178: cannot use unsafe.Pointer(self.Device.handle) (type unsafe.Pointer) as type *C.struct_ALCdevice_struct in argument to _Cfunc_alcCaptureSamples
go/src/github.com/timshannon/go-openal/openal/alcCore.go:178: too many errors

go version
go version go1.5.3 linux/arm

mumble server & barnard: x509 certificate...

First: Thank you for sharing the possibility to have a command line based mumble client!

Machine: Raspberry Pi 3B+ with Stretch
What i did so far:
Installed Mumble Server:

$ sudo apt-get install mumble-server
$ sudo dpkg-reconfigure mumble-server // with autostart --> yes, higher priority --> yes, passw...

Then i installed the required dev libs for barnard like:
$ sudo apt-get install golang libopus-dev libopenal-dev
and installed barnard with

$ export GOPATH=$HOME/go
$ go get -u layeh.com/barnard

ALL on THE SAME MACHINE (because thats what I'm after ;-) )

When i try to start barnard with
$ ./go/bin/barnard
, I'm getting an error like
x509: certificate is valid for Murmur Autogenerated Certificate v2, not localhost

My thoughts are:

  1. no server certificate?
  2. no client certificate?

I read about a similar problem over here layeh/gumble#4, so I think there's no server certificate, or probably just a not trusted one.

At this point I of course tried to find a way to install a certificate or to sign one myself. I just don't really know how to do that and where to find a way to do it. I tried to connect my phone to the mumble-server and the mumble client asked me, if I wanna trust the server certificate. I hit "Install" and everything worked.

So my question probably is more like:

  1. How can I get that error away
  2. Do I have to get a certificate (maybe from lets encrypt) and HOW?
  3. How Do I sign my own certificates for Mumble, so that barnard trusts them or even asks me for trusting it.

not able to compile...

possible i am a to big stranger of the compilation process of software written in go... but ive got a problem in compiling barnared:

gwtest@vps538:~$ mkdir -p go-apps/src
gwtest@vps538:~$ cd go-apps/src/
gwtest@vps538:~/go-apps/src$ export GOPATH=/home/gwtest/go-apps
gwtest@vps538:~/go-apps/src$ 
gwtest@vps538:~/go-apps/src$ git clone https://github.com/layeh/barnard.git
Cloning into 'barnard'...
remote: Counting objects: 105, done.
remote: Compressing objects: 100% (44/44), done.
remote: Total 105 (delta 61), reused 101 (delta 57)
Receiving objects: 100% (105/105), 19.45 KiB, done.
Resolving deltas: 100% (61/61), done.
gwtest@vps538:~/go-apps/src$ cd barnard/
gwtest@vps538:~/go-apps/src/barnard$ go get
../code.google.com/p/goprotobuf/proto/text.go:39:2: no Go source files in /usr/lib/go/src/pkg/encoding
gwtest@vps538:~/go-apps/src/barnard$ 

certificate problem - doesn't contain any IP SANs exit status 1

can anyone offer insight to my problem here?

barnard installed, attempting to connect to a win7 murmur server.
plumble (android mumble client app) connects successfully

i've generated a certificate on the plumble android app, and transferred it to the barnard install dir on my pi.
i then ran the following command to convert the .p12 cert to a .pem:

openssl pkcs12 -in plumble-2017-04-26_22-36-48.p12 -out certificate.pem -nodes

the conversion seems to work, but when trying to connect:

go run cmd/barnard/main.go -server=192.168.1.123:64738 -username=”front_door” -insecure=true -certificate=/home/pi/.go/src/layeh.com/barnard/certificate.pem

i get the following error:

x509: cannot validate certificate for 192.168.1.123 because it doesn't contain any IP SANs
exit status 1

the murmur server log shows this:
2017-05-13 11:55:32.583 1 => <1:(-1)> New connection: 192.168.1.169:57870
2017-05-13 11:55:32.875 1 => <1:(-1)> Connection closed: The remote host closed the connection [1]

does anyone know what's going on here?? I'm so close!

thanks in advance,
Dan

Install issues

Hi,

I am having issues with installing
Now as root again (sudo -i), edit /etc/systemd/system/mumble.service appending -username USERNAME_TO_REGISTER -certificate /home/mumble/mumble.pem at the end of ExecStart = /home/mumble/bin/talkiepi

Description = Mumble Client  
Requires = systemd-user-sessions.service network.target sound.target
After = multi-user.target

[Service]
User = mumble  
Group = mumble  
Type = simple  
ExecStart = /home/mumble/bin/talkiepi -username test -certificate /home/mumble/mumble.pem  -server 192.168.1.1:64738
Restart = on-abort  
RestartSec = 5

[Install]
WantedBy = multi-user.target```

Is this correct also if i use nano to edit said i don't have permissions 

Thanks for any help given

How to enable audio options?

Hi
I checked out the issue titled instructions and assumed Fn1 is the key to have push to talk enabled. The program crashes when I press Fn1.

Is it possible to enable audio all the time instead if push to talk?

Thanks

Docker support

To be able to build Barnard with Docker.
Additionally, it could be distributed as a public Docker image to avoid installing Golang build deps.

70% cpu load and breaking up

Running on Raspberry Pi 3.
About 2h of listening to a mumble server with occational, short issues where it was playing parts of the audio too fast, then at highly reduced speed until it catches up. Each occatiob about 0.5-3 seconds.
25% cpu load idle, 50% while someone is speaking.

THEN it is silent for a longer time, then comes back full if glitches and never resyncs. Staying at about 70% cpu load.
Is it possible for there to be a memory leak piling up over time?

Run on boot

How can i run barnard on boot using a raspbery pi and pi os lite so no GUI. I tried rc.local but it said that it couldn't find barnard but it is installed and working

barnard quits with status 1

Hi,

thanks to the help earlyer (issue #1) i was no able to compile barnard on another maschine. But now i am getting erros running it. I dont know if that is because that pulse error, i want to use it with alsa only, or something else. Here are my result:

pi@treakisraspi02:~/go-apps/src/barnard$ go run cmd/barnard/main.go -server="voice.mumble-funk.de:64738"
AL lib: (WW) alc_initconfig: Failed to initialize backend "pulse"
x509: certificate is valid for Murmur Autogenerated Certificate v2, not voice.mumble-funk.de
exit status 1
pi@treakisraspi02:~/go-apps/src/barnard$ 

thanks in advance

See Who's Speaking

Fantastic library. I'm trying to add a feature where it displays an indicator of who's speaking beside the username. something like layeh S

Any thoughts on how to implement this?

Documentation

Hey there, just wondering if there is more documentation on how to actually use this. I wanted to use this a my test server

Error in installation AL/al.h

Hi, so after installing gumble i get this error installing barnard

go get -u github.com/layeh/barnard/cmd/barnard
# github.com/timshannon/go-openal/openal
In file included from go/src/github.com/timshannon/go-openal/openal/alcCore.go:24:0:
local.h:5:18: fatal error: AL/al.h: No such file or directory
 #include<AL/al.h>
                  ^
compilation terminated.

what should i do?

PS, installing gumble and termbox go does not give any output, it simply takes some time then let me put the next command, no message displayed, is it ok?

Led receiving stream

I wanted to congratulate the wonderful project

I wanted to know if it is possible to implement a LED that lights up when the Stram is received.

Thank you

Convert Mumble GUI p12 cert to .pem for usage in barnyard

You may want to add this to the readme. Took me a while to figure this out, so as to save anyone else the effort, here is how to convert your Mumble GUI's generated p12 cert to the pem format for usage with barnyard:

openssl pkcs12 -in /path/to/your/mumble-cert.p12 -out /path/to/your/mumble-cert-barnard.pem -nodes

Then you can use a commmand to load up like:

barnard -certificate="~/certs/barnard.pem" -server=server.com:64738 -username=YourName

To create a new pem from zero:

cd /path/to/where/you/want/cert/to/live
openssl genrsa 2048 > private.pem
openssl req -x509 -days 9000 -new -key private.pem -out public.pem
openssl pkcs12 -export -in public.pem -inkey private.pem -out mycert.pfx
openssl pkcs12 -in mycert.pfx -out barnard.pem -nodes

And of course if you register this user, you can launch it with only the server and cert flags, as the server will know the user now (hence the point of registering).

Hope this helps folks out!

Random unicode characters on login with wide terminal

Hi,
Just a quick note to say that I had my terminal window on Ubuntu 10.04 set much wider than normal when I first tested Barnard (running over ssh on a Raspberry Pi running Raspbian Jessie) and most of the screen that would normally be clear was covered in random Unicode characters. The channels were legible as was the welcome message. When I resized the terminal to make it smaller, the screen quickly sorted itself out and I now see something almost identical to that in your readme. Strangely, if I make the screen wider again, it remains OK.

Actually, having now exited and restarted this seems to happen even if my screen is not abnormally wide. Making the screen wider also seems to sort out the rendering.

James

compilation error

barnard doesn't compile properly on my end:

I installed Go on my Ubuntu machine via

sudo apt install golang

and then ran

$ go get -u layeh.com/barnard

However, next thing I get is this compilation error:

> # github.com/dchote/go-openal/openal

In file included from src/github.com/dchote/go-openal/openal/alcCore.go:24:0:
./local.h:5:9: fatal error: AL/al.h: No such file or directory
 #include<AL/al.h>
         ^~~~~~~~~
compilation terminated.

Am I doing something wrong? Thank you!

Installation on Ubuntu 17.10 broken

Hello,

the installation process doesn't work anymore. Does someone know how to fix this?

$ go get -u layeh.com/barnard
# github.com/timshannon/go-openal/openal
In file included from go/src/github.com/timshannon/go-openal/openal/alcCore.go:24:0:
./local.h:5:9: fatal error: AL/al.h: No such file or directory
 #include<AL/al.h>
         ^~~~~~~~~
compilation terminated.

Thanks for reading.

Bye,
Matthias

Stream.Stopsource()

Hi,
When using barnard, i a press F1 to stop stream and then press again to start stream there is no sound.startSource() is working but if i call stopSource() voice wont come back.What is the problem ?
We are using Raspberry Pi 3 and Rasbian image.
Regards..

compilation terminated error when installing

I get this message when trying to install. I know nothing about go other than hello world which confused me to the extent that I stopped investing time in picking up go and switched to android development as my primary time sink ¯_(ツ)_/¯

$ go get -u github.com/layeh/barnard/cmd/barnard
# github.com/timshannon/go-openal/openal
In file included from dev/go/src/github.com/timshannon/go-openal/openal/alcCore.go:24:0:
local.h:5:18: fatal error: AL/al.h: No such file or directory
 #include<AL/al.h>
                  ^
compilation terminated.

Thanks for any tips.

Unable to actually use it.

barnard -server "<our server>:64738" -username "Cloud" -password "<our password>" -certificate key.pem

With the missing info properly replaced in that, i run it and get a plain EOF with nothing else.

new issue updating/installing

I don't know whether this is related, but I just upgraded to Debian stitch. An issue was introduced that I'm trying to sort out, and I attempted to upgrade barnard via the command in the readme. I don't think barnard is the problem in that chain, I was updating it in an attempt to narrow down the problem.

As near as I can tell, my install from April 12th is working as it was before the system update to stitch. I have tried updating the existing install, as well as a fresh install into a new directory (and yes, I did point the go path at the new install directory). The new install attempt just gets me the src and pkg directories and no bin directory.

Support XDG_CONFIG_HOME?

Would be nice to place barnard.yaml in ${XDG_CONFIG_HOME}/barnard/config.yaml or ${XDG_CONFIG_HOME}/barnard.yaml if defined.

memory leak?

While receiving audio, barnard's RAM usage is growing about 1MB every 10 seconds or so for me. Doesn't seem to get garbage collected, will just grow until the system kills barnard. I did update via 'go get -u github.com/layeh/barnard/cmd/barnard' before reporting this.

make treeview scrolling

I have deep nested channel structure with long channel names on my server, can you add scroll feature to treeview widget?
2015-09-04 11 05 34

Can this app send voice?

Is this just for text chatting or is it able to also send voice (from local mic or "what you hear")

Instructions

I have been trying to work out what controls are active in the UI.
*The Tab key shifts the focus from the message box to the channel selector and back again
*Fn10 acts as Quit - It would be helpful to new users if this fact could be added to the Welcome Text.
*PgUp and PgDown scroll messages as do Home and End.
*Ctrl + L seems to clear all messages.
*Fn1 looks like it may work as Press to Speak - switching the word "Idle" for "TX" whilst it is active - is that a fair summary ? If so, this is an issue because on Ubuntu at least F1 seems to be mapped to a Help page for the Terminal. Can anyone suggest a workaround for this?

The main thing that I haven't found is how to configure the sound. Please advise.

Delayed audio transmission

I've complied Barnard using Golang 1.6.2 on a Raspberry Pi Zero ARM6 @ 1GHz.
All works well. Audio is received perfectly with minimal latency, but transmitting audio is delayed several seconds.
Running Top I see CPU usage is above 90% when running Barnard in transmit mode. When not transmitting the CPU is around 4%. When receiving only, CPU is around 25%.
I assume the high CPU when transmitting is due to audio compression and encryption which is therefore causing the long delay.
I am willing to sacrifice compression and/or encryption to get the CPU usage down.
Is this doable? And will this solve my problem?

How to install

Hi, so i have a raspberry 2 but i'm not able to install it. I want to have this so i can autostart the client at boot and autoconnect it to my local raspberry server (another rasp). Could you guys please give me all the links to install it? Thanks

No sound transmitted

Hi, great project! Installed it today on a raspberry pi 2 and connected a Logitech c920 webcam/microphone to it. I am able to record using the webcam microphone with "arecord" however barnard will not transmit any sound. F1 does set me in tx mode but there is no sound transmitted. I have ensured that my microphone is the default capture device. Any suggestion will be greatly appreciated.

P.S- I am working on implementing the "always on" capability and will submit a pull request soon ;)

crash on internet reconnect

OK, im quite certain that thats a bug:

i had barnard running, still dont know how to switch channels, and then ive reconnected my Internet (pppoe reconnect of router) and that resulted in a crash of barnard with an unusable terminal. please fix that. In addition ill send a screenshot.

bildschirmfoto-pi treakisraspi02 -go-apps-src-barnard

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.