.NET
Entity FrameworkとDapper以外にあんまり知らないので、軽く調べてみた。 Dapperのページに他のORMとのベンチマーク比較があった。 github.com その中で検証してみたいなぁと思ったのは以下の二つ。 github.com nhibernate.info そういえばNHibernateとかあ…
.NET用のテンプレートエンジンを探していたらRazorEngineっていうよさげなのを見つけた。 RazorEngine Razorをラップしたライブラリ。Razorは、ASP.NET MVCとかASP.NET Webページ(WebMatrix)とかで使われているMS謹製のテンプレートエンジンで、NuGetでも単…
この例だとNSpeexが負荷の高いノイズフィルタとしか扱えてないのだけど、検証コードとしては十分。NSpeexエンコーダのポイントとしては、 16bit MONO サンプルレート: NB=8KHz, WD=16KHz, UWD=32KHz フレームサイズ: NB=160, WD=320, UWD=640 NSpeex.SpeexEn…
portaudiosharp - .NET bindings for the portable low-latency audio library PortAudio - Google Project Hostingを使えばいいのに、ちょっとラッパーの実装が気に入らないので自分でアンマネージドコードを呼び出してみている。(ちなみにportaudiosharp…
なんとなくPortAudioSharpを使わずに、自分でDllImportとか書いてPortAudioを使ってみている。そしたら、少し動かしているだけでCallbackOnCollectedDelegateが頻発して、少しはまってしまった。原因はcallbackOnCollectedDelegate MDAに書いてある通り、ア…
demuxerを使った場合のLinkのさせ方で詰まったのでメモ。 初期化 var path = @"C:\gstreamer"; Environment.SetEnvironmentVariable("PATH", String.Format(@"C:\Windows;{0}\lib;{0}\bin", path)); Environment.SetEnvironmentVariable("GST_PLUGIN_PATH", …
丸一日かけて調査したのだけど、直近では使わなさそうなのでメモだけ。状況が変わりやすい世界のようなので、1年後にはここに書いた情報は陳腐化して使えなくなってる可能性がある。 Firefox(Gecko) Firefoxをアプリ内に組み込みたい場合は、XUL RunnnerをGe…
動的なILの生成と編集 from terurou 自分より.NET力の高い方が来場されていたお蔭で、スライドの間違いを2か所修正できました。ありがたいことです。
MuPDFという軽量なPDFレンダラの.NETバインディングのMuPDF conveter(MuPDFLib)を使ってみた。簡単にPDFをWPFで表示できたりする。地味に32bit/64bit両対応しているのも良い。MuPDFのソースなりドキュメントを読まないとパラメータの意味がわからない部分…
ここ数日、Popplerを自分でビルドしたりして.NETから叩いてみてたんだけど、どうも動作が不安定。 MinGWでPoppler 0.22.5をビルド - DenkiYagi Poppler 0.22.5の.NETバインディングを作成する - DenkiYagi こんな感じのコードが動いたり、AccessViolationExc…
MinGWでビルドしたPoppler 0.22.5の.NETバインディングを作成する。Windows単体ではすんなり作成できそうにないので、Linux(Xubuntu)で作業した。 必要な環境 monoの開発環境。XubuntoでMonoDevelop 4が動かしたくて色々入れた後なので、どのパッケージが…
例としてDirectSound Deviceを明示的に指定する。 var src = Gst.ElementFactory.Make("dshowaudiosrc"); var probe = new Gst.Interfaces.PropertyProbeAdapter(src.Handle); var devices = probe.ProbeAndGetValues("device-name"); src["device-name"] = …
GStreamerとは クロスプラットフォームのマルチメディアライブラリ。映像や音声の入力(デバイスでもファイルでもよい)をエンコードしたり、RTMPでストリーミングしたりとか、そういったものを簡単に作ることができる。なお、.NETからGStreamerをつかう実例…
プロセスごとに、1 つのスレッド プールがあります。 .NET Framework 4 以降では、プロセスのスレッド プールの既定のサイズは、仮想アドレス空間のサイズなど、いくつかの要素によって決まります。 スレッドの数は、プロセスで GetMaxThreads メソッドを呼…
タイトルの通り、.NETにはJavaのAtomicBoolean(CAS操作のできるBoolean)が存在しないので、適当に実装してみた。スレッドセーフを保障しつつ、一回だけ処理を走らせたい場合なんかに使うと思う。 実装例 ここの例はF#だけど、Interlockedを使ってるだけな…
.NETでSocketをたたくコードをMSDNのサンプルをもとに書いてたのだけど、Socket#Bind()でエラーが出て少しハマった。よく考えればわかることなんだけど、Dns.GetHostEntry(Dns.GetHostName())だと、ipv6アドレスやHyper-Vの仮想NICとかのインターフェースも…
LL/MLほにゃららシリーズではMSILしか弄ってない者です、こんにちわ。最近仕事が忙しいので、軽めのネタとしてIKVM.Reflectionを利用して動的にMSIL/アセンブリを生成してみる例を紹介しておきます。 IKVM.Reflectionとは まず、IKVMとは、.NETとJavaを相互…
ここ1年以上、VB.NET・JavaScript・C#・XAMLしか書いてなかったので、IronPython(というかPython自体)をほとんど忘れてしまっていた。なので未来の自分が読んだらコードが書ける程度にメモを残しとく。一日で書けるやろ…ぐらいで書いてたら意外と終わらな…
たまーにやりたくなるんだけど、その都度やり方を忘れちゃってるので備忘録。 private void SetTimeout(Action fn, int time) { BackgroundWorker worker = new BackgroundWorker(); worker.DoWork += delegate(object sender, DoWorkEventArgs e) { Thread.…