a
    2ƒ§g  ã                   @   sü   d dl mZmZmZ d dlZd dlZd dlZd dlZd dlm	Z	 ee
ƒZe	ejddddde_dZdZeƒ Zdd	„ Ze d
¡dd„ ƒZe d¡dd„ ƒZe d¡dd„ ƒZe d¡dd„ ƒZdd„ Zdd„ Zejedd ¡  e
dkrødZejddd  dS )!é    )ÚFlaskÚrender_templateÚsend_from_directoryN)ÚProxyFixé   )Zx_forZx_protoZx_hostZx_portÚvideosÚ
thumbnailsc              
   C   sL   t j t| › d¡}t j |¡sHt j t| ¡}t dd|dddd|g¡ |S )Nz.jpgÚffmpegú-iz-vfzthumbnail,scale=200:150z-vframesÚ1)ÚosÚpathÚjoinÚTHUMBNAIL_FOLDERÚexistsÚVIDEO_FOLDERÚ
subprocessÚrun)Zvideo_filenameZthumbnail_pathÚ
video_path© r   ú/var/www/kongo/main.pyÚgenerate_thumbnail   s    ýr   ú/c                  C   sN   t t t¡dd„ dd} i }| D ]}| ¡  d¡r t|ƒ||< q td| |dS )Nc                 S   s   t j t j t| ¡¡S ©N)r   r   Úgetmtimer   r   )Úxr   r   r   Ú<lambda>"   ó    zindex.<locals>.<lambda>T)ÚkeyÚreverse)ú.mp4z.aviz.movú.mkvz
index.html)r   r   )Úsortedr   Úlistdirr   ÚlowerÚendswithr   r   )r   r   Úvideor   r   r   Úindex   s    ýr'   z/videos/<filename>c                 C   sl   t j t| ¡}|  ¡  d¡r^t j | ¡d }|d }t j t|¡}t j |¡rXtt|ƒS dS n
tt| ƒS d S )Nr!   r   r    )u;   Plik jest w trakcie konwersji. SprÃ³buj ponownie pÃ³Åºniej.i÷  )	r   r   r   r   r$   r%   Úsplitextr   r   )Úfilenamer   Ú	base_nameÚmp4_filenameÚmp4_pathr   r   r   r&   +   s    
r&   z/thumbnails/<filename>c                 C   s
   t t| ƒS r   )r   r   )r)   r   r   r   Ú	thumbnail:   s    r-   z/favicon.icoc                   C   s   t tjdddS )Nzicons8-gorilla-48.pngz	image/png)Zmimetype)r   ÚappZ	root_pathr   r   r   r   Úfavicon?   s    r/   c              
   C   sv   zdt j | ¡d }|d }t j t| ¡}t j t|¡}dd|ddddd	d
|g
}t |¡ W t | ¡ nt | ¡ 0 d S )Nr   r    r	   r
   z-c:vZlibx264z-c:aZaacz-strictZexperimental)	r   r   r(   r   r   r   r   Úconverting_filesÚdiscard)Zmkv_filenamer*   r+   r   r,   Z
ffmpeg_cmdr   r   r   Úconvert_mkv_to_mp4D   s    úr2   c               
   C   sì   z¨t  t¡} | D ]”}| ¡  d¡rt j |¡d }|d }t j t|¡}t j t|¡}t j |¡r|t	d|› ƒ t  
|¡ q|tvrt |¡ tjt|fdd ¡  qW n2 tyÚ } zt	d|› ƒ W Y d }~n
d }~0 0 t d¡ q d S )	Nr!   r   r    zUsuwanie pliku MKV: T)ÚtargetÚargsÚdaemonu   BÅ‚Ä…d w monitorze: é
   )r   r#   r   r$   r%   r   r(   r   r   ÚprintÚremover0   ÚaddÚ	threadingÚThreadr2   ÚstartÚ	ExceptionÚtimeÚsleep)ÚfilesÚfiler*   r+   r,   Zmkv_pathÚer   r   r   Úmonitor_videosW   s$    


$rC   T)r3   r5   Ú__main__)zkongohouse.online.pemzkongohouse.online.keyz0.0.0.0éP   )ÚhostÚport)Zflaskr   r   r   r   r   r:   r>   Zwerkzeug.middleware.proxy_fixr   Ú__name__r.   Úwsgi_appr   r   Úsetr0   r   Zrouter'   r&   r-   r/   r2   rC   r;   r<   Úcontextr   r   r   r   r   Ú<module>   s2   



