Показать сообщение отдельно
Старый 06.12.2014, 17:20   #421
DiMartino
Senior Member
 
Аватар для DiMartino
 
Регистрация: 26.01.2013
Сообщений: 867
Отправить сообщение для DiMartino с помощью Skype™
По умолчанию

Цитата:
Сообщение от RussakHH Посмотреть сообщение
Да для тех кто привык что плагин через либу капризничал и не качал какие то раздачи, теперь он как автомат Калашникова что не закинешь всё хавает!
И крове всего прочего функционал значительно расширился.
Пожалуй поведаю мистическую историю при обновлении этого плагина. Я им не так что бы часто пользовался для просмотра, чаще просто для поиска и скачки, но когда увидел, что вышел libtorrent 1.0.0, то захотел проапгрейдить Торрентер для всех. Когда я поставил 1.0.0, то ничего не заработало, сиды отказывались искаться, я наивно полагал, что это связано именно с плагином, поэтому я углублялся в его исходный код, пытался перенастраивать libtorrent, но ничего не получалось, тогда я откатился на 0.16.10 и тут оказалось, что и она работает то не ахти. Но так как я уже узнал часть кода, то мне казалось странным, что находя сидов и закачивая все нужные кусочки видео не стартовало, при самом жестком моде работы с HDD, когда все куски пишутся на место без кэша ОС.
Буфер скачивался, закачка стопорилась, плагин пытался стартовать видео, но у него не получалось. Я шел в папку, открывал нормально видео с помощью VLC. Даже XBMC нормально открывало этот буфер. Все ходило по кругу, пока я не додумался открыв в XBMC буфер и не удаляя файл пойти открыть его опять через плагин. Тогда то это и произошло, файл внезапно заиграл и закачка продолжилась. В разных режимах отладки я пытался выяснить как так получается, что через браузер файлов в XBMC видео открывается, даже через пульт на телефоне запускается, а плагин этого сделать не может до открытия кем-то другим. Я пытался это делать и с помощью класса xbmc.Player() и с помощью внутреннего обращения xbmc.exec('Play()'), но все попытки были тщетны и ffmpeg не удавалось открыть поток, нужно было открыть в браузере файлов.

Именно тогда родился монстр:
PHP код:
                #мегакостыль!
                
rpc=({'jsonrpc''2.0''method''Files.GetDirectory''params': {
                
'media''video''directory':os.path.dirname(path)}, 'id'0})
                
data json.dumps(rpc)
                
request xbmc.executeJSONRPC(data)
                
response json.loads(request)
                
time.sleep(0.3
В режиме отладки я обратил внимание, но то что создается эскиз видео, т.е. миниатюра thumbnail, это и послужило догадкой, что возможно при открытии для создания эскиза что-то меняется и идет по-другому. Поэтому успешность проигрывания файла теперь почти 100%. Глава департамента тестирования говорит, что даже капризные в этом смысле mp4 чаще всего начинают играть, а об остальных форматах вообще можно не беспокоиться.

В данный момент я все еще разбираюсь почему libtorrent 1.0.2 не хочет так резво искать сидов при всех равных настройках, даже сам научился компилировать под windows и ubuntu. Так что возможен скоро переход. Впрочем libtorrent теперь отдельный модуль в моем репо, перехода вы даже не заметите.


Ну и еще, я ищу качественные сайты со списком названий фильмов\сериалов для поиска, что бы не печатать все вручную, если не знаете что хотите. Кидайте свои предложения, лучший вариант это большой список новинок, желательно с картиной или понятным формированием урл картинки на основе ссылки. Еще принимаю заказы на добавление ваших любимых трекеров.
__________________
Плагин MyShows.ru (+оценка KinoPoisk.ru) для Kodi http://xbmc.ru/forum/showthread.php?t=3264
Торрент-стример Torrenter v2 http://xbmc.ru/forum/showthread.php?t=6837

Последний раз редактировалось DiMartino; 06.12.2014 в 17:28.
DiMartino вне форума   Ответить с цитированием