История

Автор V0lt, 27 августа 2017, 09:29:11

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

V0lt

Это можно сделать.

Но сейчас и без этого куча работы, т.к. придется многое переписать и вспомнить кучу нюансов.

Например, нюансы идентификации медиа:
1. Простые файлы. С ними все понятно, идентификатором является полный путь к файлу (включает имя файла).
2. DVD-Video. Тут используется специальный идентификатор выдаваемый DVD-навигатором. Путь не годиться, т.к. для разных дисков вставленных в один привод он будет одинаковым.
3. Образ диска ISO. Если смонтированный образ диска откроется как диск в плеере, то идентификатором будет полный путь к файлу ISO.
4. Ссылка на страницу ролика в YouTube. Идентификатором будет исходная ссылка, а не ссылки на потоки.
5. ...

Aleksoid1978

#16
Про DVD - хранить тоже самое что и сейчас. Путь это понятно - ну и все остальное что надо. Я бы не стал заморачиватся и чисто по пути запоминал.
ISO - просто полный путь.
Понятно что придется кое-что переделать для этого.

Youtube - так же исходная ссылка.
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

#17
mpc-be_6212_history_file_2
Адаптировал исходники февральского билда к текущему коду с небольшими правками.
Некоторые фичи, завязанные на историю отключены.

Путь к файлу истории: %APPDATA%\MPC-BE\history

Напоминаю, билд тестовый. За реплики "Все пропало!" бан на сутки.

V0lt

mpc-be_6228_history_file_4
Исправил сохранение истории DVD.
Опции "Запоминать позицию..." могут работать некорректно. Я хотел их сделать с другой логикой, но еще думаю.

Вопросы:
Правильно ли нумеровать номера аудио и субтитров начиная с нуля?
Нужно ли запоминание отключения субтитров?

V0lt

#19
mpc-be_6246_history_file_5
Различные исправления по применению опций.
Исправлено восстановление позиции DVD-Video.

Вопрос о нумерации дорожек начиная с 1 все еще открытый.
Нумерация с 0 удобна на текущем этапе. Но если в будущем захочется сделать "пустые субтитры", то нумеровать дорожки лучше с 1, а 0 оставить для пустышки. Определиться надо до того, как код пойдет в основную ветку.

Aleksoid1978

-1 - значит ничего, и все.
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

#21
Поясню подробнее, т.к. "-1" тут не причем.
Еще раз напомню, что речь о файле истории, а не внутреннем представлении индексов.

-1 - внутреннее значение в плеере, которое означает, что дорожка еще не выбрана или отсутствует. Это значение в файл истории не пишется и писаться не будет.

Сейчас номера дорожек в файл истории записываются с 0 значения согласно внутренним индексам.
1 дорожка - 0
2 дорожка - 1
3 дорожка - 2
и т.д.

Я предлагаю записывать номер выбранной дорожки в файл истории "по-человечески".
1 дорожка - 1
2 дорожка - 2
3 дорожка - 3
и т.д.

Зачем?
Речь о классическом выборе субтитров, когда чтобы выключить субтитры мы просто перебираем список субтитров до значения "без субтитров". Такое реализовано в железных плеерах (у меня так на ТВ) и некоторых программных (например, PotPlayer). В MPC-BE такого нет. Есть 2 выключателя, которые выключают субтитры глобально.

Значение "без субтитров" обычно идет первым в списке. Поэтому в будущем мой вариант записи в файл истории для субтитров будет выглядеть так:
"без субтитров" - 0
субтитры 1 - 1
субтитры 2 - 2
субтитры 2 - 3
и т.д.
На совместимость это совершенно не повлияет.

Тема про пункт "без субтитров" в плеере поднималась неоднократно. Последний раз 24-10-2020.

V0lt

mpc-be_6255_history_file_7
Дорожки внутри файла истории нумеруются с 1.
URL-ы начинающиеся на "https://www.youtube.com/watch?" в списке последних файлов заменяются на "YouTube - <Название>".
Добавлена настройка L"LastOpenFile", которая используется в диалоге открытия файлов.
Другие мелкие исправления.

Aleksoid1978

А у меня есть предложения для любых онлайн ссылок если есть название - выводить "<имя_сайта> - <название>", как пример для Youtube - "youtube - <Название>".
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

#24
Aleksoid1978
Идея хорошая, но Я так не делаю, потому что в некоторых случаях название может быть менее информативным, чем URL .
У Ютуба URL - это машиный хеш. Что находится по ссылке можно понять только по названию. Возможно стоит еще добавлять название канала.
А бывает всякие радио-трансляции, у который в названии текущий трек, что бесполезно для идентификации. Тут URL может оказаться более информативным.

В общем, давайте примеры ссылок. Я буду смотреть, что там получается, как лучше разрулить и постепенно получим оптимальный результат.

mpc-be_6255_history_file_8
Добавлена запись заголовка в историю для разных случаев.
Для DVD-Video запущенного из VIDEO_TS находящегося в корне диска показываем метку диска в списке "последних файлов".

Напомню, внедрения файла истории в основную ветку еще не произошло. Идет этап тестирования. Проверяется корректность хранения истории в отдельном файле по сравнением с тем, что сейчас имеется, не отвались ли что-нибудь важное.

Aleksoid1978

Эх ещё бы механизм для миграции, я щас не хочу терять историю - поэтому не тестю
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

#26
Мне непонятно, что у людей в истории плеера, которую жалко потерять ради новых фич?

Утилиту можно написать, но это после того, когда зафиксируются формат и имя файла истории.

Aleksoid1978

Ну вот у меня там щас файлы с разных сериалов да еще и с запоминанием позиций. Потом опять искать какой же последний файл смотрел - ну пока что-то не охота все это терять :)
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /AMD Radeon R9 16Gb@3200 /Kingston 500Gb M.2 /GTX 1650 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

#28
mpc-be_6259_history_file_9
Исправлена запись последних файлов для ярлыка в панели задач.
Возвращена запись позиции в файле только при просмотре более 30 секунд.

V0lt

#29
mpc-be_6259_history_file_10
Добавлена замена URL-ов начинающиеся на "https://youtu.be/" на "YouTube - <Название>" в списке последних файлов.
Устранен случайный откат изменения r6238.

MPC-BE_History_test5 - показ текущей истории из реестра и экпериментальной истории из файла.
Добавлена автоматическая фильтрация дублей.
Добавлена нумерация записей.
Добавлена возможность импортировать историю из реестра в файл.