slomkowski / mumlib Goto Github PK
View Code? Open in Web Editor NEWFairy simple Mumble library written in C++, using boost::asio asynchronous networking framework.
License: GNU Lesser General Public License v3.0
Fairy simple Mumble library written in C++, using boost::asio asynchronous networking framework.
License: GNU Lesser General Public License v3.0
Things to do:
As described here: http://forums.mumble.info/viewtopic.php?f=7&t=517
On my mumble setup, all users are disconnected because of a server restart every night.
Currently, mumsi crashes with
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::system::system_error> >'
what(): write: Broken pipe
Aborted (core dumped)
and I would like to see mumlib catching this error and giving some disconnect event or whatever.
This bug is described in slomkowski/mumsi#8. For unknown reason async_read
returns bytesTransferred
= 0 despite ec beeing Success.
I cloned your library, tried to run it in visual studios and got a lot of syntax errors in mumlib.cpp, transport.cpp and CryptState.cpp. Some errors occur because 'and' is used instead of '&&'. Was this on purpose?? I thought this library was for C++, if so, why do you have 'and', 'not' and 'or' in your code instead or '&&', '||' and '!'
There are also a tons of other syntax errors beside logical operators. There are missing brackets, semicolons and many more. Is this library complete ??
As described in slomkowski/mumsi#14.
FYI: in the example you have, if you send a bad userid/password/cert, the the program will crash with a segment fault; looks like it comes from around line 380 in Transport.cpp.
Hey guys,
I'm thinking about using this in my unreal engine 4 game project. However, I see no examples. From what I understand, this is simply a client that connects to the server. Here are some questions I have:
What methods need to be called to connect to a mumble server
What methods need to be called to connect to a channel
What methods need to be called to mute a user in a channel
What methods need to be called to set volume for input/output devices locally
What methods need to be called to set volume for another user in the same channel
What methods need to be called to leave a channel
What methods need to be called to kick users from a channel
What methods need to be called to delete a channel
What methods need to be called to create a channel
What methods need to be called to read audio data over the network
What methods need to be called to get audio data from all other users/players in the channel
What methods need to be called to disconnect from a server
How can I convert the audio data to a usable format? In unreal there is a way of converting a byte[] of audio data and play it. Is there a way to get incoming audio data and convert it to a byte array, or some other format which I can then use in Unreal Engine?
In terms of unreal, I know how to do the following:
Record data from any input device
Convert data from a byte[] to a usable format in unreal
Thanks
Version / OS: master / Debian Testing
Steps to reproduce:
Call sendAudioData with data from PortAudio.
A small 75-line program that demonstrates the problem: https://gist.github.com/CosineP/c2811cd9b7461b05046f15d4ae2f0183
Expected results:
Audio is sent to Mumble server
Actual results:
This fatal AudioException is thrown:
terminate called after throwing an instance of 'mumlib::AudioException'
what(): failed to encode 69 B of PCM data: invalid argument
Your implementation of SWAP64(x) seems not to be portable.
I am using a raspberry pi and got compiler errors. I have no idea how to implement this in a portable way.
For my needs i changed it into some raspberry pi specific and also not portable version:
({
uint64_t __x = (x);
((uint64_t)(
(uint64_t)(((uint64_t)(__x) & (uint64_t)0x00000000000000ffULL) << 56) |
(uint64_t)(((uint64_t)(__x) & (uint64_t)0x000000000000ff00ULL) << 40) |
(uint64_t)(((uint64_t)(__x) & (uint64_t)0x0000000000ff0000ULL) << 24) |
(uint64_t)(((uint64_t)(__x) & (uint64_t)0x00000000ff000000ULL) << 8) |
(uint64_t)(((uint64_t)(__x) & (uint64_t)0x000000ff00000000ULL) >> 8) |
(uint64_t)(((uint64_t)(__x) & (uint64_t)0x0000ff0000000000ULL) >> 24) |
(uint64_t)(((uint64_t)(__x) & (uint64_t)0x00ff000000000000ULL) >> 40) |
(uint64_t)(((uint64_t)(__x) & (uint64_t)0xff00000000000000ULL) >> 56) ));
})
For now there's no support for mixing streams from users speaking simultaneously.
Receiving a message with :
<img src="data:image/jpeg;base64 %2F9j%2F4AAQSkZJRgABAQEASABIAAD%2F4QAWRXh etcetcetc />
Throws with some nice integer numbers .
(i've turned the throw to a logger.warn)
1453155950 WARN mumlib.Mumlib : unknown message type: 18536
1453155950 WARN mumlib.Mumlib : unknown message type: 14414
1453155950 WARN mumlib.Mumlib : unknown message type: 21602
I cloned the repository, install all dependencies through homebrew on mac, and run the cmake. It tells me that openssl include directory is not found, so I added the -D, and cmake runs successfully.
However after that, I tried to run the MakeFile, but it pops up
which seem to be error with the boost library.
Any clue what happened or where I can download the right boost library?
Thanks
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.