はつねの日記

Kinect, Windows 10 UWP, Windows Azure, IoT, 電子工作

ずっとこれを待っていた!Azure Communication Servicesプレビュー版登場!

azure.microsoft.com

I've been waiting for this for a long time, and now the Azure Communication Services preview is available!

[EN]

It's an Azure service for adding video, voice, chat and text messaging capabilities to your app.

If you used to do things like putting a WebRTC server in AppService or VM, you can leave it to Azure.

The good thing about this is that Azure takes care of security and everything else, so you don't have to worry about server operations and security audits on the app development side.

This seems to be the same grade of service that is used behind Microsoft Teams.

It's one of the big new features in Azure in conjunction with Ignite, and we'll be covering it here on the blog as we go through the material.

[JP]

ビデオ、音声、チャット、テキスト メッセージングの機能をアプリに追加するためのAzureのサービスです。

いままでだったら、AppServiceやVMにWebRTCサーバーを入れてみたいなことをやっていたのがAzureにお任せできます。

これのいいところはセキュリティなどもろもろをAzure側が担保してくれるので、アプリ開発側でのサーバー運用やセキュリティ監査が大幅に軽減できる点です。

これ、Microsoft Teamsの裏側で使われているのと同じグレードのサービスといえるようです。

IgniteにあわせたAzureの新機能の中でも大注目の1つなので、資料をを見ながら、このブログでもご紹介していく予定です。

 

.NET 5.0リリース候補版(RC)が公開されました。

devblogs.microsoft.com

.NET Core 3.1の後継になる.NET 5.0のリリース候補版が公開されました。

Visual Studioから使いたいときは、Visual Studio 2019 (v16.8, Preview 3)をインストールするとよいみたいです。

 

.NET 5.0の良いところは、WPFWindows Form、UWP、Xamarin、Unityなどのクライアントアプリの共通フレームワークとして居続けられる点です(ASP.NETも)。

そして、生成するバイナリとしては、x86/x64/ARMに加えてARM64にも対応しており、WindowsLinuxMac向けに単一ファイルで実行可能(つまり必要な.NET 5なDLLも含んだ実行ファイル)の生成に対応している点も大きいでしょう。

長期サポート版は.NET 6.0までは提供されないようですが、いまから、.NET 5.0で動くようなコードを前提として準備しておくのがいいと思います。

 

私のMicrosoft Ignite 2020視聴法

 

Microsoft Ignite 2020が始まりまりました。

Microsoft Buildが開発者向けだとしたら、Microsoft IgniteはITプロ向けとややインフラよりですが、Azureなどを使って開発するのであれば、そのインフラの最新情報を得られるIgniteは重要なイベントですね。

今回、自動翻訳字幕の機能がありますので、これをONにするとセッション内容の理解も進むかもしれません。

f:id:hatsune_a:20200923003847p:plain

 

若干タイムラグがあるので、Azure Cognitive Services - Speechで音声認識してTranslatorで翻訳するアプリがありましたので、それを使って字幕を画面横に表示してみました。 

f:id:hatsune_a:20200923003638p:plain

 とても良い感じですね。

字幕を読むというよりも、聞き取れなかった音声の英単語をみてみたり、単語見てもわからないときは「さっ」と日本語翻訳文を一読したりすると理解が進みますね。

Microsoft Ignite 2020

日本語は後半にあります。


[EN]

https://myignite.microsoft.com/

Soon, Microsoft Ignite 2020 will start at 0:15 on 9/23 Japan time (9/22 - 9/25 local time).

Compared to Microsoft Build 2020, which was held right after the new coronavirus began to take effect, the repeat sessions have been arranged to make it easier to see the event in time zones other than the Seattle local time zone.

In addition, the official website is very easy to understand, with time stamps and time displays.

About the Keynote
The next three episodes of the keynote session, "Building Digital Resilience" by Satya's CEO are scheduled to be broadcast in the next three sessions.

9/23 00:15 JST-01:15 JST

9/23 08:15 JST-09:15 JST

9/23 16:15 JST-17:15 JST

In the Japanese time zone, I think it's easy to see the time around the second session. The other sessions are generally similar.

By the way, when you say "digital resilience," do you mean resilience and business continuity in a digital society? I wonder if you could share your insights from the perspective of creating something that will allow companies to continue their business, including infrastructure?

Recommended Sessions
I'm not recommending it, but here's the list of sessions I plan to watch at the moment. I've highlighted the key words of interest in red.


{JP}

https://myignite.microsoft.com/

まもなく日本時間の9/23の0:15からMicrosoft Ignite 2020がスタートします(現地時間で9/22~9/25)。

新型コロナウィルスの影響が出始めた直後に開催されたMicrosoft Build 2020と比べるとシアトル現地時間帯以外のタイムゾーンでも見やすいようにリピートセッションが組まれています。

また、公式サイトも時差込みに時刻表示もできるようになっており非常にわかりやすいです。

キーノートについて

キーノートセッションともいえるサティアCEOによる「Building Digital Resilience(デジタルレジリエンスの構築)」は、次の3回の放送が予定されています。

9/23 00:15 JST-01:15 JST

9/23 08:15 JST-09:15 JST

9/23 16:15 JST-17:15 JST

日本のタイムゾーンだと2回目あたりの時間が見やすいと思います。他のセッションもおおむねそんな感じですね。

ちなみにデジタルレジリエンスというのは、デジタル社会による復元力や事業継続性というような感じなのでしょうしょうか。インフラも含めて企業の事業を継続できるようなものを作り上げるというような視点の知見をお話いただける感じかな?

おすすめセッション

おすすめということでもないのですが、現時点で視聴予定のセッションリストは次のような感じです。注目キーワードは赤くしてみました。

 

既存アプリのファイルを確実に上書きインストールするmsiを作成するには

本記事は、Visual Studio Installerプロジェクトで作成したmsiファイルで、既存のファイルのファイルバージョンが新しくても上書きインストールする方法について記述しています。

This article is about the msi created by the Visual Studio Installer project How to overwrite an existing file with a newer file version in a file This section describes the

[EN]日本語原文は下にあるのでスクロールしてね

When you use Visual Studio Installer to create an msi file, you can usually upgrade the version of the installer project by upgrading the file version of the EXE itself, which allows you to install updates to existing applications.

However, if the version of a dll that has already been installed is new and you want to put it back, the installer does not overwrite the dlls in question, resulting in a version mismatch and a missing dll error.

This can be caused by the installer's overwriting strategy, which can result in a "file doesn't exist or an older version of Reinstall only if the file exists. This is because the file does not exist.

 

So let's try to solve the child problem by rewriting the msi file that was built and created using orca.

Where is orca?

C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86  

In the x86 execution folder of the latest SDK, there is an "Orca-x86_en-us.msi" file. Once installed, it is ready to run.

Rewriting msi files with orca

f:id:hatsune_a:20200706221405p:plainAfter starting orca, select the Property.

The REINSTALLMODE property is not set by default, so add it with ADD ROW.

The default value is "omus", where "o" means "the file doesn't exist or the version is old". Perform reinstallation only if the file exists. Therefore, "d" = "The file does not exist or a different version of the file Perform a re-installation if a "dmus" is present. Set dmus as "dmus", save and close it.

Double-clicking the msi file without closing it will result in an error, so be sure to close it.

Confirmation of operation

  • New Installation
    → success 
  • Installing an update to an older version (some DLL file versions are newer)
    → Success (the new DLL file was also overwritten by the one in the msi file)
  • Double-click on the same msi file after installation
    →You can choose to repair or delete.
  • Deleting some dll files after installation and launching the application
    →Installer repaired it and it's OK to start

 That doesn't seem to be a problem.

 

[JP]

Visual Studio Installerを使ってmsiファイルを作成したときに、通常は、EXE自体のファイルバージョンをあげて、インストーラープロジェクトのVersionをあげることで、既存アプリの更新インストールが可能になります。

しかし、既存インストール済の一部のdllのバージョンが新しくなっていてそれを戻したいときなどは、該当のdllが上書きされず、結果、バージョンが一致せずにdllがないようなエラーが出てしまうときがあります。

これは、インストーラーの上書き戦略が「ファイルが存在しない、またはバージョンの古いファイルが存在する場合のみ再インストールを実行します。」となっているからです。

 

そこで、ビルドして出来上がったmsiファイルをorcaを使って書き換えることで、子の問題を解決してみましょう。

orcaはどこにいる?

C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86

最新のSDKx86実行フォルダに「Orca-x86_en-us.msi」があるので、インストールすると実行できます。

orcamsiファイルを書き換える

f:id:hatsune_a:20200706221405p:plain

orcaを起動したらPropertyを選択します。

REINSTALLMODEプロパティはデフォルトでは設定されていないのでADD ROWで追加します。

デフォルト値はomusで、ここの「o」が「ファイルが存在しない、またはバージョンの古いファイルが存在する場合のみ再インストールを実行します。」の意味になりますので、「d」=「ファイルが存在しない、またはバージョンの異なるファイルが存在する場合再インストールを実行します。」としてdmusを設定し、保存してクローズします。

クローズせずにmsiファイルをダブルクリックするとエラーになりますので必ずクローズしましょう。

動作確認

■新規インストール

→成功 

■古いバージョン(一部のDLLファイルバージョンは新しい)への更新インストール

→成功(新しいDLLファイルもmsiファイル内のものに上書きされていた)

■インストール後に同じmsiファイルをダブルクリック

→修復と削除が選べる

■インストール後に一部のdllファイルを削除してアプリ起動

インストーラーが修復してくれて起動OK

 

問題なさそうですね。

Microsoft MVP for Windows Developmentを再受賞しました。

 おかげさまで、Microsoft MVPを再受賞することができました。

 

f:id:hatsune_a:20200702061444p:plain

今期も引き続きよろしくお願いいたします。

 

今期は、Azure KinectとかCognitive Serviceなどのアウトプットを引き続きしていこうと思います。

 

2008年から12回連続の13年目となります。よろしくおねがいします。

NVIDIA RTX Voiceでの周辺ノイズ削減効果について

本記事は、デルアンバサダープログラムのモニタープログラムで1か月お借りしているNew ALIENWARE m15を使って、NVIDIAGPUを使ったノイズリダクションについて試した記事となります。

This article is about testing noise reduction with NVIDIA's GPU using a New ALIENWARE m15, which I am borrowing for a month under the Dell Ambassador Program monitoring program. 

[EN]日本語原文は下にあるのでスクロールしてね

The Effectiveness of Surrounding Noise Reduction with NVIDIA RTX Voice

Ambient noise inevitably gets in the way of speech recognition.

The speech recognition engine does some noise removal, but I could remove it before putting it into the engine. It's not a bad idea, and that's where NVIDIA RTX Voice comes in, and how much noise it eliminates. of. I checked with just the noise.

About NVIDIA RTX Voice

NVIDIA RTX Voice is a tool that uses NVIDIA (essentially a GPU) for real-time noise reduction. 

www.nvidia.com

About New ALIENWARE m15 

Processer 第9世代 Core i7-9750H
OS Windows 10 Home 64bit
Memory 16GB 2666MHz LPDDR4x
Storage 512GB SSD
GPU NVIDIA GeForce RTX 2070 8GB GDDR6 Max-Q
Display 15.6 inch 3840x2160 
Weight 2.16kg
Size 厚さ:17.9~20.1mm 幅:360.5mm 奥行:276mm

It's still the GPU that is unique. This is truly a laptop where you can test out the NVIDIA RTX Voice.

About the effect of noise reduction

 youtu.be

It's obvious in the video.

You can see that the buzzing surrounding sounds have stopped with a snap.

The noise of m15 itself

For such high performance, the m15 itself is really quiet.

The exhaust noise from the rear and sides is also not a concern. And yet, it never gets too hot, which is the great thing about the CRYO-TECH V3.0! The great thing about thermal technology is that it doesn't get too hot.

Easy to type on a keyboard

Due to the fact that it is a 15-inch model, the keyboard key layout is straightforward and easy to type.

Real-time voice recognition allows you to quickly and easily correct minor typos when creating subtitles.

summary

In the new way of living and working, telework is one of the keys to the new way of working.

And an important part of telework is web conferencing.

With New ALIENWARE m15, not only is the noise level low, but in combination with NVIDIA RTX Voice, other ambient noises can be reduced, making the meeting easier for the other party to hear.

[JP]

NVIDIA RTX Voiceでの周辺ノイズ削減効果について

音声認識をするうえで周辺ノイズってどうしても邪魔になります。

音声認識エンジン側でもノイズ除去はやってくれるけど、エンジンに入れる前に除去できるのに越したことはないわけで、そこで、NVIDIA RTX Voiceでどれくらいノイズが消えるのか。ノイズだけの状態で確認しました。

NVIDIA RTX Voiceとは

NVIDIA RTX VoiceはNVIDIA (要はGPU)を使ってリアルタイムにノイズ削減を行うツールです。

www.nvidia.com

New ALIENWARE m15について 

Processer 第9世代 Core i7-9750H
OS Windows 10 Home 64bit
Memory 16GB 2666MHz LPDDR4x
Storage 512GB SSD
GPU NVIDIA GeForce RTX 2070 8GB GDDR6 Max-Q
Display 15.6 inch 3840x2160 
Weight 2.16kg
Size 厚さ:17.9~20.1mm 幅:360.5mm 奥行:276mm

やはり特徴的なのはGPUですね。まさにNVIDIA RTX Voiceが試せるノートパソコンと言えるでしょう。

ノイズ削減の効果について

youtu.be

動画を見ると一目瞭然ですね。

ざわざわした周辺の音がぴたっと止まっていることがわかります。

m15自体の騒音について

これだけ高性能なのにm15自体が発する音は本当に小さいです。

後方と側面からの排気音も気になりません。それでいて熱くなりすぎるということもないのが、CRYO-TECH V3.0サーマルテクノロジーのすごいところです。

打ちやすいキーボード

15インチモデルということもあり、キーボードのキー配列は素直で打ちやすいものです。

リアルタイム音声認識で字幕作成時のちょっとした誤変換を直す時も、ささっと素早く対応できます。

まとめ

新しい生活様式働き方改革のなかでは、テレワークが一つのキーになってきます。

そして、テレワークで重要なのはWEB会議です。

New ALIENWARE m15ならば、騒音が小さくだけではなく、NVIDIA RTX Voiceと組み合わせてそのほかの周辺ノイズも削減出来て、相手にとって聞きやすい会議が実現できるのではないでしょうか。