Windows エクスプローラー AQS: 特定の秒数未満の曲を検索する

Windows エクスプローラー AQS: 特定の秒数未満の曲を検索する

Windows エクスプローラーの高度なクエリ構文を使用して、フォルダー内の 10 秒未満の曲ファイルを検索しようとしています。次のステートメントを試しましたが、すべてが返されます。

kind:=music length:<=00:00:10

答え1

申し訳ありませんが、これは検索用の有効な AQS 引数ではありませんlength。この検索で​​は 5 つの引数のみがサポートされており、入力時にポップアップ表示されます。length:

ここに画像の説明を入力してください

引数が有効かどうかは、検索コードが黒のままであるのに引数が青く表示されることでわかります。違いを確認してください:

ここに画像の説明を入力してください ここに画像の説明を入力してください

答え2

私がこのページにたどり着いたのは、エンコードが不十分なためにサイズが大きすぎる (100 MB 以上) 15 分未満のビデオを検索する方法を見つけようとしていたからです。

リックの質問に対する「2016年2月3日」の回答を読んだとき、私は「まさか、MSでさえそれ「バカだ」(少し心配していたことは認めざるを得ないが!)。

驚いたことに、私の考えは正しかったのですが、このような複数の物件の検索方法を自分で理解するのには時間がかかりました。これは、リックの元のクエリと同じくらい簡単です(つまり種類:=音楽の長さ:<=00:00:10); メディアファイルの長さや継続時間で検索することはできません。時:分:秒

照会されているプロパティは「システム.メディア.期間MSによれば、これは「メディアファイルの実際の再生時間を表し、100ns単位ミリ秒ではなく、https://docs.microsoft.com/en-us/windows/desktop/properties/props-system-media-duration)。なぜこの一見恣意的な方式が選ばれたのかは分かりませんが、コンピューターが数字を保存する方法(または、おそらく過去に保存された数字)と関係があるのではないかと思います。

いずれにせよ、15 分未満のビデオを検索するには、15 分をナノ秒 (= 900000000000 または 9e+11) に変換し、その結果を 100 (= 9000000000 または 9e+9) で割る必要がありました。

Windows の検索ボックスのクエリは次のとおりです。

長さ:<=9000000000(何だと思いますか? 青色に変わります)。次に、検索ボックスに「kind:=video」と「size:>100mb」を追加すると、再エンコードする必要があるビデオが見つかります。

リックの最初の質問に戻ると、音楽 そして 10秒再生時間が 10 分未満の場合、Windows の検索ボックスのクエリは次のようになります。

長さ:<=100000000 種類:=音楽 (10 秒 = 100 億ナノ秒 / 100 = 100 ナノ秒の 1 億単位 = 1e+8)

このクエリは、「システム.メディア.期間「」プロパティ。ビデオとオーディオでは確実に機能します(他に何があるのか​​はわかりません)。

時間を 100 ns ブロックに簡単に変換するには、Google 検索ボックスを使用します。ドロップダウンで探している時間単位 (分、秒など) を設定し、左側のボックスに「# 単位/100」を入力します (Rick の場合: ドロップダウンを秒に設定し、左側のボックスに「10/100」を入力します)。次に、右側のドロップダウンをナノ秒に設定すると、Windows 検索クエリで使用する数値 (おそらく科学的記数法) が右側のボックスに入力されます。

もし本当にクレイジーになりたいなら(そしてこの質問の最初の答えをある程度正しくしたいなら)、レジストリの「very short、short、など」の値を変更できると思います。適切なWindowsプロパティ設定は上記のリンクで説明されています(そこで私は最終的に正しいリックの質問と私の質問への答え。

RSQ@MAGS

関連情報