国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python實現m3u8格式轉換為mp4視頻格式

2020-02-22 23:21:07
字體:
來源:轉載
供稿:網友

開發動機:最近用手機QQ瀏覽器下載了一些視頻,視頻越來越多,占用了手機內存,于是想把下載的視頻傳到電腦上保存,可后來發現這些視頻都是m3u8格式的,且這個格式的視頻都切成了碎片,存在電腦里不方便查看,于是想把它轉換為其他可以直接打開播放的完整視頻,到網上找了一些工具,都不怎么好用,后來發現一個手機端的“緩沖合并工具”,倒是可以用,但是合并的視頻順序是亂的,碎片的視頻順序還需要用戶手動調整,感覺太耽誤時間了,于是自己打算寫一個轉換工具。

直接上代碼:(程序的文件名為:convert_m3u8.py)   

# -*- coding:utf-8 -*- import sys import os from glob import glob #獲取需要轉換的路徑 def get_user_path(argv_dir):   if os.path.isdir(argv_dir):     return argv_dir   elif os.path.isabs(argv_dir):     return argv_dir   else:     return False #對轉換的TS文件進行排序     def get_sorted_ts(user_path):   ts_list = glob(os.path.join(user_path,'*.ts'))   #print(ts_list)   boxer = []   for ts in ts_list:     if os.path.exists(ts):       #print(os.path.splitext(os.path.basename(ts)))       file,_ = os.path.splitext(os.path.basename(ts))       boxer.append(int(file))   boxer.sort()   #print(boxer)   return boxer #文件合并   def convert_m3u8(boxer,o_file_name):   #cmd_arg = str(ts0)+"+"+str(ts1)+" "+o_file_name   tmp = []   for ts in boxer:     tmp.append(str(ts)+'.ts')   cmd_str = '+'.join(tmp)   exec_str = "copy /b "+cmd_str+' '+o_file_name   #print("copy /b "+cmd_str+' '+o_file_name)   os.system(exec_str)           if __name__=='__main__':   #print(sys.argv[1:])   argv_len = len(sys.argv)   if argv_len == 3:     o_dir,o_file_name =sys.argv[1:]     #print(o_dir+":"+o_file_name)     user_path = get_user_path(o_dir)     #print(user_path)     if not user_path:       print("您輸入的路徑不正確,:-(");     else:       if os.path.exists(os.path.join(user_path,o_file_name)):         print('目標文件已存在,程序停止運行。')         exit(0)       os.chdir(user_path)       #convert_m3u8('2.ts','4.ts',o_file_name)       boxer = get_sorted_ts(user_path)       convert_m3u8(boxer,o_file_name)       #print(os.getcwd())   else:     print("參數個數非法");    

注:代碼不多,原理也很簡單,就是把各個碎片視頻按照順序合并為一個視頻文件。
使用方法如下:

python  convert_m3u8.py    m3u8視頻的目錄   要轉換后文件的名字

其中第一個參數為m3u8視頻的目錄(m3u8的碎片視頻在手機里是隱藏的,需要將隱藏文件顯示出來才可以將文件導出到電腦里,在安卓手機里將隱藏文件夾前面的.重命名去掉就可以了),第二個參數為要轉換后文件的名字。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 顺昌县| 兰溪市| 新巴尔虎右旗| 长沙县| 都匀市| 图木舒克市| 柏乡县| 邹平县| 克什克腾旗| 镇康县| 广宗县| 丰宁| 贵港市| 郎溪县| 巴南区| 萨嘎县| 新巴尔虎右旗| 景德镇市| 大宁县| 原平市| 桂平市| 家居| 乐昌市| 繁峙县| 柘城县| 苗栗县| 昌乐县| 壤塘县| 娄烦县| 邹城市| 秦皇岛市| 河池市| 五华县| 旌德县| 镇沅| 靖西县| 凉城县| 三门县| 济南市| 义马市| 临湘市|