View previous topic :: View next topic |
Author |
Message |
Mrak_Tlen
Joined: 08 Oct 2024 Posts: 8
|
(Separately) Posted: Tue Nov 19, 2024 14:44 Post subject: |
|
|
Жаль только, что при выводе wcx нельзя задавать свои колонки
Я вообще не в теме, но мелькнула мысль, что в теории можно было бы через автостили что-то настроить. Типа провалился в файл, адрес *\.mp3\*.* (или как там) и настроить режим представления, да команды...
Заранее извините, если мысль глупая. |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 772
|
(Separately) Posted: Tue Nov 19, 2024 20:23 Post subject: |
|
|
Mrak_Tlen
Идея понятна. Но проблема в том, что средствами MultiArc можно вывести только в колонки "Имя", "Тип", "Размер и "Дата". Есть еще какой-то непонятный ключ "c - File description", но, похоже, он ничего не делает.
Вывести можно так. Зарегистрировать в плагинах wcx расширение mp3:
Code: | mp3=260,%COMMANDER_PATH%\Plugins\wcx\MultiArc\multiarc.wcx |
Добавить к настройкам плагина Multiarc.ini
Code: | [MediaInfo]
Archiver=%COMMANDER_PATH%\Plugins\arc\MediaInfo\wcx.bat
Description=MediaInfo
Extension=mp3
Start="---------------"
Format0=n++
List="%PQA %AQA %O"
ExtractWithPath=
Debug=0
BatchUnpack=0 |
Сам wcx.bat файл должен быть в одном каталоге с консольной утилитой MediaInfo.exe с таким содержимым:
Code: | SetLocal EnableExtensions
cls
@echo off
@echo ---------------
"%~dp0MediaInfo.exe" -f %1 |
Ну и все - файл открывается как архив с полным содержимым MediaInfo, только вывод косячный и нет поддержки юникодных имён.
Второй вариант - использовать листерный плагин AnyCmd, который тоже читает стандартный вывод stdout. В кофигурации плагина указываем путь к консольной утилиите и расширение.
Code: | Command=cmd.exe /c ""%COMMANDER_PATH%\Plugins\arc\MediaInfo\wcx.bat" "%s""
DetectString=EXT=MP3 |
Плагин старый и не поддерживает больше одного расширения, что делает его практически бесполезным, хотя в окне листера и можно его вручную выбирать для других типов файлов.
Эти два плагина похожи на WinScript Advanced тем, что тоже дают некоторую гибкость при работе с консолью и выводом из нее данных в окно ТС. Вот жаль, что wfx такого нет - он мог бы здесь помочь! А пока можно просто кнопкой обходиться, если нужен такой подробный вывод.
Code: | TOTALCMD#BAR#DATA
%COMSPEC% /k
""%%COMMANDER_PATH%%\Plugins\arc\MediaInfo\MediaInfo.exe" -F %P%N"
%COMSPEC%
-1 |
Вывод окна:
 Hidden text Code: | General
Count : 349
Count of stream of this kind : 1
Kind of stream : General
Kind of stream : General
Stream identifier : 0
Count of video streams : 1
Count of audio streams : 1
Video_Format_List : AVC
Video_Format_WithHint_List : AVC
Codecs Video : AVC
Audio_Format_List : AAC LC
Audio_Format_WithHint_List : AAC LC
Audio codecs : AAC LC
Audio_Language_List : English
Audio_Channels_Total : 2
Complete name : d:\Музыка\Клипы\Michel Teló - Ai Se Eu Te Pego.mp4
Folder name : d:\Музыка\Клипы
File name extension : Michel Teló - Ai Se Eu Te Pego.mp4
File name : Michel Teló - Ai Se Eu Te Pego
File extension : mp4
Format : MPEG-4
Format : MPEG-4
Format/Extensions usually used : braw mov mp4 m4v m4a m4b m4p m4r 3ga 3gpa 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma ismt f4a f4b f4v
Commercial name : MPEG-4
Format profile : Base Media
Internet media type : video/mp4
Codec ID : isom
Codec ID : isom (isom/iso2/avc1/mp41)
Codec ID/Url : http://www.apple.com/quicktime/download/standalone.html
CodecID_Compatible : isom/iso2/avc1/mp41
File size : 84524058
File size : 80.6 MiB
File size : 81 MiB
File size : 81 MiB
File size : 80.6 MiB
File size : 80.61 MiB
Duration : 165257
Duration : 2 min 45 s
Duration : 2 min 45 s 257 ms
Duration : 2 min 45 s
Duration : 00:02:45.257
Duration : 00:02:45:01
Duration : 00:02:45.257 (00:02:45:01)
Overall bit rate : 4091763
Overall bit rate : 4 092 kb/s
Frame rate : 23.976
Frame rate : 23.976 FPS
Frame count : 3961
Stream size : 124476
Stream size : 122 KiB (0%)
Stream size : 122 KiB
Stream size : 122 KiB
Stream size : 122 KiB
Stream size : 121.6 KiB
Stream size : 122 KiB (0%)
Proportion of this stream : 0.00147
HeaderSize : 124468
DataSize : 84399590
FooterSize : 0
IsStreamable : Yes
File creation date : 2023-01-31 19:44:07.558 UTC
File creation date (local) : 2023-01-31 22:44:07.558
File last modification date : 2022-11-24 04:17:45.000 UTC
File last modification date (local) : 2022-11-24 07:17:45.000
Writing application : Lavf59.27.100
Writing application : Lavf59.27.100
Video
Count : 391
Count of stream of this kind : 1
Kind of stream : Video
Kind of stream : Video
Stream identifier : 0
StreamOrder : 0
ID : 1
ID : 1
Format : AVC
Format : AVC
Format/Info : Advanced Video Codec
Format/Url : http://developers.videolan.org/x264.html
Commercial name : AVC
Format profile : High@L4
Format settings : CABAC / 3 Ref Frames
Format settings, CABAC : Yes
Format settings, CABAC : Yes
Format settings, Reference frames : 3
Format settings, Reference frames : 3 frames
Internet media type : video/H264
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 165207
Duration : 2 min 45 s
Duration : 2 min 45 s 207 ms
Duration : 2 min 45 s
Duration : 00:02:45.207
Duration : 00:02:45:01
Duration : 00:02:45.207 (00:02:45:01)
Bit rate : 3958942
Bit rate : 3 959 kb/s
Width : 1920
Width : 1 920 pixels
Height : 1080
Height : 1 080 pixels
Stored_Height : 1088
Sampled_Width : 1920
Sampled_Height : 1080
Pixel aspect ratio : 1.000
Display aspect ratio : 1.778
Display aspect ratio : 16:9
Rotation : 0.000
Frame rate mode : CFR
Frame rate mode : Constant
FrameRate_Mode_Original : VFR
Frame rate : 23.976
Frame rate : 23.976 (24000/1001) FPS
FrameRate_Num : 24000
FrameRate_Den : 1001
Frame count : 3961
Color space : YUV
Chroma subsampling : 4:2:0
Chroma subsampling : 4:2:0
Bit depth : 8
Bit depth : 8 bits
Scan type : Progressive
Scan type : Progressive
Bits/(Pixel*Frame) : 0.080
Stream size : 81755480
Stream size : 78.0 MiB (97%)
Stream size : 78 MiB
Stream size : 78 MiB
Stream size : 78.0 MiB
Stream size : 77.97 MiB
Stream size : 78.0 MiB (97%)
Proportion of this stream : 0.96725
Title : ISO Media file produced by Google Inc.
Writing library : x264 - core 155 r2901 7d0ff22
Writing library : x264 core 155 r2901 7d0ff22
Encoded_Library_Name : x264
Encoded_Library_Version : core 155 r2901 7d0ff22
colour_description_present : Yes
colour_description_present_Source : Container / Stream
Color range : Limited
colour_range_Source : Container / Stream
Color primaries : BT.709
colour_primaries_Source : Container / Stream
Transfer characteristics : BT.709
transfer_characteristics_Source : Container / Stream
Matrix coefficients : BT.709
matrix_coefficients_Source : Container / Stream
Codec configuration box : avcC
Audio
Count : 285
Count of stream of this kind : 1
Kind of stream : Audio
Kind of stream : Audio
Stream identifier : 0
StreamOrder : 1
ID : 2
ID : 2
Format : AAC
Format : AAC LC
Format/Info : Advanced Audio Codec Low Complexity
Commercial name : AAC
Format_AdditionalFeatures : LC
Codec ID : mp4a-40-2
Duration : 165257
Duration : 2 min 45 s
Duration : 2 min 45 s 257 ms
Duration : 2 min 45 s
Duration : 00:02:45.257
Duration : 00:02:45.257
Bit rate mode : CBR
Bit rate mode : Constant
Bit rate : 127999
Bit rate : 128 kb/s
Channel(s) : 2
Channel(s) : 2 channels
Channel positions : Front: L R
Channel positions : 2/0/0
Channel layout : L R
Samples per frame : 1024
Sampling rate : 44100
Sampling rate : 44.1 kHz
Samples count : 7287834
Frame rate : 43.066
Frame rate : 43.066 FPS (1024 SPF)
Frame count : 7117
Compression mode : Lossy
Compression mode : Lossy
Stream size : 2644102
Stream size : 2.52 MiB (3%)
Stream size : 3 MiB
Stream size : 2.5 MiB
Stream size : 2.52 MiB
Stream size : 2.522 MiB
Stream size : 2.52 MiB (3%)
Proportion of this stream : 0.03128
Title : ISO Media file produced by Google Inc.
Language : en
Language : English
Language : English
Language : en
Language : eng
Language : en
Default : Yes
Default : Yes
Alternate group : 1
Alternate group : 1 |
|
|
Back to top |
|
 |
AkulaBig
Joined: 03 Dec 2008 Posts: 328
|
(Separately) Posted: Tue Nov 19, 2024 21:54 Post subject: |
|
|
Orion9 wrote: |
Плагин старый и не поддерживает больше одного расширения
|
Но ведь в описании написано, что для нового расширения достаточно скопировать плагин в новую папку. И это работает, я пробовал в свое время.
Orion9 wrote: |
А пока можно просто кнопкой обходиться, если нужен такой подробный вывод.
|
Вот такая кнопочка намного интересней будет:
Code: |
TOTALCMD#BAR#DATA
%COMSPEC% /k %COMMANDER_PATH%\Utilities\MediaInfo\MediaInfo.exe --Language=file://ru.csv --Complete
%P%N
%COMSPEC%
-1
|
Только в папку с MediaInfo.exe не забыть добавить русский язык ru.csv из комплекта поставки MediaInfo.exe. Ну и посмотрите, насколько вывод по --Complete красивей, чем по -f (--Full). Кстати, вот из этого я сейчас пытаюсь что-то слепить. |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 772
|
(Separately) Posted: Wed Nov 20, 2024 01:13 Post subject: |
|
|
AkulaBig wrote: | Но ведь в описании написано, что для нового расширения достаточно скопировать плагин в новую папку. |
Это то, что у меня отложилось в памяти (что автор предлагал копировать/множить плагин, чем мне напомнил script.wdx - предшественник WinScriptAdv), но я был не точен, говоря, что AnyCmd работает только с одним расширением. На самом деле речь идет об одной детект-строке:
Quote: | Improtant note: You may install several instances of the plugin in different (sub)directories. This permits to define several detection string filters and associate corresponding commands. |
Я переделал строчку в:
Code: | DetectString=MULTIMEDIA & (EXT="MP3" | EXT="MP4") |
Теперь нормально работает с двумя расширениями. Но все-равно этот плуг нельзя рассматривать всерьёз для таких задач, имхо. Начиная с того, что в нём нельзя поменять ни фон, ни шрифт толком, заканчивая тем, что при выводе большого количества информации в нескольких страниц, пользоваться в быстром просмотре им будет не удобно, а если открывать каждый файл по одиночке, то проще уж сразу в MediaInfo.exe открыть: хоть GUI, хоть CLI.
AkulaBig wrote: | Вот такая кнопочка намного интересней будет: |
Спасибо, словил ""C:\Portable\T" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом." Попытки что-либо исправить приводили еще и к "Option not known")
Да, шучу я В свое время специально сделал установку ТС в каталог с пробелами в пути, чтобы отлавливать такие ошибки. Рабочий код кнопки для таких случаев я оставлял выше, но учитывая, что у вас еще есть завязка на файл локализации в том же каталоге с .exe, то нужно еще дополнить каталогом запуска:
Code: | TOTALCMD#BAR#DATA
%COMSPEC% /k
""%%COMMANDER_PATH%%\Plugins\arc\MediaInfo\MediaInfo.exe" --Language=file://ru.csv --Complete %P%N"
%COMSPEC%
--Language=file://ru.csv --Complete
%COMMANDER_PATH%\Plugins\arc\MediaInfo\ |
Ох и намучился же я в свое время с этим делом
AkulaBig wrote: | Ну и посмотрите, насколько вывод по --Complete красивей, чем по -f (--Full). |
А чем красивее? Я правда разницы не увидел, если не считать, что имена полей стали на русском.
AkulaBig wrote: | Кстати, вот из этого я сейчас пытаюсь что-то слепить. |
И все-равно я не пойму, что именно вы хотите вывести в колонки через wdx, используя этот плагин. Ведь информации очень много - куда ее размещать? А если вас что-то конкретное интересует, то эти источники можно указать в TCMediaInfo.
Нет, похоже, все-таки придеся просить Loopback сделать wfx-поддержку  |
|
Back to top |
|
 |
AkulaBig
Joined: 03 Dec 2008 Posts: 328
|
(Separately) Posted: Wed Nov 20, 2024 05:43 Post subject: |
|
|
Orion9 wrote: |
Ох и намучился же я в свое время с этим делом |
Я в курсе. Для постоянных кнопок конечно я обрамляю кавычками. В данном случае в этом не было интереса, так как на это надо немного времени затратить. У ТС несколько вариантов, как надо расставлять кавычки. А с comspec под рукой не было. Главное суть.
Orion9 wrote: |
А чем красивее? Я правда разницы не увидел, если не считать, что имена полей стали на русском.
|
Потому что я не совсем то написал. Пропишите --Complete=0 Тогда не будут выводиться ненужные поля. А --Complete=1 (по умолчанию) эквивалентно --Full, либо -f.
Orion9 wrote: |
Ведь информации очень много - куда ее размещать? |
Это второй вопрос. Я об этом выше писал и надо подумать, что можно с этим сделать. Главное, что выводятся все заполненные поля. Это ценно. Но пока я не могу решить с крякозябрами. Для результата у меня алгоритм есть. А вот весь вывод конвертировать пока не знаю как.
Orion9 wrote: |
Нет, похоже, все-таки придеся просить Loopback сделать wfx-поддержку  |
Я вас умоляю, обсуждайте это в соответствующей теме. Ну совсем неинтересно здесь об этом читать. |
|
Back to top |
|
 |
AkulaBig
Joined: 03 Dec 2008 Posts: 328
|
(Separately) Posted: Wed Nov 20, 2024 10:29 Post subject: |
|
|
Вот правильная кнопочка:
Code: |
TOTALCMD#BAR#DATA
%COMSPEC% /k ""%COMMANDER_PATH%\Utilities\MediaInfo\MediaInfo.exe" "--Language=file://ru.csv" "--Complete=0""
%P%N
%COMSPEC%
%COMMANDER_PATH%\Utilities\MediaInfo\
-1
|
Признаюсь честно, потратил на нее более двух часов и инет курил во всю. Вы знаете причину. |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 772
|
(Separately) Posted: Wed Nov 20, 2024 14:18 Post subject: |
|
|
Quote: | Признаюсь честно, потратил на нее более двух часов и инет курил во всю. Вы знаете причину. |
Охотно верю и причину, конечно же, знаю - потому что сам потратил на это еще больше часов
Суровые реалии кнопок: вы сбросили код, у кого-то он не запустится, этот кто-то к вам же и придёт за ответом.) Всегда нужно иметь это в виду, хотя понятно, что не хочется
Quote: | Потому что я не совсем то написал. Пропишите --Complete=0 Тогда не будут выводиться ненужные поля. А --Complete=1 (по умолчанию) эквивалентно --Full, либо -f. |
А чем вывод --Complete=0 отличается от простого запуска MediaInfo.exe без параметров? Разницы я не заметил. Что-то вы меня совсем запутали. Так вам сокращенный вид нужен или полный? )
Quote: | Это второй вопрос. Я об этом выше писал и надо подумать, что можно с этим сделать. |
Там столько данных, что полей wdx не хватит. Да и что с ними делать в таком количестве? Имхо, вытягивать нужно только конкретные поля под конкретную задачу. Я понимаю, что вам не нравится, что TCMediaInfo делает все то же самое, но... именно это она и делает! Если вы хотите вытягивать данные из какой-то другой библиотеки, то и вытягивайте сразу из нее! Но что касается MediaInfo.dll, Loopback за нас уже давно все придумал ))
Quote: | Я вас умоляю, обсуждайте это в соответствующей теме. Ну совсем неинтересно здесь об этом читать. |
Почему не интересно? Мне, например, это очень интересно. Есть wlx, wfx, wcx плагины, которые работают с stdout отдавая данные панелям ТС, а вот wfx плагина такого нет, вопрос - почему?
Кстати о wcx, таки удалось через MultiArc вытянуть что-то приемлимое из MI. Просто поправил в шаблоне, чтобы вторая часть таблицы вывода шла в поле расширения:
Code: | Format0=nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn e++ |
Но имя файла сортируется, поэтому сортировку нужно отключать. В общем, почти нормально, но все-равно не сильно полезно. |
|
Back to top |
|
 |
AkulaBig
Joined: 03 Dec 2008 Posts: 328
|
(Separately) Posted: Wed Nov 20, 2024 15:48 Post subject: |
|
|
Orion9 wrote: |
А чем вывод --Complete=0 отличается от простого запуска MediaInfo.exe без параметров? |
Тем, что это позволяет настроить форму вывода. И я ведь это делаю скриптом с dll. Кнопка просто для примера.
Orion9 wrote: |
Так вам сокращенный вид нужен или полный? |
Смотрите, настроили вы колонки на вывод определенных данных. А их в вашем файле нет. И у вас все колонки пустые. Но есть другие данные, которые вам не видны, но представляют интерес. Вот их-бы желательно вывести. То-есть задача вывести не пустые данные.
А насчет кодировки есть какие-нибудь идеи? |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 772
|
(Separately) Posted: Thu Nov 21, 2024 18:34 Post subject: |
|
|
AkulaBig
Но ведь вы столкнетесь с той же самой проблемой: данные с полей wdx нужно где-то разместить (наборы колонок, поля посказки и т.д.), но поскольку вы не можете заранее знать, что именно вам вернет MediaInfo, у вас так же остануться пустые поля в колонках или подсказках. А брать все данные в одну строку вообще смысла нет: ну попадется вам файл с 7-ю аудиодорожками, 20-ти титрами, главами и прочим - что вы будете со всем эти делать? Там бывает одна строка Encoding settings по 1,5-2 кб, зачем она вообще нужна (если только она действительно вам не нужна)? Но если вы попытаетесь ее как-то скрыть или отфильтровать, то снова попадете все в те же рамки xml-файлов и выбора/не выбора источников.
А на счет смены кодовой страницы в AutoIt сказать ничего не могу. Как уже говорил, я с ним не знаком. |
|
Back to top |
|
 |
AkulaBig
Joined: 03 Dec 2008 Posts: 328
|
(Separately) Posted: Thu Nov 21, 2024 21:14 Post subject: |
|
|
Orion9 wrote: |
А на счет смены кодовой страницы в AutoIt сказать ничего не могу. Как уже говорил, я с ним не знаком. |
Не в au кодовую страницу надо менять, а в MediaInfo. |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 772
|
(Separately) Posted: Fri Nov 22, 2024 00:38 Post subject: |
|
|
AkulaBig
Никто на AutoIt не делал класса или функций для работы с MI? Наверняка делали. Ради интереса проверил для Autohotkey. Уверен, и для au3 уже тоже давно все есть. |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 772
|
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1526
|
(Separately) Posted: Fri Nov 22, 2024 14:37 Post subject: |
|
|
Orion9 wrote: | Никто на AutoIt не делал класса или функций для работы с MI? |
Конкретно про готовые библиотеки не помню, но там всего несколько вызовов, вот вполне нормальный пример использования с комментариями. |
|
Back to top |
|
 |
AkulaBig
Joined: 03 Dec 2008 Posts: 328
|
(Separately) Posted: Fri Nov 22, 2024 21:00 Post subject: |
|
|
Orion9 wrote: | AkulaBig
Я подключил указанный выше модуль к Autohotkey - проблем с выводом никаких нет. |
Потому что у вас тэгов с крякозябрами нет, вот и проблем нет.
Loopback wrote: | там всего несколько вызовов |
Речь про вывод крякозябров, а не про вызов библиотеки. Это типа вашей функции fix_cp. Причем для отдельных полей я научился это делать. То-есть, например, поле Исполнитель или Альбом с крякозябрами вывести в правильной кодировки я умею. А вот взять и все данные по опции Complete переконвертировать пока не знаю как. |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 772
|
(Separately) Posted: Sat Nov 23, 2024 01:11 Post subject: |
|
|
Quote: | Потому что у вас тэгов с крякозябрами нет, вот и проблем нет. |
А зачем вам тэги с кракозябрами? Избавьтесь от них
Ну, а если серьёзно, то как я понял, вы в курсе проблемы, которая хорошо описана в справке к TCMediaInfo, которую я, кстати, наконец-то дочитал )
 Hidden text FixCodepage
Специальная функция, задающая список полей, к которым будет применено исправление кодировки.
Проблема, для исправления которой предназначена функция, возникает на файлах с ID3-тегом, в котором строки сохранены в ANSI-кодировке, отличной от ISO 8859-1. Официальная спецификация тега позволяет использовать только кодировку ISO 8859-1 или Юникод, однако раньше многие программы игнорировали требования спецификации и сохраняли теги в локальных ANSI-кодировках. Библиотека MediaInfo строго следует спецификациям тега и перекодирует ANSI-строки с принудительным применением кодовой страницы ISO 8859-1, что, однако, на неправильно сохраненных тегах приводит к отображению искаженного текста.
К сожалению, автор MediaInfo отказался делать какие-либо опции для настройки перекодирования тегов. Примененный в плагине метод определения того, в каком виде библиотека будет возвращать данные тегов, не самый красивый и быстрый. Поэтому неразумно применять механизм исправления ко всем полям. Перечисляйте в этой функции только те поля, где может возвращаться искаженная кодировка (обычно это название, автор и т.д.). Функция должна вызываться до любого использования этих полей. Действие функции сохраняется до конца скрипта.
Текст, который функция определит как некорректный, будет декодирован с вашей локальной системной ANSI-кодировкой. Разумеется, если текст был сохранен в кодировке, отличной от вашей системной, текст может быть по-прежнему нечитаем.
И что с этим можно поделать? Как вариант - даже хорошо, что вы видите кракозябры. Можно выявить такие файлы и исправить тэги, например той же Mp3Tag:
https://docs.mp3tag.de/actions/convert-codepage/ |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|