« first day (2313 days earlier)      last day (2708 days later) » 

6:00 AM
it's not very professional; tscrap... but it looks to be there
 
Bob
O.o
 
the callbacks I need aren't there though
 
Bob
hm, it uses [DllExport] too
 
const char *ts3plugin_name();
const char *ts3plugin_version();
int ts3plugin_apiVersion();
const char *ts3plugin_author();
const char *ts3plugin_description();
void ts3plugin_setFunctionPointers(const struct TS3Functions funcs);
int ts3plugin_init();
void ts3plugin_shutdown();
void ts3plugin_onEditPlaybackVoiceDataEvent(uint64 serverConnectionHandlerID, anyID clientID, short *samples, int sampleCount, int channels);
void ts3plugin_freeMemory(void* data);
int ts3plugin_requestAutoload();
void ts3plugin_registerPluginID(const char* id);
the DLL has to export those functions
 
Bob
@allquixotic yea I'm thinking it's probably not hard to do manually
you sait UTF8 right?
Windows likes UTF16 -_-
 
6:02 AM
those const char*s have to be UTF-8, yeah
most of that is metadata, then it calls ts3plugin_setFunctionPointers to give my code a ton of function pointers, a small handful of which I need to call in my code
 
Bob
@allquixotic oh well. I'll just pretend they're byte[]s :P
 
then the real magic occurs in onEditPlaybackVoiceDataEvent
that's where you get your samples as short *samples
 
0
Q: Family (?) horror film that aired on TV around 2000, children controlled by supernatural force

bwDracoThere's this horror film I remember seeing on TV on or around 2000 I can't seem to identify. I kinda remember it being aired on ABC (or some other American channel, perhaps PIX11) as a family film but I'm not totally sure. The most familiar scene was that of a street, possibly in an another dime...

...any ideas? This has been nagging me for ages.
 
Bob
@allquixotic do you know if it's cdecl or stdcall?
I assume cdecl...
oh wait I can just look at the other one
...probably stdcall if built with msvc
 
@Bob depends on what Teamspeak 3's Qt is built with on Windows
let me reboot and look in depends.exe
 
Bob
6:16 AM
@allquixotic I suspect the tscrap thing you linked is broken
It's [DllExport]ing String
 
probably but it has a bunch of useful structs, some of which may be accurate
 
Bob
...pretty sure that's not UTF-8?
 
yeah it's not
 
Bob
@allquixotic any significance to the name "kynnaugh"/can/should I use it here? :P
 
@Bob yes, the name of the character of a deaf person who I'm you're writing this for
at this point you may as well give me committer access to your repo and I'll pick up where you left off... I've rebooted to Windows so I don't really feel the pressing need to get it running on Mono / CoreCLR
 
Bob
6:29 AM
@allquixotic I was actually gonna create a separate repo for this... the PcmToFlac name doesn't really work for the whole thing :P
 
@Bob can we make an org? it should be free
don't we already have a github rootaccessorg?
 
Bob
@allquixotic sure
@allquixotic uhhh yes? :P
 
that'll be fine
it's just me, you and geek, and I fully trust you both, no reason to have it specifically under my account
I can fork it later if I want to take it in a different direction
 
Bob
@allquixotic kynnaugh or append -cs?
 
@Bob without -cs :P
 
Bob
6:31 AM
k
 
btw this will be the third rewrite for me
 
Bob
@allquixotic any preferred license?
 
tried once using pyTSon (Python)
"sorry I don't support that callback"
 
Bob
keeping in mind that GPL is impossible due to MS-PL libs in use
MIT, BSD, Apache should all work
I usually default to MIT
 
my non-GPL license preference:
1. Apache 2.0
2. MPL 2.0
3. CDDL 1.0
4. MIT / BSD
5. WTFPL
 
Bob
6:32 AM
Apache it is then
I'll just get the FLAC bits together and push
 
man, Google could be a dick and AGPLv3 their .net client libs :P
(but they won't because nobody could use them)
perfect - the google .NET API Client libs are Apache 2.0 also
btw @Bob to make sure we're hacking on the same thing, launch TS3 -> Settings -> Options -> Application -> Update Channel -> change from Stable to Beta, update and restart TS3
then you will have the same binaries on your system that the DLL needs to link against as I do
 
Bob
@allquixotic I'll have to do that later, don't have ts3 here
 
oh. Help -> check For Update
k
 
Bob
@allquixotic I've pushed the PcmToFloat proj up there now
 
just running depends.exe real quick to try and discern whether it's linked against msvc++ or mingw
 
Bob
6:38 AM
all in a vs2015 solution, if you have that
 
I'm installing VS2015 community now
I confirmed that User #1 is running Windows 10 x64, btw
so we're in good shape compatibility wise
 
Bob
dammit
I should've capitalised the name
oh well
 
it's fine, lol
 
Bob
@allquixotic it's more that lowercase namespaces in C# annoy me :P
nuget is fast these days
@allquixotic are we targeting TS x86 or x64?
 
@Bob exclusively x64, even on Linux; 32-bit can die in a fire
 
6:43 AM
;p
 
ts3client_win64.exe from TS 3.1 Beta links against qt5core.dll, which links against msvcp140.dll
it also links against msvcp140.dll as a top level dependency of the .exe
looks like version 140 is from VS2015
 
Bob
@allquixotic pretty sure I have 32-bit TS installed, so... I suppose I'll be the guinea pig :P
 
Bob
@allquixotic Oh, I ended up importing that TS3Functions struct
though before using anything there gotta make sure the signatures are correct :S
 
is __fastcall the only calling convention that works on Visual Studio's compiler on x64?
 
Bob
6:48 AM
[System.Runtime.InteropServices.InAttribute()] [System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.LPStr)] string deviceName
^ e.g. that's wrong
anything string needs to be byte[] and use the manual utf8 conversion
...suppose I could make a utf8 custom marshaller, but that's too much trouble :P
LPStr is ansi/ascii, so it won't blow up completely
@allquixotic There's only really one major x64 calling convention
 
@Bob ah ok, so how do you tell the export stuff that you want to use (presumably) __stdcall on x86 and "the really one major" x64 calling convention on x64?
unrelatedly, my semi-annual ritual of a full-stack BIOS, driver and management utility update for the Adaptec 81605ZQ is ready to go as of November 8th... gotta do that soon
 
Bob
@allquixotic I think that's the default
 
always good to keep RAID controller firmware and drivers current
 
Bob
@allquixotic s/good/risky/ :P
one day... one day firmware updates will be 'safe'
 
@Bob also risky to hang on to old firmware that might have data corruption bugs
 
Bob
6:52 AM
@allquixotic yea, it really goes both ways
new firmware could introduce more bugs, and the update process itself is scary
really, the best thing to do is read the changelog and see if anything affects you
...if there is a changelog
e.g. I don't need to break my motherboard for SLI support
 
I love Adaptec's software license agreement
three buttons
> I agree and answer truthfully
> I do NOT agree
> I do not understand
and you have to click a "Yes" oval first
 
Bob
@allquixotic what does that one do? :P
 
>
We are sorry to know that you do not agree to (or perhaps did not answer) Adaptec"s Downloadable Software License
If you did not answer the questions:
Let us explain why it is necessary to have you understand and accept our license:
It is law. To remain in business, Adaptec must abide by the U.S. Government"s Export Control Legal Requirements. These laws are to prevent the design, development, and distribution of chemical, biological, and nuclear weapons including terrorist activities.
This license also protects our intellectual properties. Your acceptance will help prevent abuses such as
 
Bob
aww, boring :(
 
7:00 AM
@Bob what does the last one do?
 
reminds me of that
ooh, and my mobo got a firmware update to support Kaby Lake :P
 
Bob
@allquixotic ok, I've added all ts3 plugin handlers
will test them and maybe add something meaningful tonight :P
 
@Bob I'll try to port over my code from kynnaugh-cc if you're done for now
 
Bob
7:15 AM
@allquixotic Yup. Just keep in mind that TS3Functions is a straight copy from tscrap and it's... prtty crap :P (you'll need to fix the signatures to use any of it)
@allquixotic one sec, converting samples first
done
@allquixotic I'll be back in ~3 hours, I think.
 
@Bob thanks for all your help! :)
 
hm, New ava dosen't scale down that well
 
Bob
np. fun thing to try :P
@allquixotic actually, for ts functions, I'm thinking of making it a partial class so we can have the fixed stuff in one file and broken stuff in the other
but that's for later. no coding on phone :P
@JourneymanGeek needs more contrast
 
Bob
7:32 AM
so if this is ported to coreclr you'd just need to write a bit of C glue
the hosting looks really easy
could even call it from your cc/qt one :D
but I suspect full .net will perform better, at least on windows
who knows
would have to build flacbox for coreclr too, if that's even possible
 
8:01 AM
yawn, morning yall
yey spam flags
 
8:26 AM
Any one knows a standard linux utility to force a timeout?
something that when triggered will restrict a computer from being restarted for at least 1 minute ?
 
Bob
@Pushpendre what kind of timeout
...That would depend on what's causing the restart
the only sure way would be to restrict access for that time
 
Hmm, good idea, but is it possible to restrict access to a user for a specified amount of time?
I mean I guess it must be but I am not well versed with access controls and stuff
And the system is actually an OSX system, not exactly linux, which might complicate things
 
@Pushpendre sounds like a question for the main site. What're you actually trying to do?
And OS X and Linux are fairly different beasts
 
morning
 
Well, it's a long story, but I am basically trying to force some discipline on myself.
I have a dialog box scritp which runs every half hour and asks me what I did in the last half hour, what I want is that if I replied two times in a row that I was wasting my time, then the system will log me out
to cool off. Basically I am trying to create a system to compensate for bad discipline
This is kind of a foolish endeavour, but not totally crazy, I guess
 
Bob
8:41 AM
sigh
I'll add that to the "looking for technical solutions to people problems" list
you're not really doing anything with restarts
you're more... I dunno... locking and preventing login, I suppose
if you really wanted, you could probably do something with a PAM script
 
well that went "OK" @Bob -- I tweaked some setting in the BIOS that fucked it up royally and refused to get past POST (could've been USB Full Initial, or something to do with power) -- I tickled the CMOS 2-pin circuit, heard a click, and all is well again
updated Adaptec driver and firmware, no problems there; running stock BIOS settings and it's fine
 
Bob
@allquixotic heh. see: "scary"
 
more annoying than scary; removed a lot of dust and got it up my nose and sneezed a bunch
 
Bob
sooooo I've been selected for jury duty for an estimated length of 6 weeks
ow. my face.
 
@Bob "He's a fox?! Mister Elusive, you are dismissed."
 
8:44 AM
lol
 
@Bob : "looking for technical solutions to people problems" yeah that sums it. unfortunately I don't really know of other ways to tackle this :/
 
@allquixotic has the fwog been retired?
 
@Burgi yes; besides, it's probably copyright violation to keep it without crediting My Singing Monsters
 
@Pushpendre you could try talking to the people involved and providing better training
 
@Pushpendre what are you supposed to be doing when you're goofing off?
 
8:47 AM
@Burgi: Oh boy, you are going to laugh but I am the "person involved" here.
 
@allquixotic I object yer honor. This fox eer's me peer. And the only peer eer!
@Pushpendre our typical answer to this is... You can't solve people problems with technical solutions
 
!! s/eer/eeh/g
 
@allquixotic @allquixotic I object yer honor. This fox eeh's me peeh. And the only peeh eeh! (source)
 
Bob
@Pushpendre eh. PAM script on auth. github.com/jeroennijhof/pam_script
 
@all
 
Bob
8:48 AM
have your dialog thingo just touch a file somewhere and lock the session, PAM script checks if touch time + 30 mins has passed, if not then deny auth for login
 
@Bob lol, you're giving him a "solution" which, not long after he implements, he's going to work around by typing "having fun" instead of "wasting time" in the box and getting to keep doing it
 
@allquixotic : I am a graduate student, overall I think I am productive ( I mean my reviews are good from my advisor) , but I have a weak spot for news, and sometimes tv shows. So I'd take a break for 20 min to watch a show but it will turn into a 1 hour break.
 
You need an eggtimer
 
@Pushpendre if you're having trouble staying on task, maybe it's because you're not internally motivated to study / learn / practice whatever it is you're majoring in
you shouldn't do something you're not internally motivated to do, because in the end, it's just wasting everyone's time... you'll soon forget the information and won't be useful on the job if they're expecting you to have some competence there
 
also, one hour breaks don't sound so bad
 
8:54 AM
@allquixotic hmm. I do think that I am motivated to learn and practice at least some parts of it. I think it's more of a problem of stamina maybe
I mean today I studied for 8 hours or so
 
@Pushpendre might I introduce you to a concept called "point of diminishing returns"?
 
but the work that I need to do basically needs me to do things for a lot longer and it's hard to estimate how long exactly because it's research code. I just wish I'd be able to stay on course and be productive for something like 12 hours, but that simply does not happen
 
@Pushpendre I don't think anyone can stay on task for half a literal day ._.
 
@Pushpendre there are very few people who can stay on task and put out good solid work for that long of a time for many days in a row -- they might be able to pull it for a couple of days, but after that they'll start to get less focused, more tired and less productive
consider that permanent jobs intentionally try to pace people at 8 hours per day (or less), and those who find themselves constantly doing much more don't get any more work done than people who work 8
focus on making the best use of your 8 hours -- work hard, stay on task, try to cut down on breaks -- but AFTER that 8 hours is up, give yourself the rest of the day off, don't even intentionally think about your research, just let your mind drift
if you can't get done what you need to get done within the schedule set out by working hard for 8 hours a day, then either the schedule is unrealistic, or you've set out to accomplish something you lack the background to accomplish
 
Bob
@allquixotic I know... anything you do, you can undo
@allquixotic it is easy to lose track of time :P
to that end, I think a reminder can actually be helpful
but access controls tend to not be so useful
 
9:00 AM
@Pushpendre take a break every 2 hours or so to make a drink and slack off on read Stack Exchange
 
just stay off wikipedia and tvtropes ;p
 
Bob
@JourneymanGeek your avatar makes me think of @ThatBrazilianGuy's old one for some reason
 
@Bob You need to be more specific ;p
 
Bob
@allquixotic anything on the plugin?
 
@Bob I lost about an hour and a half to BIOS shenanigans
 
Bob
9:03 AM
@allquixotic ow
I'm just trying to set it up at home now
 
same
 
@allquixotic "If you can't get done ... or schedule is unrealistic ... you lack the background to accomplish" : Although I do agree with your analysis, I wonder if you have ever experienced something like a case, where one knows what needs to be done, you have planned it out, but you just feel too tired after coding for a few hours (maybe 2-3 hour) that you take a break which spirals out of control.
 
@Pushpendre yes, I feel like that every time I try to push myself and work too many hours
the only way I don't feel that way is if I limit my work hours to 8 or so
it seems to be a magic number, above which your mind just starts to fall apart
your mind says no
!!no
 
The cat is funny :)
 
9:10 AM
Center for Language and Speech Processing, eh? I live in Maryland, have all my life... and funnily enough @Bob and I are working on a plugin for a program that calls Google Cloud Speech API (for speech to text recognition) right now
 
Yup
 
Bob
@allquixotic I'm just about to give it a test run
 
I pass time by reading and trying to solve question mathoverflow, even though they are usually way beyond my training :(
 
Bob
well, to see if TS can load the plugin :P
 
Interestingly, the KALDI system developed at my center is like the best open source system in the country for speech recognition
 
9:12 AM
@Bob "it"? in TS?
 
@allquixotic where the cookies come from?
 
Bob
@allquixotic ya
except... I'm on 3.1 now and I have no idea where the plugins end up O_O
 
do you grow them in fields or do you have chocchip mines?
 
Bob
oh addons
> Plugin failed to load: Required plugin function name(),
welp
 
@Bob %APPDATA% somewhere
pyTSon dude says it in readme.md
 
Bob
9:14 AM
@allquixotic I meant in the menus, sorry
 
ah
@Burgi eh?
 
in the UK there are things called maryland cookies
they are a type of biscuit
 
oh, one thing to keep in mind is ts3plugin_onEditPlaybackVoiceDataEvent can be called from any arbitrary thread -- either the QApplication mainloop thread or any other worker thread in the TS3 core
@Burgi I've heard that somewhere, but I've never actually had "maryland cookies", and I live here
 
 
Bob
WHOOPS
*adds public static everywhere*
@allquixotic does that make a difference for me?
do I need to call the chat/writing functions from the main thread?
 
9:18 AM
@Bob lol. all your methods were being exported with an instance parameter? :P
 
Bob
@allquixotic they're not being exported at all!
 
@Bob potentially yes, because that function gets called extremely often while someone is speaking -- approximately every couple kilobytes of data, I estimate between 4k and 64k of PCM data at a time -- and it has to be buffered up instead of immediately passing it right over to Google to avoid ridiculous second rounding fees
see sampledef.cpp in kynnaugh-cc
 
Bob
@allquixotic oh. buffering. greeeeeaaaat
 
I set up a timer and wait for the "last updated" to be more than about 1250 msec
yeah
why don't you let me work on that ;p I haven't done a damn thing yet with the cs codebase
 
Bob
@allquixotic does this happen on the receiving end?
and what if there are multiple people speaking?
@allquixotic I just want to see something working :P
 
9:21 AM
@Bob Dictionary<int, Samplebuf> -- or so -- I actually keyed it on a tuple of (server connection handler ID, client ID, # channels)
if multiple people are speaking, MOAR THREADS
 
Bob
*slips static onto the class too*
 
and moar buffers
 
Bob
oh hey I managed to crash ts3
I THINK that's a good sign
 
congratulations, that's the first time of many
 
Bob
hey it means it's loading something?
 
9:25 AM
I've caught the disease
I just asked myself, "where are the headers?"
 
Bob
@allquixotic hm?
 
...like C++? :P
I was staring at your code and couldn't figure out where the headers were
 
Bob
ah
 
also it can't find DllExportAttribute wtf
 
Bob
@allquixotic nuget
just run a build
and it'll refresh packages
 
9:29 AM
isn't there a project that produces, like, a .NET equivalent of a ".o" file that can be incorporated into another project without creating a floof of resulting DLLs?
 
Bob
or right click the solution and "Restore NuGet Packages"
@allquixotic nah, you just ILMerge them after
think JARs
 
is this set up to do that?
 
Bob
but at the moment the plugin only creates one DLL
@allquixotic ILMerge is a separate tool
I've not added it yet
 
I know ILMerge is separate
 
Bob
wanted to get the plugin working without the converter first
 
9:31 AM
but I'm seriously considering pulling the converter into the same project as kynnaugh
 
Bob
the plugin only generates one DLL
@allquixotic I was going to merge separately because it requires the nuget DLLs anyway
CSCore and FlacBox
@allquixotic have you pulled github recently? (if not, please don't)
I just realised my committer email is wrong here and if you haven't pulled in last 30 mins I can do a force
 
my committer email is probably wrong too
go ahead and rewrite history
 
Bob
@allquixotic fixed mine
now to fix the crashes...
 
Bob
9:52 AM
@allquixotic found the problem
ts3plugin_setFunctionPointers
the struct was wrong
the struct still is wrong...
 
ahh
 
Morning.
 
I have to sleep but will be back up in a few ... you might wanna take a breather from this and do something fun :P
 
Yay, recuiter spam (wait, NOT SPAM, I am looking for a job)
 
@allquixotic I half suspect this is what @Bob considers fun
unlike jury duty
 
Bob
9:56 AM
@allquixotic yea... I might revisit it tomorrow
gota wrap my head around fp and delegate conversion
 
 
1 hour later…
11:17 AM
For anyone using GPG on Windows, is gpg-agent.exe --daemon supposed to keep the process in the foreground?
Because I would assume that it doesn't
 
@Bob Which one
 
12:00 PM
$ gpg-agent --daemon
gpg-agent[17440]: a gpg-agent is already running - not starting a new one

$ git commit -m "foo"

You need a passphrase to unlock the secret key for
user: "Oliver Salzburg <oliver.salzburg@gmail.com>"
4096-bit RSA key, ID 5826006B, created 2016-12-05

gpg: gpg-agent is not available in this session
Enter passphrase:
O______o
0
Q: Why does git complain that no GPG agent is running?

Oliver SalzburgI have the gpg-agent.exe running, but when I try to git commit, it complains that the GPG agent can not be found: $ gpg-agent --daemon gpg-agent[17440]: a gpg-agent is already running - not starting a new one $ git commit -m "foo" You need a passphrase to unlock the secret key for user: "Olive...

Yay
Let the signing begin!
 
12:31 PM
This one is for @Annaduh
 
Bob
12:59 PM
@allquixotic Ok, Console.WriteLine causes crashes
 

« first day (2313 days earlier)      last day (2708 days later) »