U
    d                     @   s   d dl Z d dlZd dlZd dlZd dlmZ ee  d dlZd dlZd dl	Z	d dl
Z
d dlZd dlmZmZ d dlZd dl	Z	d dlZdZefddZdd Zd	d
 Zdd Zdd Zdd Zdd Zdd ZdS )    N)reload)datetime	timedeltaz.5522894419:AAE9CeONlV2lfmUGqbXGZAHC-l1Z90TMuD4c                 C   s   t j|d}|j|| d dS )zf
    Send a message to a telegram user or group specified on chatId
    chat_id must be a number!
    )token)chat_idtextN)telegramZBotZsendMessage)msgr   r   Zbot r
   5/var/www/html/new_level1_copy/new_level1/functions.pysend   s    r   c           
      C   s   t   }t| } t|}t| gdgd dgddg}t|gdgd dgddg}t||tj}t||tjd d }d| }|d | }t   }	|S )Nr         g      ?)timecv2ZimreadZcalcHistZcompareHistZHISTCMP_BHATTACHARYYAZmatchTemplateZTM_CCOEFF_NORMED)
Zimage_1Zimage_2
start_timeZfirst_image_histZsecond_image_histZimg_hist_diffZimg_template_probability_matchZimg_template_diffZcommutative_image_diffend_timer
   r
   r   compare_image   s    

r   c                 C   s8   t jd|  ddd }t|d d }t|d S )Nz=ffprobe -v quiet -show_streams -select_streams v:0 -of json ""T)shellstreamsr   Zduration)
subprocesscheck_outputdecodejsonloadsfloat)filenameresultfieldsr
   r
   r   with_ffprobe)   s    

r    c           	   	   C   s   | dd }|dd  }|d d }t|d }|t| }td|  d| d  td| d  td	d
}t|}W 5 Q R X |d |d< td	d}|	t
| |  d S )N.r   r   z
2m/2m_hls/.tszecho '2m/2m_hls/z.ts'  >> result.m3u8all_files.jsonr+namesw+)splitintstrosrenamesystemopenr   loadwritedumpsclose)	filerefresres2res1Zplus_onename	jsonFile6	all_namesr
   r
   r   change_name3   s    
r;   c              	   C   sV   d|  }t dd}t|}W 5 Q R X ||d< t dd}|t| |  d S )N@zref.jsonr%   r8   r'   )r.   r   r/   r0   r1   r2   )r   r   Z	jsonFile1Zdata_refr
   r
   r   save_changed_fileC   s    
r=   c              	      sB  t dd}t|}W 5 Q R X | }|dd  }|d d |d dkr`|dd  }|d d |dkrćfdd	tt|d
 t|d dD }td}dd	 |D  |d  krĈ |d  |dkr,fdd	tt|d t|d dD }td}dd	 |D  |d  kr, |d   fdd	|D d S )Nr$   r%   r"   r   02c                    s   g | ]} t | d  qS r#   r*   .0ir7   r
   r   
<listcomp>\   s     zfix_flag.<locals>.<listcomp>r   
   z2m/2m_hls/*.tsc                 S   s   g | ]}| d d qS /rI   r(   rD   r3   r
   r
   r   rG   ^   s     r&   3c                    s   g | ]} t | d  qS rA   rB   rC   rF   r
   r   rG   b   s        c                 S   s   g | ]}| d d qS rJ   rL   rM   r
   r
   r   rG   d   s     c                    s   g | ]}| kr|qS r
   r
   rM   )	new_filesr
   r   rG   h   s      )r.   r   r/   ranger)   globremove)r   flagr9   r:   r5   r6   ZliZ
files_pathr
   )rP   r7   r   fix_flagP   s*    *

*
rU   c                 C   sF   |  dd }|dkr|d S |dkr0t||S |dkrBt||S d S )N_r   1r#   r@   rN   )r(   rU   )r   rT   r8   r
   r
   r   get_right_tsl   s    
rX   c                 C   s2   dd t  dD }dd |D }| |kr.dS dS )Nc                 S   s   g | ]}|qS r
   r
   )rD   Zts_videor
   r
   r   rG      s     z$check_ts_in_temp.<locals>.<listcomp>z	temp/*.tsc                 S   s   g | ]}| d d qS rJ   rL   )rD   Zvideor
   r
   r   rG      s     r   r   )rR   )r8   Z	ts_videosZ
new_videosr
   r
   r   check_ts_in_temp}   s    rY   )loggingr+   rR   sys	importlibr   coloredlogsconcurrent.futures
concurrentr   r   r   r   r   r   r   my_tokenr   r   r    r;   r=   rU   rX   rY   r
   r
   r
   r   <module>   s(   
