Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

[wlx/wdx] TCMediaInfo
Goto page Previous  1, 2, 3 ... 61, 62, 63 ... 66, 67, 68  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Orion9



Joined: 01 Jan 2024
Posts: 786

Post (Separately) Posted: Mon May 26, 2025 00:34    Post subject: Reply with quote

Loopback wrote:
Удивляюсь, как такой косяк вообще допустил.

Косяки бывают разные, они неизбежны. Не бывают косяков, кто ничего не делает.
Loopback wrote:
Ну и за столько лет никто не обращал внимания.

Даже вы сами? )

Если серьезно, AkulaBig целый фрагмент кода притащил с руборда, где люди пытались с этим бороться. Но рельность - тётка суровая. Лишь 0,01% пользователей побежит репортить баги, и это нужно понимать. Остальные примут данность и будут искать другие решения, будучи, кстати, не до конца уверенными, баг ли это. Примерно так со мной и было, когда только познакомился с TCMediaInfo много лет назад.
Loopback wrote:
Шаблон полуавтоматический, выводящий все поля, кроме заданных в списке исключений. На это место принудительно ничего не впихнуть.

И это плохо. Я еще не изучал детально конфиг, но понял, что тут много автоматики. Возможно, нужно другое что-то думать, чтобы была возможность более удобно выводить данные. Посмотрите, например, как устроены шаблоны в самом MediaInfo. Вот буквально за 10 минут на коленке создал шаблон, о котором говорилось выше, т.е. режим "Продолжительность":
 duration.txt

 Кнопка

 Вывод

Как видите, шаблон весьма полезный - сразу видно, как отличаются дорожки друг от друга по длинне. И если чаще всего это вопрос миллисекунд, то могут ведь попасться и секундные отличия, что иногда важно видеть.
Loopback wrote:
Впрочем, не вопрос. Но хотелось бы, чтобы вопрошающий имел уже некое оформленное понимание, чего он хочет. Техническое задание, если угодно.

Пожалуй, я не до конца развил свою мысль, говоря о том, что вы ведёте плагин уже почти 16 лет. Не будут простые пользователи придумывать шаблоны и писать ТЗ. В этом отношении они полностью полагаются на вас как на автора - ваше знание, уменение, понимание и видение того, как всё должно быть устроено. Поэтому я даже не шутил, когда писал, что "я только за", т.е. за то, чтобы вы всё порешали, а мы бы только пользовались ) Все этого хотят, разве нет? Зато честно )
Loopback wrote:
Вот именно, придумать - это самое сложное. А если польза будет больше, чем для пары человек - совсем отлично

На этот счет я уже писал. Будут идеи - буду стараться сообщать.
Loopback wrote:
Я все же не понимаю, чем это принципиально лучше "компактного аудио"

А вот теперь я не совсем понимаю. Аудио - это аудио. А тэги - это тэги. Задача - вывести только тэги. Но судя по всему, в MI это не просто будет сделать, не разобравшись сначала, какие поля за что отвечают.
Loopback wrote:
когда искажено даже само имя поля, что тут сделаешь?

Это и есть те самые нестандартные записи. Но тэг ID3v2 позволяет пользователям создавать такие поля и называть их как угодно, это нормально. Плохо только, что такая информация сохраняется не в юникод, отсюда все и проблемы, как вы знаете.
AkulaBig wrote:
Но зачем мне левый тэг, присутствующий только в одном файле?

Мне раньше много таких файлов попадалось. Странно, что в этот раз я не нашел ни одного у себя в коллекции. Но полей там может быть куда больше, чем просто одна запись.
AkulaBig wrote:
А какой смысл делать это в контекстном плагине?

anytag.wdx может пригодиться как альтернатива, если нужно посмотреть все кракозабнутые поля. Но их можно увидеть, даже если просто открыть файл в Листере с единичкой "1", т.е. Вид -> Только текст. Может кому пригодится.
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 370

Post (Separately) Posted: Mon May 26, 2025 04:47    Post subject: Reply with quote

Loopback wrote:
Вот кусок из стандартного режима.

Спасибо, так работает.
Loopback wrote:
На самом деле, если уж очень надо, FixCodepage можно использовать и в цикле для всех полей

Вспомнил, какой режим просмотра хотелось-бы иметь, который мы не можем создать сами. Выше я об этом писал, но в длинном посте это затерялась.
Это стандартный у вас режим Inform, но с FixCodepage.
Постараюсь пояснить. Если я правильно понимаю, сейчас у вас за основу взят вывод MediaInfo в режиме Full. Поэтому в вашем режиме Default приходится писать код для пропуска некоторых полей. Например, SkipGeneral:= При этом мы можем потерять и нужные поля? Я правильно понимаю? Но если убрать skip мы получаем вывод большого множества ненужных полей, соответствующих Full. А в MediaInfo есть прекрасный режим Complete, который не выводит повторяющиеся поля и соответствует вашему режиму Inform. Но в режиме Inform мы не можем писать скрипт для FixCodepage. Потому что этот режим полностью описывается в коде. Вот и хотелось-бы иметь режим Inform FixCP.
Понятно-ли я объяснил и возможно-ли создать этот режим?
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 786

Post (Separately) Posted: Mon May 26, 2025 13:41    Post subject: Reply with quote

AkulaBig wrote:
Понятно-ли я объяснил и возможно-ли создать этот режим?

Думаю, Loopback и в прошлый раз хорошо понял и даже ответил на это. Но вообще-то странно, что автор MediaInfo.dll не сделал возможности преобразования кодовых страниц, как и странно, что не предусмотрел дополнительной группировки по тэгам. Процитирую себя, уж извините:
Quote:
Аудио - это аудио. А тэги - это тэги. Задача - вывести только тэги.

И с этой задачей хорошо справляется ExifTool. Вот пара примеров:

 Hidden text

 Hidden text

 Кнопка

Как я понимаю, из MediaInfo.dll так вывести не получится, если только автор библиотеки сам тому поспособствует. Ну и ладно.
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1554

Post (Separately) Posted: Mon May 26, 2025 14:09    Post subject: Reply with quote

Orion9 wrote:
Даже вы сами?

Я в первую очередь.

Orion9 wrote:
Возможно, нужно другое что-то думать, чтобы была возможность более удобно выводить данные.

Не, других вариантов шаблонов делать не планируется.

Orion9 wrote:
шаблон весьма полезный

Здесь должен быть смайл *пожимаю плечами*. Ну кому-то полезный, если кто занимается созданием релизов. А вот зачем мне, как пользователю, эта информация? Я знаю, что дорожки могут отличаться, но если автор релиза в контейнере правильно расставил смещения, все озвучки будут синхронизированы, и мне совершенно фиолетово, на сколько миллисекунд они там различаются...

Orion9 wrote:
Пожалуй, я не до конца развил свою мысль, говоря о том, что вы ведёте плагин уже почти 16 лет. Не будут простые пользователи придумывать шаблоны и писать ТЗ. В этом отношении они полностью полагаются на вас как на автора - ваше знание, уменение, понимание и видение того, как всё должно быть устроено. Поэтому я даже не шутил, когда писал, что "я только за", т.е. за то, чтобы вы всё порешали, а мы бы только пользовались ) Все этого хотят, разве нет? Зато честно )

Ну так о чём тут спорить-то? Любой автор делает всё согласно своему видению, разве нет? Кого устраивает - тот просто пользуется. Кого нет - или разбирается и делает сам, или просит что-то сделать. Ну и самый сложный и тернистый путь - пытается убедить меня в правильности своей точки зрения Smile Последнее, разумеется, не относится к очевидным багам.

AkulaBig wrote:
Это стандартный у вас режим Inform, но с FixCodepage.

Ну и опять же пришли к тому же... Не могу понять этой зацикленности на Inform. Что в нём такого особенного, без чего нельзя жить с другими шаблонами? Ну ок, сделаю опцию, при включении которой все значения в выводе "Стандартный Inform" будут подвергаться "исправлению". Отдельного Inform, конечно, не будет.

Вот только я тут понял, что этот способ "исправления" вообще ущербный, потому что "исправление" портит другие корректные теги. Например, вместо корректного немецкого "Lügen" получаем кривое "Lьgen". Т.е. исправляя редкие некорректные теги MP3 (и только MP3) теряем возможность видеть правильно теги в отличной от дефолтной в системе кодировки везде. А ведь это всё безобразие, по сути баг нехилого масштаба, много лет включенный по умолчанию.

Поэтому использование в шаблоне FixCodepage и работу "fix_cp" в следующей версии сделаю зависимым от глобальной опции. И она должна быть отключённой по умолчанию.

Orion9 wrote:
Но вообще-то странно, что автор MediaInfo.dll не сделал возможности преобразования кодовых страниц

Я сам когда-то запрашивал у него опцию декодирования в системную кодировку и получил отказ. Впрочем, сейчас я с его подходом даже соглашусь. Стандарт есть стандарт. Костыли (а такая опция была бы ничем иным как костылем) приемлемы для прикладной программы, но не совсем уместны в библиотеке.
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 370

Post (Separately) Posted: Mon May 26, 2025 14:29    Post subject: Reply with quote

Orion9 wrote:
Но вообще-то странно, что автор MediaInfo.dll не сделал возможности преобразования кодовых страниц

Мир не совершенен. У кого-то это скелеты в шкафу, как у Гислера из-за того, что в свое время выбрал не очень удачный инструмент, который не прошел испытание временем. А вообще зарубежные програмеры просто не придают значение разной кодировке. У них-то всегда все хорошо.
Loopback wrote:
вместо корректного немецкого "Lügen" получаем кривое "Lьgen".

Ну даже в моем скрине видно, что и сами поля могут быть не читаемые. Понятно, что все проблемы кривых юзеров мы не решим. Но хоть можно прочитать что там написано.
Loopback wrote:
Поэтому использование в шаблоне FixCodepage и работу "fix_cp" в следующей версии сделаю зависимым от глобальной опции. И она должна быть отключённой по умолчанию.

Я согласен на любой вариант, лишь-бы возможность имелась.
Loopback wrote:
Не могу понять этой зацикленности на Inform.

Объяснение простое. Этот режим позволяет вывести все не пустые поля без многократного повторения однотипной информации.
Loopback wrote:
Отдельного Inform, конечно, не будет.

И не надо. Я сейчас создал режим Default FixCP и его ковыряю. Я-то вообще за то, чтобы вы Inform скриптом сделали, но, насколько понимаю, эта работа займет много времени. В коде вам намного проще будет решить этот вопрос.
Ну и все. Я пропишу в настройках включить FixCP, использовать Inform и все меня полностью устраивает.
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 786

Post (Separately) Posted: Mon May 26, 2025 19:50    Post subject: Reply with quote

Loopback wrote:
А вот зачем мне, как пользователю, эта информация?

Как я писал ранее, для простого пользователя вы всё максимально выжали. Теперь, чтобы добавить новые режимы просмотра, придётся изучать техническую часть вопроса и искать применения с узкой спецификой.

Не знаю, что вам не понравилось. На мой взгляд, предложенный шаблон полностью квалифицируется как режим просмотра и выполняет главную свою задачу - наглядно отображает определённый аспект медиа-файла и предоставляет пользователю быстрый доступ к технической информации о продолжительности дорожек.
Loopback wrote:
Любой автор делает всё согласно своему видению, разве нет?

До тех пор, пока пользователи не убедят его в обратном )
Loopback wrote:
Ну так о чём тут спорить-то? ... Кого устраивает - тот просто пользуется. Кого нет - или разбирается и делает сам, или просит что-то сделать.

Я лишь хотел напомнить, что режимы просмотра, различные удобства и новшества - ваша прерогатива. Простым пользователям не на кого больше расчитывать, да и непростым тоже. Плагин, конечно, гибок, даже излишне гибок, и это вводит в заблуждение - создает иллюзию, что пользователи самостоятельно будут решать свои проблемы и изобретать новые хотелки, но по факту это далеко не так. Мало кто вообще будет открывать конфиг и что-то в нём делать. Имеется в виду той его части, где расположен код.
Loopback wrote:
Впрочем, сейчас я с его подходом даже соглашусь. Стандарт есть стандарт.

А вот я не соглашусь. Стандарт есть стандарт, но опция есть опция. Второе у пользователей ценится выше, потому что даёт хоть какой-то контроль и выбор. Вот вам, к примеру, хочется, чтобы режимы просмотра были в подменю, а мне хочется, чтобы они были в главном меню. Ну так о чём тут спорить: о стандартах, о предпочтениях? Сделайте опцию, и все будут счастливы. Кстати, это был не намёк, лишь пример )
AkulaBig wrote:
У кого-то это скелеты в шкафу, как у Гислера из-за того, что в свое время выбрал не очень удачный инструмент, который не прошел испытание временем.

Не знаю насколько это имеет отношение к делу, но может быть в этом что-то и есть. Иной раз читаешь и диву даёшься. Тут, понимаете, ждёшь, надеешься, веришь... А оказывается всё давно решили, в целях моей же безопасности )
AkulaBig wrote:
А вообще зарубежные програмеры просто не придают значение разной кодировке. У них-то всегда все хорошо.

Ну, по крайней мере, Loopback сделал всё, что мог. Возможно, автор MediaInfo просто недооценил масштаба проблемы и подумал, что это мелкая, личная хотелка. Хотя такие файлы встречаются довольно часто и время от времени приходится иметь с ними дело.
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 370

Post (Separately) Posted: Mon May 26, 2025 22:50    Post subject: Reply with quote

Loopback
Сегодня нашел прикладное применение режима просмотра листер-плагина. Режим Raw info помог определиться с проблемой. Удобно, когда выводятся все поля, даже пустые.
А проблема вот какая.
В настройках контекстной части TCMediaInfo.sample.xml есть такой код:
Code:
      <!-- <source name="AudioFormatSettings" field="Format_Settings" context="Audio"/> -->
      <source name="AudioFormatSettingsMode" field="Format_Settings_Mode" context="Audio"/>
      <source name="AudioFormatSettingsModeExt" field="Format_Settings_ModeExtension" context="Audio"/>

Как-бы сразу вызывает вопрос, почему закомменчен AudioFormatSettings? Оказалось потому что это поле почему-то не выводится. А AudioFormatSettingsMode и AudioFormatSettingsModeExt совершенно не заменяют данные из этого поля. В хинтах через Autorun я вижу значение этого поля. В TCMediaInfo по Ф3 я вижу значение этого поля. В пользовательской колонке я не вижу значение этого поля. Конечно колонку я прописал. То-есть вот такая запись:
Code:
      <source name="AudioFormatSettings" field="Format_Settings"/>
      <column name="Audio Format">AudioFormat</column>

Посмотрите, если не трудно, что за проблема. В этом поле данные могут (или всегда) быть записаны через "/". Например: Joint stereo / MS Stereo.
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1554

Post (Separately) Posted: Mon May 26, 2025 23:43    Post subject: Reply with quote

Orion9 wrote:
Ну, по крайней мере, Loopback сделал всё, что мог.

Мало что тут можно сделать. Да еще и фикс, оказывается, другое ломает, нельзя его было делать по умолчанию. Всё равно правильнее один раз исправить некорректные теги в своей библиотеке и забыть об этой проблеме. А кракозябры - как раз сигнал, что файл нуждается в исправлении.

AkulaBig wrote:
Режим Raw info помог определиться с проблемой.

Да, он в основном для отладки и сделан.

AkulaBig wrote:
Как-бы сразу вызывает вопрос, почему закомменчен AudioFormatSettings? Оказалось потому что это поле почему-то не выводится.

Точно не поэтому. Видимо, просто Format_Settings_Mode лучше подошел.

AkulaBig wrote:
То-есть вот такая запись:

Тут две ошибки:
В настройках источника контекст "Audio" не указан.
Колонка относится к другому полю.

Должно быть:
Code:

<source name="AudioFormatSettings" field="Format_Settings" context="Audio"/>

<column name="Audio Format Settings">AudioFormatSettings</column>
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 370

Post (Separately) Posted: Tue May 27, 2025 00:01    Post subject: Reply with quote

Loopback wrote:
Должно быть:

А, это просто меня подглючило к вечеру. Вот так было записано.
Code:
      <source name="AudioFormatSettings" field="Format_Settings"/>

      <source name="AudioFormat" field="Format" context="Audio"/>
      <source name="AudioFormatVersion" field="Format_Version" context="Audio"/>
      <source name="AudioFormatProfile" field="Format_Profile" context="Audio"/>
      <source name="AudioFormatSettings" field="Format_Settings" context="Audio"/>
      <!-- <source name="AudioFormatSettingsMode" field="Format_Settings_Mode" context="Audio"/> -->
      <!-- <source name="AudioFormatSettingsModeExt" field="Format_Settings_ModeExtension" context="Audio"/> -->

А название колонки не то скопировал.
Это из серии мастер только посмотрел на компьютер и он заработал Embarassed
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 786

Post (Separately) Posted: Tue May 27, 2025 20:23    Post subject: Reply with quote

Loopback wrote:
Всё равно правильнее один раз исправить некорректные теги в своей библиотеке и забыть об этой проблеме. А кракозябры - как раз сигнал, что файл нуждается в исправлении.

Полностью согласен. Правда есть одно "но", о котором я тоже не сразу подумал. Иногда файлы нельзя пересохранить с исправленными тегами, если, например, они стоят на торрент-раздаче. Т.ч. такая функция, как FixCodePage всё-таки нужна, если нужен только просмотр.
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 370

Post (Separately) Posted: Tue May 27, 2025 21:58    Post subject: Reply with quote

Интересно, есть-ли какой-нибудь способ узнать все реальные расширения, поддерживаемые MediaInfo? Поднял я посты, где мы обсуждали в каких файлах хранится описание поддерживаемых расширений. И там перечислены не все, которые поддерживаются в реале. Например 669 нигде не описано. IT, XM. Понятно, что это трековые форматы. Но они у меня есть в наличии. Обнаружил я это через хинты, которые сделаны у меня через Autorun.
Чего хочется в идеале я боюсь написать. А ладно, трясясь от страха напишу, хотя это и так понятно. Можно-ли сделать чтобы TCMediaIndo не зависел от прописываемых расширений? Идеальный вариант был-бы.
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1554

Post (Separately) Posted: Tue May 27, 2025 23:42    Post subject: Reply with quote

AkulaBig wrote:
Можно-ли сделать чтобы TCMediaIndo не зависел от прописываемых расширений?

Если бы это было можно, то было бы сделано изначально. Более того, в библиотеке даже предусмотрен метод для получения этих данных, вот только самих данных в бинарнике нет - опять же в целях экономии размера библиотеки... Так что увы.

PS: но 669 действительно нет в базе.
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 370

Post (Separately) Posted: Wed May 28, 2025 00:14    Post subject: Reply with quote

Loopback wrote:
метод для получения этих данных

Конечно я там смотрел. Мы с вами обсуждали вопрос трековых форматов и как-раз тогда я утверждал, что про них нет инфы. А вот поди ж ты, есть для некоторых.
Loopback wrote:
вот только самих данных в бинарнике нет - опять же в целях экономии размера библиотеки...

Значит зря я трясся от страха. Жаль конечно. Интересно. Через Autorun работает-же без указания расширений.
Loopback wrote:
PS: но 669 действительно нет в базе.

Да. Вот нашел три расширения о которых MI показывает информацию. О других трековых расширений не показывает. Ну или ее нет в них.
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1554

Post (Separately) Posted: Wed May 28, 2025 01:06    Post subject: Reply with quote

AkulaBig wrote:
Через Autorun работает-же без указания расширений.

Здесь же wdx-плагин, без ограничений нельзя, иначе каждый файл будет открываться через MediaInfo.
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 370

Post (Separately) Posted: Wed May 28, 2025 05:39    Post subject: Reply with quote

Loopback wrote:
Здесь же wdx-плагин, без ограничений нельзя

Наверняка не так много таких расширений. Идеала все равно не будет.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 61, 62, 63 ... 66, 67, 68  Next
Page 62 of 68

 
Jump to:  
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