View clean_audio.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Create background noise profile from mp3 | |
/usr/bin/sox noise.mp3 -n noiseprof noise.prof | |
# Remove noise from mp3 using profile | |
/usr/bin/sox input.mp3 output.mp3 noisered noise.prof 0.21 | |
# Remove silence from mp3 | |
/usr/bin/sox input.mp3 output.mp3 silence -l 1 0.3 5% -1 2.0 5% | |
# Remove noise and silence in a single command |
View main.cpp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
#include <boost/asio.hpp> | |
#include <boost/date_time/posix_time/posix_time.hpp> | |
#include <boost/asio/spawn.hpp> | |
#include <memory> | |
void bar(boost::asio::io_service &io, std::function<void()> cb){ | |
auto ptr = std::make_shared<boost::asio::deadline_timer>(io, boost::posix_time::seconds(1)); | |
ptr->async_wait([ptr, cb](const boost::system::error_code&){cb();}); | |
} |
View AbstractPoint.cpp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include "AbstractPoint.h" | |
#include <boost/serialization/export.hpp> | |
#include <boost/archive/text_oarchive.hpp> | |
#include <boost/archive/text_iarchive.hpp> | |
BOOST_CLASS_EXPORT_IMPLEMENT(AbstractPoint) |
View C++ Extension Methods
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <cassert> | |
#include <iostream> | |
template<typename T, typename R=void> | |
struct ExtMethod { | |
ExtMethod& operator - () { | |
return *this; | |
} | |
template<typename U> |
View cloudflare_challenge
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I wasn't first to get the key. Nor was I second, third, or even fourth. I'm probably not even the | |
10th to get it (ok, looks like I was the 7th.) But I'm happy that I was able to prove to myself | |
that I too could do it. | |
First, I have to admit I was a skeptic. Like the handful of other dissenters, I had initially | |
believed that it would be highly improbable under normal conditions to obtain the private key | |
through exploiting Heartbleed. So this was my motivation for participating in Cloudflare's | |
challenge. I had extracted a lot of other things with Heartbleed, but I hadn't actually set out to | |
extract private keys. So I wanted to see first-hand if it was possible or not. |
View CallgrindParser.cxx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* CallgrindParser | |
Copyright (C) 2013 BlackBerry. | |
Permission is hereby granted, free of charge, to any person or organization | |
obtaining a copy of the software and accompanying documentation covered by | |
this license (the "Software") to use, reproduce, display, distribute, | |
execute, and transmit the Software, and to prepare derivative works of the | |
Software, and to permit third-parties to whom the Software is furnished to | |
do so, all subject to the following: |
View flavoured_strings.cpp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <string> | |
#include <iostream> | |
namespace dessert { | |
template <typename Tag> | |
struct not_quite_the_same_traits : std::char_traits<char> {}; | |
template <typename Tag> | |
using strong_string_alias = std::basic_string<char, not_quite_the_same_traits<Tag>>; | |
using vanilla_string = std::string; |
View gist:4994490
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private T ParseOneOf<T>(params Func<T>[] fs) { | |
var oldLexer = Lexer.Clone(); | |
foreach (var f in fs) { | |
try { | |
return f(); | |
} catch (SyntaxErrorException) { | |
Lexer = oldLexer; | |
} | |
} | |
throw new SyntaxErrorException(); |
View SetJekyllPostSyntax.vim
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
" Sets up multi-language syntax for Jekyll blog posts | |
fun! SetJekyllPostSyntax() | |
" Bring in YAML syntax for front matter | |
unlet b:current_syntax | |
syntax include @Yaml syntax/yaml.vim | |
syntax region yamlFrontmatter start=/\%^---$/ end=/^---$/ keepend contains=@Yaml | |
" Bring in C++11 syntax for code snippets | |
unlet b:current_syntax | |
syntax include @Cpp syntax/cpp11.vim |
View demangle.c++
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <type_info> | |
#include <memory> | |
#include <string> | |
#include <stdexcept> | |
class bad_mangled_name : public std::runtime_error { | |
public: | |
bad_mangled_name() : std::runtime_error{"bad name"} {} | |
}; |
NewerOlder