Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ordenar resultados en base al nombre del video #28

Open
IvanRF opened this issue Jan 23, 2017 · 9 comments
Open

Ordenar resultados en base al nombre del video #28

IvanRF opened this issue Jan 23, 2017 · 9 comments

Comments

@IvanRF
Copy link
Collaborator

IvanRF commented Jan 23, 2017

Sería ideal poder darle prioridad a los subtítulos en cuya descripción se incluya el source/ encoder correspondiente al video. Ejemplos: WEB-DL, EVO, SPARKS, etc.

Es decir, ordenar primero en base a esa condición y luego por la valoración.

Siguiendo tu ejemplo en #14:

  • Nombre del archivo del video: Zoolander.2.2016.HDRip.XviD.AC3-EVO.avi
  • Descripción del subtítulo mencionado:

originales de itunes, corregidos por mi, va para: 720p web-dl dd5 1 h 264-playnow, 1080p web-dl dd5 1 h264-rarbg, 720p web-dl x264 shaanig, mkvcage, x265 hevc-psa, etrg, evo y demas webdl/hdrip tanks davidlanda

En otras palabras, es lo que uno hacía cuando buscaba en la web de subdivx entre muchos subtítulos: Ctrl+F y la fuente (ej: "evo"). Para la búsqueda del ejemplo (link) sólo hay 2 subtítulos que contienen "evo" en la descripción.


En cuanto a la implementación, lo "complicado" sería sacar la fuente del nombre del video. Después es sólo buscar que la descripción del subtítulo contenga ese texto.

Se me ocurren estas opciones:

  • Ir limpiando el nombre, sacando números y textos comunes ("HDRip", "720p", "1080p", etc)
  • Tomar la última palabra (muy general, no creo que se cumpla siempre)
  • Incluir una lista de las fuentes más usadas y comparar contra eso (WEB-DL, EVO, SPARKS, etc)
@ramiro
Copy link
Owner

ramiro commented Jan 23, 2017

¡Me encanta! Sobre todo porque es algo que tenía en mente desde hace tiempo ... y uno de estos días iba a abrir un issue ya que quiero que sea un/el feature de 0.3.0.

Respecto a poder extraer la meta info del nombre del archivo la idea es usar guessit: https://pypi.python.org/pypi/guessit que ahora que lo recuerdo deberíamos agregarlo como Python library add-on a los repos de Kodi para usarlo como dependencia (de manera similar a html2text) porque veo que no está. Incluso ya había 'comenzado a trabajar' en el tema hace tiempo: https://github.com/ramiro/script.module.guessit

Una vez solucionado eso nos va a quedar cómo descubrir la info relevante a partir de la descripción del subtítulo en subdivx para que podamos hacer el matching. Lamentablemente la calidad de esas descripciones es muy dispar. Ahi ya tenia otras ideas adicionales que potencialmente podrían involucrar procesamiento mas pesado.

Pero creo que si implementamos guessit + algún análisis relativamente simple del texto de la descripción para al menos poder extraer los releasers (EVO, etc.) para realizar el matching podemos mejorar la situación actual, incluso si disponemos una simple lista de palabras podemos usar otros elementos de los meta datos (como el tipo de origen: HDRip, dvdscreener, ...) que mejorarán aun más el scoring a la hora de comparar los subtítulos.

@ramiro
Copy link
Owner

ramiro commented Jan 23, 2017

Me olvidé de un enlace en mi comentario anterior: http://kodi.wiki/view/Category:Add-on_libraries/modules

@IvanRF
Copy link
Collaborator Author

IvanRF commented Jan 23, 2017

guessit lo resuelve todo 😄
Sólo sería buscar que la descripción contenga a "release_group", ya que para todos los formatos (HDRip, 720p, etc) de un mismo release_group los tiempos siempre calzan igual. No recuerdo si los WEB-DL también tienen un release_group.

@IvanRF
Copy link
Collaborator Author

IvanRF commented Jan 23, 2017

@ramiro la única duda que tengo es para los casos en que file_original_path es una URL .
Ejemplo:

  • searchstring = The Crown S01E04
  • file_original_path = https://.....googlevideo.com/videoplayback?id=...

2017-01-23_14-18-26

En la pantalla arriba a la derecha muestra "videoplayback". Para estos casos se te ocurre algo con respecto a de dónde sacar la meta info o el nombre del archivo? (es lo que más uso).
No se si urlresolver sirve de algo, no lo probé.

@ramiro
Copy link
Owner

ramiro commented Jan 23, 2017

Nunca he usado streaming, o al menos nuca he usado un add-on dto. a youtube y adicionalmente con la intención de descargar subtítulos desde Subdivx. de manera que tengo poca experiencia en el tema.

Por lo que se ve Subdivx encuentra subtítulos o sea que nuestro addon está usando algún meta-dato que contiene al menos el título del video/película/etc. y es mas informativa que la URL ¿Correcto?

¿No deberíamos usar esos mismos meta-datos cuando hagamos esta búsqueda/scoring/ordenamiento?

@IvanRF
Copy link
Collaborator Author

IvanRF commented Jan 23, 2017

El release_group, que sería lo que necesitamos, depende únicamente del video. La información del array item en Search(item) para este ejemplo es:

15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> 2let_language = ['es', '']
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> season = 1
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> rar = False
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> year = 2016
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> episode = 4
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> temp = True
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> title = Act of God
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> manual_search = False
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> tvshow = The Crown
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> file_original_path = https://...googlevideo.com/videoplayback?id=... (un montón de variables)
15:28:58 T:12412  NOTICE: SUBDIVX - Search: >> 3let_language = ['spa', '']

El searchstring final es "The Crown S01E04" y por eso encuentra bien los subtítulos. Yo uso el addon más conocido de Kodi (no oficial) y por lo que estuve probando recien todos los links en file_original_path tienen el mismo formato (no se que tiene que ver Google en esto, tal vez lo usan como redirección).

De todas formas, te diría que un 99% de los casos los subtítulos en los que mencionan WEB-DL son los que andan bien con estos videos. De última se agrega un caso especial para "videoplayback" y se lo toma como WEB-DL.

@ramiro
Copy link
Owner

ramiro commented Mar 12, 2018

Ya tenemos el Ok para la adición del add-on script.module.guessit (el empaquetamiento de GuessIt para Kodi) al repositorio de add-ons oficial (para Krypton y posterior):

xbmc/repo-scripts#815 (comment)

Dicha adición queda pendiente de que guessit sea efectivamente usado por algun add-on nuevo o existente.

De manera que estamos en libertad de trabajar en este feature.

@IvanRF
Copy link
Collaborator Author

IvanRF commented Mar 12, 2018

@ramiro excelente! 👍
Donde agregues la extracción con guessit arrancamos con las pruebas 😃

@ramiro
Copy link
Owner

ramiro commented Apr 23, 2018

Respecto a la puntuación en la comparación de los meta-datos entre distintos subtítulos disponibles, ver http://subliminal.readthedocs.io/en/latest/api/score.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants