#!/usr/bin/env python 
# coding=utf-8
#1.编译器声明和2.编码格式声明
#1:为了防止用户没有将python安装在默认的/usr/bin目录，系统会先从env(系统环境变量)里查找python的安装路径，再调用对应路径下的解析器完成操作，也可以指定python3
#2:Python.X 源码文件默认使用utf-8编码，可以正常解析中文，一般而言，都会声明为utf-8编码

import cv2 #引用OpenCV功能包
import numpy as np #引用数组功能包

#读取视频并获取视频帧率、分辨率、总帧数
videoCapture = cv2.VideoCapture("VideoExample.mp4")
fps=videoCapture.get(cv2.CAP_PROP_FPS)
size = (int(videoCapture.get(cv2.CAP_PROP_FRAME_WIDTH)),
        int(videoCapture.get(cv2.CAP_PROP_FRAME_HEIGHT)))
totalFrames = int(videoCapture.get(7))

#创建新视频
videoWriter = cv2.VideoWriter(
    "VideoWriterExample.avi", cv2.VideoWriter_fourcc('I','4','2','0'),
    fps, size)

x=10 #水印坐标
y=10 #水印坐标
i=1
step_x=5
step_y=5
success, frame = videoCapture.read() #读取视频第一帧
print("第"+str(i)+"帧, 共"+str(totalFrames)+"帧")
while success:
    cv2.waitKey(1)
    #给图片添加水印
    cv2.putText(frame, 'WHEELTEC', (x, y), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
    cv2.imshow("frame",frame)
    videoWriter.write(frame) #给新视频添加新帧

    #水印坐标变化
    if(x>size[0]):step_x=-5
    if(x<0): step_x=5
    if(y>size[1]):step_y=-5
    if(y<0): step_y=5
    x=x+step_x
    y=y+step_y
    success, frame = videoCapture.read() #逐帧读取视频
    i=i+1
    print("第"+str(i)+"帧, 共"+str(totalFrames)+"帧")

print ('Quitted!') #提示程序已停止
cv2.destroyAllWindows() #程序停止前关闭所有窗口
