音声認識を使用して Xamarin.Forms プロジェクトを作成しようとしています。Androidの場合は簡単に完了しましたが、私はiOSで地獄にいます。
Open Ears を見つけて読みました。
これを使用しようとすると、いくつかの問題が見つかりました: まず、この git を使用しようとしました: https://github.com/oganix/MonoTouch-OpenEars が、モノタッチは Xamarin.iOS では有効ではありません:
https://www.dropbox.com/s/41rc7iyskbwby9n/error_phoenix.png?dl=0
次に、この質問Xamarin OpenEars Native Binding Not working on Device but works on Simulator を見つけました。
読んだ後、バインディングプロジェクトを作成しようとしましたが、シャーピーを使用して Open Ears API を自動生成すると、次の問題が発生します。
/Users/cristian.fernandez/Workspace/Speech-iOS/OpenEarsDistribution/Framework/OpenEars.framework/Versions/A/Headers/acmod.h:50:10: fatal error: 'sphinxbase/cmd_ln.h' file not found
#include <sphinxbase/cmd_ln.h>
^
Binding...
System.ArgumentNullException: Value cannot be null.
Parameter name: annotation
at ICSharpCode.NRefactory.AbstractAnnotatable.AddAnnotation (System.Object annotation) in <filename unknown>:line 0
at ICSharpCode.NRefactory.CSharp.AstNode.AddAnnotation (System.Object annotation) in <filename unknown>:line 0
at Sharpie.Bind.Massagers.AnonymousStructMassager.VisitTypeDeclaration (ICSharpCode.NRefactory.CSharp.TypeDeclaration typeDeclaration) in <filename unknown>:line 0
at ICSharpCode.NRefactory.CSharp.TypeDeclaration.AcceptVisitor (IAstVisitor visitor) in <filename unknown>:line 0
at ICSharpCode.NRefactory.CSharp.DepthFirstAstVisitor.VisitChildren (ICSharpCode.NRefactory.CSharp.AstNode node) in <filename unknown>:line 0
at ICSharpCode.NRefactory.CSharp.DepthFirstAstVisitor.VisitTypeDeclaration (ICSharpCode.NRefactory.CSharp.TypeDeclaration typeDeclaration) in <filename unknown>:line 0
at Sharpie.Bind.Massagers.AnonymousStructMassager.VisitTypeDeclaration (ICSharpCode.NRefactory.CSharp.TypeDeclaration typeDeclaration) in <filename unknown>:line 0
at ICSharpCode.NRefactory.CSharp.TypeDeclaration.AcceptVisitor (IAstVisitor visitor) in <filename unknown>:line 0
at ICSharpCode.NRefactory.CSharp.DepthFirstAstVisitor.VisitChildren (ICSharpCode.NRefactory.CSharp.AstNode node) in <filename unknown>:line 0
at ICSharpCode.NRefactory.CSharp.DepthFirstAstVisitor.VisitSyntaxTree (ICSharpCode.NRefactory.CSharp.SyntaxTree syntaxTree) in <filename unknown>:line 0
at Sharpie.Bind.DocumentSyntaxTree.AcceptVisitor (IAstVisitor visitor) in <filename unknown>:line 0
at Sharpie.Bind.BindingMassager.Massage (ICSharpCode.NRefactory.CSharp.AstNode astNode, BindingTarget bindingTarget) in <filename unknown>:line 0
at Sharpie.Bind.BindingFrontend.Bind (Clang.Ast.Decl decl) in <filename unknown>:line 0
at Sharpie.BindTool.HandleTranslationUnit (Clang.Ast.TranslationUnitDecl decl) in <filename unknown>:line 0
at Clang.Driver.HandleTranslationUnit (Clang.Ast.TranslationUnitDecl translationUnit) in <filename unknown>:line 0
at Clang.Driver.HandleTranslationUnit (IntPtr translationUnit) in <filename unknown>:line 0
at (wrapper managed-to-native) Clang.Driver:RunInternal (Clang.Driver,string[],string,Clang.Frontend.DiagnosticConsumer)
at Clang.Driver.Run (System.String[] inputFiles, System.String[] clangArgs, Clang.Frontend.DiagnosticConsumer diagnosticConsumer) in <filename unknown>:line 0
at Sharpie.ParseTool.Run () in <filename unknown>:line 0
at Sharpie.BindTool.CoreRun () in <filename unknown>:line 0
at Sharpie.BindTool.Run () in <filename unknown>:line 0
これをシャーピーの起動に使用します。
sharpie bind --output=libOpenEars --namespace=libOpenEars --sdk=iphoneos9.2 /Users/cristian.fernandez/Workspace/Speech-iOS/OpenEarsDistribution/Framework/OpenEars.framework/Versions/A/Headers/*.h
泣く以外に今何ができる?
すべてに感謝し、私の英語で申し訳ありません。