Skip to content

Instantly share code, notes, and snippets.

@edobashira
edobashira / Makefile
Created August 18, 2014 10:32
farcompose
all: farcompose
CXXFLAGS=-O2 -std=c++11
LDFLAGS=-L/usr/local/lib -L/usr/local/lib/fst
farcompose: farcompose.o
$(CXX) $^ -o $@ $(LDFLAGS) $(LDLIBS) -lfst -lfstfar
clean:
rm -rf *.o farcompose
@edobashira
edobashira / kaldi openfst 1.4 patch
Created May 13, 2014 18:40
Kaldi OpenFst 1.4 patch
Index: src/Makefile
===================================================================
--- src/Makefile (revision 3967)
+++ src/Makefile (working copy)
@@ -92,7 +92,7 @@
# delete or comment out the lines below.
OPENFST_VER = $(shell grep 'PACKAGE_VERSION' ../tools/openfst/Makefile | sed -e 's:.*= ::')
test_dependencies:
- @[ "$(OPENFST_VER)" == '1.2.10' ] || [ "$(OPENFST_VER)" == '1.3.2' ] || [ "$(OPENFST_VER)" == '1.3.4' ] || { echo "You now need openfst-1.2.10. Do: cd ../tools; svn update; ./install.sh; cd ../src; make depend; make"; exit 1; };
+ @[ "$(OPENFST_VER)" == '1.4.0' ] || { echo "You now need openfst-1.4.0. Do: cd ../tools; svn update; ./install.sh; cd ../src; make depend; make"; exit 1; };
@edobashira
edobashira / Makefile
Created April 9, 2014 09:06
Standalone lattice semiring
all: lattice4-arc.so
CXXFLAGS+=-O2 -g -fPIC
#For OSX 10.9 uncomment fhe following
#
#CXXFLAGS+=-stdlib=libstdc++
#LDFLAGS+=-stdlib=libstdc++
lattice4-arc.so: lattice-arc.o
@edobashira
edobashira / Makefile
Created March 26, 2014 09:21
far-to-lattice utility for converting OpenFst FAR files to Kaldi tables.
all:
EXTRA_CXXFLAGS = -Wno-mismatched-tags -Wno-sign-compare \
-L../../tools/openfst-1.3.2/src/extensions/far/.libs \
-lfstfar -lfstfarscript
include ../kaldi.mk
BINFILES = far-to-lattice
@edobashira
edobashira / gist:6549668
Last active December 22, 2015 23:49
PhiMatcher skip matching
//Compile something like this
//g++ main.cc -o main -O2 -lfst
#include <iostream>
#include <fst/compose.h>
#include <fst/vector-fst.h>
using namespace std;
using namespace fst;
@edobashira
edobashira / Makefile
Created June 19, 2013 05:53
Simple tool to convert Kaldi lattice to HTK SLF format using Kaldi and OpenLat
KALDI_ROOT=
OPENLAT_ROOT=
all: lattice-to-htk
ifndef KALDI_ROOT
$(error KALDI_ROOT is not set)
endif
ifndef OPENLAT_ROOT
@edobashira
edobashira / Makefile
Created August 12, 2012 05:45
Example showing how to register a custom Fst type with OpenFst
CXX = g++
CC = g++
CXXFLAGS = -c -fPIC -Isrc/include/ -g -O2
LDFLAGS = -L/usr/local/lib/ -ldl -lfst -lfstscript
objs = mmap-fst.o
all : mmap-fst
@edobashira
edobashira / kaldi-arc.cc
Created August 10, 2012 05:39
Shim code to create shared object o register Kaldi lattice with OpenFst command line tools
//Compile something like (assumes the Kaldi/OpenFst headers are on the include path)
// g++ -g kaldi-arc.cc -o lattice4-arc.so \
// -shared -I/path/to/kaldi/src -DHAVE_ATLAS -fPIC
//Add the dir containing lattice4-arc.so to the LD_LIBRARY_PATH
#include <fst/const-fst.h>
#include <fst/edit-fst.h>
#include <fst/vector-fst.h>
#include <fst/script/register.h>
#include <fst/script/fstscript.h>
@edobashira
edobashira / kaldi.bc
Created August 8, 2012 12:33
Kaldi bash completions
_sgmm2-gselect()
{
local cur prev opts filters len pprev
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
if (( $COMP_CWORD > 2)) ; then
pprev="${COMP_WORDS[COMP_CWORD-2]}"
else
pprev="NULL"
@edobashira
edobashira / decompose.cc
Created April 23, 2011 03:43
Using an explicit state table to extract internal paths from composed FST (OpenFst)
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and