Comments (27)
from torrserver.
Я в курсе про libtorrent
from torrserver.
Я в курсе про libtorrent
Это не libtorrent, это просто анакроликс с авторскими правками
from torrserver.
Ок гляну
from torrserver.
Ок гляну
Также могу порекомендовать Libtorrent.
Не так давно этот проект был запущен, он для всех платформ, это лучший вариант который я бы порекомендовал.
https://github.com/ElementumOrg/lt2http
@YouROK Что вы скажете об этом проекте?
from torrserver.
@YouROK http://localhost:65225/swagger/ui
Есть api
from torrserver.
@YouROK https://github.com/ElementumOrg/lt2http Это не библиотека, а приложение.
from torrserver.
@YouROK Я поговорил с разработчиком и насколько я понял, l2http(Libtorrent) возможно реализовать, здесь также используется http api.
l2http был реализован для упрощения кодирования из libtorrent-go - https://github.com/ElementumOrg/libtorrent-go
Слова одного из разработчиков:
резюмируя:
-
python часть это сам коди аддон plugin.video.elementum - он общается с коди через питоновские библиотеки коди, а с elementum через http api предоставляемое elementum'ом.
-
elementum это go демон, который общается с коди через http api предоставляемое plugin.video.elementum'ом, а торренты качает использую libtorrent-go.
-
libtorrent-go это так сказать "манифесты" на языке swig, которые во время сборки генерируют промежуточный go (https://pkg.go.dev/cmd/cgo) и c++ код для связи golang c libtorrent. сгенерированный код который используется в elementum, как в примере выше (https://github.com/elgatito/elementum/tree/master/bittorrent).
если хочется посмотреть на этот код (вероятно это будет то, что вы имели ввиду под api) - то вот как можно это сделать: elgatito/plugin.video.elementum#712 (comment) -
lt2http это отдельный, плагино-независимый демон, написанный на c++, который предоставляет http api, через которое можно давать команды ему на скачивание торрентов, получение их списка, стриминг файла из торрента.
-
к lt2http есть "запускалка при старте" внутри коди, в виде коди аддона - https://github.com/ElementumOrg/service.lt2http
Слова одного из разработчиков:
И если чисто технически - мне кажется использовать libtorrent-go так себе затея, от него много проблем в коде, паники вылезают много где, сложно писать код, так как он пишется для автосгенерированной прослойки (см ссылку выше).
И версия libtorrent-go используемая в elementum работает со старой версией libtorrent (1.1).
Та, что вы скинули, использует 1.2 - не плохо, но уже есть и 2.0. И если её автор перестанет её обновлять, то опять же риск остаться со старой версией libtorrent.
В общем, по этим причинам автор elementum'а и написал lt2http(Libtorrent), чтобы попробовать перевести elementum на него.
from torrserver.
Я сказал почти все подробности выше :), относящиеся к Libtorrent-go и l2http на c ++.
Даже пример реализации Libtorrent-go или l2http через http api.
Выбор за вами, у Anacrolix есть проблемы с частными подключениями, с воспроизведением фильмов назад, и многое другое...
у torrserve есть веб-сайт 10-го уровня, почему бы не иметь сервер 10-го уровня :).
Да, знаю, работа тяжелая, но результат тоже потрясающий.
from torrserver.
@YouROK Забыл сказать, самый стабильный и обновляемый libtorrent-go это: https://github.com/i96751414/libtorrent-go
from torrserver.
Я тебя понял, но пока не очень хочется переходить на либторрент. На днях Цыник попробовал последний движок от Анакролиса, и он показал хорошие результаты, по поводу скорости и спама подключений
from torrserver.
Я тебя понял, но пока не очень хочется переходить на либторрент. На днях Цыник попробовал последний движок от Анакролиса, и он показал хорошие результаты, по поводу скорости и спама подключений
@YouROK
мне также ответил anacrolix и сказал что решил проблему с kinozal.tv. Вы можете это проверить?
anacrolix/torrent#462 (comment)
from torrserver.
@YouROK Теперь сиды находит с кинозал, тестировал на версию 101.ne.
Вы можете посмотреть здесь https://gitlab.com/axet/libtorrent/-/blob/master/lpd.go? здесь реализовано bep 14 local peers discovery. Это анакроликс, только модифицированный автором, и если это может быть реализовано в torrserver.
Bep14 не реализован в Anacrolix.
from torrserver.
Я тебя понял, но пока не очень хочется переходить на либторрент. На днях Цыник попробовал последний движок от Анакролиса, и он показал хорошие результаты, по поводу скорости и спама подключений
К сожалению, с новым сервером все еще есть проблемы, насколько я могу судить, проблемы с передачей кеша ...
from torrserver.
@YouROK https://github.com/martintrojer/mtorrent-go
Я наткнулся на этот проект, он основан на Libtorrent Go, исходник старый, но это тот же Libtorrent-go, по крайней мере здесь Libtorrent-go не имеет отношения к elementum.
from torrserver.
@YouROK Прихожу с новой информацией, может это поможет. Спасибо за ваше терпение
Libtorrent-go - это проект, содержащий привязки go (сгенерированные SWIG) для libtorrent (https://github.com/arvidn/libtorrent). Поэтому api можно найти в документации по проекту libtorrent.
from torrserver.
@YouROK
Привет.
Подскажите пожалуйста, с какими проблемами вы столкнулись при внедрении Libtorrent-go?
Мне нужна как можно более четкая информация
from torrserver.
Дошел до того что смог собрать сам https://github.com/i96751414/libtorrent-go и https://github.com/i96751414/torrest
Но что там собирается не понял, так как оно все в докерах идет. А что там внутри нужно разбираться
from torrserver.
Дошел до того что смог собрать сам https://github.com/i96751414/libtorrent-go и https://github.com/i96751414/torrest
Но что там собирается не понял, так как оно все в докерах идет. А что там внутри нужно разбираться
@YouROK
Здесь сказано что Libtorrent-go можно запустить без докера. И еще как можно увидеть код c++ во взаимодействии с Go. И как с ним можно работать.
elgatito/plugin.video.elementum#712 (comment)
elgatito/plugin.video.elementum#712 (comment)
from torrserver.
@YouROK
libtorrent-go это библиотека, её нельзя запустить.
Собрать (скомпилировать) её можно в свою систему напрямую.
В
https://github.com/ElementumOrg/libtorrent-go/blob/master/README.md
Есть шаг:
(Optionally) Build locally without Docker (for local development, for example) для дополнительной информации
для первых шагов понадобится docker - для подготовки, а уже потом можно собрать golang библиотеку прямо в системе.
Можете конечно попробовать сделать шаги из Makefile как-то сами, без использования docker, если хорошо разбираетесь.
Правда сейчас docker есть под все платформы, так что проще его установить, чем пытаться переделать текущий процесс сборки.
from torrserver.
Еще раз, я все собрал. Все это в докере. Но как там чего в докере происходит с помощью скриптов, я не разобрался
from torrserver.
Еще раз, я все собрал. Все это в докере. Но как там чего в докере происходит с помощью скриптов, я не разобрался
@YouROK
Посмотрите исходный код Makefile, плюс репозитории с самими компиляторами могут быть полезны для общего понимания (там же в GitHub).
Ну и соберите без докера библиотеку, как описано в шаге, который я написал ранее.
В
https://github.com/ElementumOrg/libtorrent-go/blob/master/README.md
Есть шаг:
(Optionally) Build locally without Docker (for local development, for example)
Плюс еще поможет эта тема.
elgatito/plugin.video.elementum#712 (comment)
from torrserver.
imho это бесcмысленный тред. VuzzyM - если тебе интересна тема интеграции libtorrent в торрсервер - разбирайся сам и приходи с готовым решением. А учить разработчиков как собирать библиотеки, когда сам слабо понимаешь - не нужно.
from torrserver.
imho это бесcмысленный тред. VuzzyM - если тебе интересна тема интеграции libtorrent в торрсервер - разбирайся сам и приходи с готовым решением. А учить разработчиков как собирать библиотеки, когда сам слабо понимаешь - не нужно.
Это ваше собственное мнение, я никого не учу, я предложил идею, вы не поняли. В течение нескольких месяцев я искал здесь идеи, из своего времени, а вы обвиняете меня в том, что я учу кого-то другого, проект с открытым исходным кодом должен поддерживаться идеями, а не критикой.
я лично поддерживаю любой проект ,
например сколько issue я для anacrolix сделал.
Еще один проект, который вот-вот должен был умереть был elementum, когда появился kodi 19, он был написан на python 3, но elementum на python2 и не был совместим с kodi 19, я вместе с vlmaksime адаптировал elementum с python 3. Теперь оригинальный разработчик elementum продолжает развитие elementum.
Я не хотел этого говорить, но иногда лучше сказать правду.
Я даже пожертвовал деньги другому опытному разработчику Libtorrent, чтобы он объяснил некоторые вещи о libtorrent, чтобы помочь проекту torrserver.
@tsynik
from torrserver.
Извините что я так много написал, но любой проект с открытым исходным кодом должен поддерживаться, надеюсь вы меня поняли ...
from torrserver.
@YouROK У YouROK есть свое мнение, он может закрыть любую issue. Если вы считаете то что сделал бесполезно, можете закрыть тему. Жду ответа.
from torrserver.
Еще раз, я все собрал. Все это в докере. Но как там чего в докере происходит с помощью
@YouROK
Все что я написал это простое мнение, предложение.
Насколько я понимаю, надо работать без докера, надо работать локально. С помощью swig. Приведение структур C++ в Golang с использованием библиотеки SWIG задокументировано в документации SWIG-Golang http://www.swig.org/Doc2.0/Go.html . И вроде после в докере запустить, протестировать.
например без докера, взято из документации Libtorrent-go:
make local-env CROSS_TRIPLE=x86_64-linux-gnu
make re TARGET_OS=linux TARGET_ARCH=x64 CROSS_ROOT=local-env
Это все что я должен был сказать, спасибо за понимание.
from torrserver.
Related Issues (20)
- При редактировании торрента затирается поле data HOT 1
- [BUG] Ошибка кнопки "Плейлист" HOT 1
- [Feature] Add multiple user accounts HOT 3
- а как вообще установить тс на андроид? HOT 1
- Fix file name when downloading a file HOT 1
- Slow Caching speed HOT 1
- Потребление RAM HOT 1
- [Feature] Display tracker URL in WebUI HOT 1
- [Feature] Implementation of TS API for paid traffic. Clients (TorrServe\Web) use a large amount of traffic from TorrServer while idle. HOT 7
- [BUG] Проблемы с разметкой и масштабированием интерфейса HOT 1
- [Feature] Возможность ручной отметки серий как просмотренных HOT 1
- DLNA discovering via ssh HOT 2
- [Feature] Fuse mount for streaming torrent files HOT 1
- [Feature] Support qBittorrent compatible API
- [BUG]Videos in mkv format will only be downloaded and cannot be played online HOT 1
- [Feature] Предварительно полное скачивание фильма HOT 1
- [Feature] Bookmarks
- [BUG] TorrServer недоступен для сайтов, открытых в Chrome через http протокол. HOT 2
- Обновление торрсервера в докере HOT 2
- [BUG]
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from torrserver.