Страница 63 из 74

Добавлено: Ср май 28, 2025 12:38
Orion9
AkulaBig
А разве в файле форматов не перечислены все (все ли?) поддерживаемые расширения в седьмой колонке? Как я понял, если седьмая колонка пустая, значит она соответствует первой колонке. В четвёртой колонке, судя по всему, указан тип формата (T - text, A - audio, V - видео, I - image, M - multiple?, C - compressed). Поправьте меня кто-нибудь, если не прав.
Loopback писал(а):вот только самих данных в бинарнике нет - опять же в целях экономии размера библиотеки...
Если файл имеет неправильное расширение, то MediaInfo сообщяет об этом в поле FileExtension_Invalid. Например, если переименовать файл .ogg в .tmp и открыть его в GUI библиотеки или подсказке Autorun, то появляется:

Код: Выделить всё

Формат                                   : Ogg
...
FileExtension_Invalid                    : oga ogg ogm ogv ogx opus spx
А если неправильное расширение у .mkv файла:

Код: Выделить всё

Формат                                   : Matroska
...
FileExtension_Invalid                    : mkv mk3d mka mks
Выходит, эта информация куда-то вшита в бинарник, иначе откуда она берётся?

Добавлено: Ср май 28, 2025 16:41
AkulaBig
Loopback
Можно вас попросить в двух словах объяснить, для чего это нужно? Я понял, что должен быть файл Codecs.cfg в которых в секциях перечислены названия кодеков. Далее не понял.

Код: Выделить всё

		<separator/>
		<!-- Almost demo purpose, retrieve custom values from lists -->
		<column name="Video codec custom" type="list" list="VideoCodecs">VideoCodecID</column>
		<column name="Audio codec custom" type="script">Output:=GetListValue('AudioCodecs', Format('%4.4d', AudioCodecID), AudioCodecID);</column>
	<lists>
		<list name="VideoCodecs" type="ini" file="Codecs.cfg" section="VIDEO"/>
		<list name="AudioCodecs" type="ini" file="Codecs.cfg" section="AUDIO"/>
		<list name="MainList">
			<line name="VBR">Variable</line>
			<line name="CBR">Constant</line>
		</list>
	</lists>
Еще один момент. Я вам ранее жаловался, что при отсутствии файла TCMediaInfo.xml ТС падает. А у вас не падает. У меня файлы MediaInfo не в папке плагина лежат и к ним путь я прописываю. Похоже в этом дело. Проверил. Так и есть.

Добавлено спустя 1 час 29 минут:
Orion9 писал(а):все ли?
Ну сами видите, что не все перечислены. Я пример привел расширений, для которых в хинтах выводится куча инфы.

Добавлено: Ср май 28, 2025 17:48
Orion9
AkulaBig
То есть вы хотите, чтобы Loopback сделал возможность отключения секции <Formats> ? Сейчас такой опции нет, как я понимаю. Но если её сделать, wdx будет очень медленно работать, хотя хозяин - барин )

Добавлено: Ср май 28, 2025 18:35
AkulaBig
Orion9 писал(а):wdx будет очень медленно работать
Чтобы в этом убедиться надо это потестить. Хинты-же работают быстро, почему wdx будет работать медленно?

Добавлено: Ср май 28, 2025 22:16
Loopback
Orion9 писал(а):M - multiple?
M - Menu.
Orion9 писал(а):Выходит, эта информация куда-то вшита в бинарник, иначе откуда она берётся?
Да, ошибся, эти данные всё же присутствуют в бинарнике, а в исходниках находятся в файле MediaInfo_Config_Automatic.cpp. Примерно в том же виде, как formats.csv. Но нам это ничем не поможет, поскольку в dll для их получения никаких способов нет.
AkulaBig писал(а):Можно вас попросить в двух словах объяснить, для чего это нужно? Я понял, что должен быть файл Codecs.cfg в которых в секциях перечислены названия кодеков. Далее не понял.
Старая тема. Кому-то не нравилось, как называются кодеки в MediaInfo, зато нравились имена из Codecs.cfg, который из другого плагина (Media, кажется). Вот и было сделано.

В принципе механизм универсальный, просто позволяет заменять одни строки на другие с помощью GetListValue.

На самом деле при релизе эти строки надо было бы выкинуть вообще. В принципе еще не поздно.
AkulaBig писал(а): У меня файлы MediaInfo не в папке плагина лежат и к ним путь я прописываю.
Попробовал убрать библиотеки MediaInfo и конфиги из каталога плагина, не повторяется.
AkulaBig писал(а):почему wdx будет работать медленно
Один файл по запросу или сотни - разница есть, тем более что это будет происходить на каждом файле. По сети вообще стоять всё будет.

Добавлено: Ср май 28, 2025 22:40
AkulaBig
Loopback писал(а):На самом деле при релизе эти строки надо было бы выкинуть вообще. В принципе еще не поздно.
Я сам :) Так-то да, сомнительная опция для всеобщего пользования.
Loopback писал(а):Попробовал убрать библиотеки MediaInfo и конфиги из каталога плагина, не повторяется.
А пользовательские колонки-то, где MI используется, запускаете? Я про это не писал, так как вроде само собой разумеющееся.
Loopback писал(а):По сети вообще стоять всё будет.
Ну и сделать это опционально. Зачем мне терять инфу из-за того, что кто-то по сети будет пользоваться вашим плагином? Пользовательские колонки сами по себе напрямую зависят от их количества и количества файлов. Не думаю, что поиск сотни, двух расширений займет какое-то время.

Добавлено: Ср май 28, 2025 22:52
Orion9
AkulaBig писал(а):Хинты-же работают быстро, почему wdx будет работать медленно?
Имелось в виду, что пользовательские колонки будут медленно работать, так как в таком случае все файлы на панели будут открываться и обрабатываться плагином. Поиск тоже будет медленнее работать, но при поиске можно другие критерии задать, чтобы его ускорить. А также могут быть проблемы с базой, если она включена: в базу будет попадать всё, в том числе и то, что хранить в ней совершенно не нужно.

Мое мнение. Опция нужна :mrgreen:

Я серьезно. Если кто-то хочет, пусть ей пользуется, осознавая самостоятельно все риски и недостатки такого использования. Но ведь есть и свои плюсы.
Loopback писал(а):M - Menu.
Oh boy...)

Добавлено: Чт май 29, 2025 03:56
AkulaBig
Orion9 писал(а):в таком случае все файлы на панели будут открываться и обрабатываться плагином
Это понятно. Но мало у кого аудио хранится среди экзешников и архивов. То-есть практически всегда я включаю колонки в правильных директориях.
Orion9 писал(а):А также могут быть проблемы с базой, если она включена
Согласен, но она у меня отключена.
Orion9 писал(а):Мое мнение. Опция нужна
Мне кажется весьма разумная идея.

Добавлено: Чт май 29, 2025 11:49
Loopback
Orion9 писал(а):Мое мнение. Опция нужна
AkulaBig писал(а):Мне кажется весьма разумная идея.
Мне кажется, достаточно спорная идея. Попробовал отключить контроль расширений, как и ожидалось при скролле изрядно подлагивает. По сети тихий ужас. Если и использовать в таком сценарии, то только в отдельном наборе колонок, не для постоянного использования.

Добавлено: Чт май 29, 2025 11:57
Orion9
Loopback
Если будете делать опцию, то как вариант реализации могу предложить сделать переменную окружения, из которой можно будет управлять поведением на лету, меняя ее значение через тот же Autorun. Простой пользователь точно накосячить так ничего не сможет, потому что переменную ещё нужно изменить, а для этого код прописывать надо, или как-то по-другому ее менять. Но в любом из этих случаев нужно понимать, что делаешь и зачем.

Добавлено: Чт май 29, 2025 12:48
AkulaBig
Loopback писал(а):Попробовал отключить контроль расширений, как и ожидалось при скролле изрядно подлагивает.
А вы это проверяли в папке какого-нибудь альбома или на свалке файлов?

Добавлено: Чт май 29, 2025 21:30
Loopback
AkulaBig писал(а):на свалке файлов
Разумеется.

Добавлено: Чт май 29, 2025 21:37
AkulaBig
Loopback писал(а):Разумеется.
Ну это-же нестандартная ситуация. Все-таки в основном файлы размещены по тематике.
Вопрос возник.

Код: Выделить всё

		<column name="All audio as string" type="script">
		<![CDATA[
			Output:='';
			if (A_Format <> '') then Output:=Output+GetLang('A_Fmt')+': '+A_Format+', ';
			if (A_FormatSettings <> '') then Output:=Output+GetLang('Format_Settings')+': '+A_FormatSettings+', ';
		]]>
Изображение
Как видите, GetLang('A_Fmt') не переводит из TCMediaInfo.lng. Из MediaInfo.lng все отлично. Может какую-нибудь опцию включить надо?

Добавлено: Чт май 29, 2025 22:26
Loopback
AkulaBig
В коде вижу, что для wdx загрузка TCMediaInfo.lng закомментирована. Видимо был какой-то резон так сделать, но какой именно не помню. Либо что-то связано с перекрытием строк с одинаковым идентификатором, либо просто решил, что он там не нужен и отключил в целях оптимизации.

Добавлено: Чт май 29, 2025 22:41
AkulaBig
Понятно. А в справке написано, что читает оба языковых файла. Я просто хотел сделать сокращенные наименования для режима "Аудио одной строкой". Ладно, оставлю полные.