0%

利用m3u8文件机制添加片头

利用m3u8文件机制添加片头:

def set_header(m3u8_file_path, header_path):
"""
:param m3u8_file_path: m3u8文件所在绝对路径
:param header_path: 视频片头播放绝对路径
:return: False 片头已经添加, True 片头添加成功
"""
with open(m3u8_file_path, "r", encoding='utf-8') as f:
all_lines = f.readlines()
for i, item in enumerate(all_lines):
if "#EXTINF:" in item:
vernier = i
break
if header_path in all_lines[vernier+1]:
print(f"已经添加了片头,请勿重复添加")
return False
print(vernier)
all_lines.insert(vernier, "#EXTINF:5,\n") # 此处的5是时长
all_lines.insert(vernier + 1, f"{header_path}\n")
with open(m3u8_file_path, "w", encoding='utf-8') as w_f:
for k_w in all_lines:
w_f.write(f"{k_w}")
return True
if __name__ == '__main__':
set_header('test.m3u8', "http://xxx.xxx.com/wuxing.ts")