TMD,嘗試無數(shù)種方法殺死ffmpeg進(jìn)程,但是發(fā)現(xiàn)結(jié)束后錄制還在繼續(xù)媒咳,把 我的騰訊云服務(wù)器全部塞滿了粹排,話不多說种远,主要參考下面這位大佬的代碼:https://segmentfault.com/a/1190000015409826
核心思想是在ffmpeg進(jìn)程中按下“q”,才能夠正常結(jié)束錄制顽耳,代碼如下:
import time
import os
import datetime
import subprocess
flv_url = "視頻地址"
def live_video():
file_path = "D/zhibo"
while True:
file_name = datetime.datetime.now().strftime('%Y-%m-%d-%H-%M-%S.mp4')
live_video = subprocess.Popen('ffmpeg -user-agent "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36" -i {} -c copy {}'.format('"%s"' % flv_url, os.path.join(file_path,file_name)),shell=True,stdin=subprocess.PIPE,stdout=subprocess.PIPE)
time.sleep(10)
live_video.stdin.write('q'.encode("GBK"))
live_video.communicate()
live_video()