robalo escribió:Bueno, he estado ojeando el code y he visto el error al que terefieres que supongo será el que da igual el porcentaje de inicio, kodi intentará reproducir el vídeo nada más empezar.
Creo, es una opinión, que te estás enredando con el 'piece_set(num_piece, set_piece)'. Ese es uno de los problemas, el otro es que debes decidir bien cuando quieres que inicie ya que el tamaño del fichero será la suma de las piezas setadas a 1.
Yo dejaría 'piece_set' como estaba 'piece_set(num_piece)' y para saber como está seteada una pieza concreta lo haría con '_set_piece = h.piece_priority( piece_set(num_piece) )'.
Gracias por echarle un ojo

. Al final he rehecho varias cosas, primero porque no encontraba la manera y segundo porque creo que limitar completamente la descarga a 5 piezas acaba siendo perjudicial, porque no conectará con muchos peers y la descarga será más lenta. Ya he actualizado el código en el enlace anterior, ahora lo que hace es descargar las 5 primeras y últimas como antes y cuando estas terminen poner el resto a modo 1 y activar el sequential_download, de esta manera hay cierto margen para comenzar el vídeo y la velocidad es buena.
El error que me daba no era el del porcentaje de inicio, tal y como lo he puesto funciona igual que con el s.progress, se activa exactamente al mismo porcentaje. El error se producía justo después de completarse todas las piezas puestas con deadline al comienzo, conseguía cambiar las 5 siguientes de prioridad 0 al deadline, pero justo después Kodi petaba (ni siquiera llegaba a intentar reproducir porque el porcentaje era menor). Me quedo con la duda de saber a qué era debido, pero creo que no merece la pena obcecarse en ello xD Al menos tal y como está ahora es completamente funcional, la reproducción comienza en el momento correcto y se producen menos pixelaciones y saltos al comienzo, luego ya depende de la velocidad del torrent en sí.
robalo escribió:
Aquí hablan un poco del tema 'set_sequential_download' y 'set_piece_deadline'
Tenemos que ser cocientes que esto es puro ejercicio ya que por mucho que hagamos de dónde no hay no se puede sacar ya sea MCT, utorrent u lo que sea. Te recomiendo que si tienes clientes apañaos para los torrents, compruebes el mismo torrent desmarcando todos los archivos y luego en los archivos sobre uno de los videos le das a "Copy Stream URL" o la más parecido. Empezará hacer lo que tuquieres hacer, pegas la url en el navegador ya ver que pasa

pixelarse no se va a pixelar pero quedarse parao sí

De esta forma podrás saber si estás haciendo las cosas bien o más o menos bien.
Justamente por la página que comentas decidí probar suerte con lo del set_piece_deadline, pero como menciona, aunque a primera vista puede parecer muy aprovechable para el streaming, luego puede formar cuellos de botella y reducir mucho los peers a los que te conectas. Como tú dices tampoco se puede hacer magia ni intentar reproducir un torrent al vuelo como si fuera un vídeo online, además que sería ir contra el propio sistema torrent que lo que busca en primer lugar es "esparcir" lo máximo posible las piezas, dándole más prioridad a las que menos usuarios tienen. Mi objetivo era más que nada evitar los saltos, porque las pixelaciones son asumibles. En mi caso si intento hacer un streaming de un vídeo mientras se descarga por uTorrent, el reproductor cuando llega a una parte no descargada se pausa, pero en Kodi pega un salto. Pero vamos, la solución es clara, esperar a que haya avanzado la descarga y mandar a tomar por **** los deadlines
