Поиск на жестком диске для всех медиа-файлов определенного битрейта?

688
Mark

Можно ли найти на моем жестком диске все MP3 с битрейтом 320?

Я использую 64-разрядную версию Windows 7 Professional.

0
В настоящее время эта функция не включена. Ramhound 9 лет назад 0

1 ответ на вопрос

2
Sobrique

Я не думаю, что вы можете сделать это тривиально, потому что я не думаю, что Windows 7 «знает» о битрейтах файлов в своих метаданных.

Так что вам придется «сделать это самостоятельно». Я бы взял подход:

  • получить Perl ( ActiveState сделать один, есть другие)

  • Установите MP3::Infoмодуль ( cpan install MP3::Info). Он задаст несколько вопросов, просто примите значения по умолчанию.

  • Запустите Perl-скрипт, чтобы сделать это:

Что-то вроде этого:

use strict; use warnings;  use MP3::Info; use File::Find;  my $bitrate_target = 320;  sub print_if_bitrate { return unless m/\.mp3$/; #skip any non-mp3 files. my $info = get_mp3info($File::Find::name); if ( not defined $info ) { print "$File::Find::name has an invalid tag\n"; return; } my $bitrate = $info->; if ( not defined $bitrate ) { print "$File::Find::name - no bit rate defined\n"; return; } if ( $bitrate >= $bitrate_target ) { print "($bitrate) $File::Find::name\n"; } }  #double slashed needed, because backslash has a special meaning. find( \&print_if_bitrate, 'C:\\Users\\me\\MP3' ); 

(Сохранить как 'find_mp3.pl' - установщик activestate должен связываться с .plфайлами.)

Проверено на моей системе Windows 7. (Хотя и с более низкой скоростью передачи, так как у меня нет 320 файлов примеров)