国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

python合并ts視頻(三種方法)

這篇具有很好參考價值的文章主要介紹了python合并ts視頻(三種方法)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言:最近在爬取某個網(wǎng)站的視頻,但是里面的視頻數(shù)據(jù)是以ts文件的形式給出的。一個大的視頻被切分成了很多小的ts視頻,所以,合并這些ts視頻就成為必要的了。我在網(wǎng)上搜到了三種方法,現(xiàn)在整理出來分享給大家,同時方便自己以后作參考。

方法一:用python調(diào)用windows命令行,使用copy命令進(jìn)行合并。

copy命令格式:
copy /b  所有ts文件的父目錄/*.ts  合成后的文件的絕對路徑
舉例:
1,將F:\f\目錄下的所有ts文件合成為一個名為new.ts的文件,并存放在E:\f\下面
copy /b  F:\f\*.ts  E:\f\new.ts
2,將F:\f\目錄下的所有ts文件合成為一個名為new.mp4的文件,并存放在E:\f\下面
copy /b  F:\f\*.ts  E:\f\new.mp4

相關(guān)python代碼:

import os
def merge_ts2():
    os.system('copy /b ' + r'F:\f\*.ts ' + r'E:\f\new.ts')
    print("合并成功")

目前在使用該方法時還沒發(fā)現(xiàn)ts文件數(shù)量限制

該方法的缺陷:

  • 文件夾下的所有ts文件都會被合并
  • 文件夾下的ts文件的命名必須按照字母順序排列, 否則合并文件后視頻片段會產(chǎn)生混亂.(注意:名為‘10.ts’的文件的順序會排在名為'9.ts'文件的前面,也就是說,這里的字母順序是指字符串的順序。如果要用字符數(shù)字來命名ts文件,那么就需要給某些數(shù)字加上前導(dǎo)0)
  • 有些視頻合成之后可能會有卡頓
  • 如果合并時出錯了的話,python編譯器不會報錯

方法二:直接使用python的文件操作

python代碼:

import os
def merge_ts(path):
    file_names = os.listdir(path)#獲取path目錄下所有文件的文件名
    index = 0
#新建一個名為test1.ts的文件,并打算將其余ts文件全部寫入到這個文件中
    f0 = open(path+'test1.ts', 'ab')#可以在這行代碼處通過更改test1的后綴來更改合成后的文件類型

    for one in file_names:
        #先檢查當(dāng)前文件是不是ts文件
        file_suffix = one.split('.')[1]
        if file_suffix != 'ts':#如果當(dāng)前文件不是ts文件,那就跳過
            continue
        index += 1
        print(index, "準(zhǔn)備合并第"+str(index)+"個視頻")
        f1 = open(path+one, "rb")
        f0.write(f1.read())#將當(dāng)前ts文件寫入到test1.ts之中
        f1.close()
    f0.close()

目前在使用該方法時還沒發(fā)現(xiàn)ts文件數(shù)量限制

該方法的缺陷:

  • 合成后的視頻可能會有卡頓
  • .注意各個文件名之間的順序

方法三:使用ffmpeg合并視頻

FFmpeg是集成解碼、編碼、轉(zhuǎn)碼、復(fù)用、解復(fù)用、流化、濾波、播放等完整解決方案的多媒體開源程序,在多媒體領(lǐng)域廣泛使用,可以用它來剪輯、拼接視頻。

下載ffmpeg:

官網(wǎng):

Download FFmpeg

點進(jìn)去后:

python合并ts視頻(三種方法)

?python合并ts視頻(三種方法)

?下滑,找到這個界面并點擊:

python合并ts視頻(三種方法)

?網(wǎng)速可能會比較慢。

解壓路徑可選,我就直接解壓在C盤下面了。

假設(shè)我們下載后的ffmpeg文件名為ffmpeg-2023-03-23-git-30cea1d39b-essentials_build

那么找到它下面的bin文件夾:

C:\ffmpeg-2023-03-23-git-30cea1d39b-essentials_build\bin

配置環(huán)境變量以及判斷是否成功:

將上述路徑添加進(jìn)系統(tǒng)環(huán)境變量path當(dāng)中。

在cmd下輸入ffmpeg

出現(xiàn)該界面即成功

python合并ts視頻(三種方法)?

這一步可以參考:使用 ffmpeg 進(jìn)行視頻(ts)合并_ffmpeg合并視頻_BeefpasteC的博客-CSDN博客

使用ffmpeg合并視頻:

需要先把文件名保存到 文本文本中,而且格式必須一致,不能有中文,格式如下:

file  '文件名'

python合并ts視頻(三種方法)

?這一步其實可以用python的文件操作完成,本文將在后面給出相應(yīng)的python代碼。

接下來就是python調(diào)用命令行操作----使用ffmpeg合并視頻

核心代碼:

#其中ffmpeg_bin_dic代表ffmpeg的bin目錄,比如:
#C:/ffmpeg-2023-03-23-git-30cea1d39b-essentials_build/bin/
#path+'file_list.txt'是剛剛新建的包含所有ts文件的txt文件絕對路徑,比如:
#C:/新建文件夾/file_list.txt
#save_path+ out_file_name代表保存合成后的ts文件的絕對路徑
os.system(ffmpeg_bin_dic+'ffmpeg -f concat -safe 0 -i '+path+'file_list.txt'+' -c '+ ' copy ' +save_path+ out_file_name)

python代碼:

import os
def test(path, save_path):

    file_names = os.listdir(path)
    if 'file_list.txt' in file_names:
        os.remove(path+'file_list.txt')
    out_file_name = 'output.mp4'
    while out_file_name in os.listdir(save_path):
        out_file_name = '新' + out_file_name
    f = open(path+'file_list.txt', 'w+')
    for one in file_names:
        f.write("file '" + one + "'\n")
    f.close()
    print("生成txt文件成功!")
    start = datetime.datetime.now()
    print('開始合成,初始時間為:',datetime.datetime.now())
    ffmpeg_bin_dic = 'C:/237端點/軟件/ffmpeg/ffmpeg-2023-03-23-git-30cea1d39b-essentials_build/bin/'
    os.system(ffmpeg_bin_dic+'ffmpeg -f concat -safe 0 -i '+path+'file_list.txt'+' -c '+ ' copy ' +save_path+ out_file_name)

    print('合成后的當(dāng)前時間為:',datetime.datetime.now())
    print('合成視頻完成!用時:'+str(datetime.datetime.now()-start))

這種方法比起上面兩種方法而言,碰到錯誤時會報錯(方便調(diào)試),而且,不會出現(xiàn)卡頓的現(xiàn)象(這一點做得很好)文章來源地址http://www.zghlxwxcb.cn/news/detail-453964.html

寫在最后:如有錯誤,敬請指正,禮貌交流,感激不盡

到了這里,關(guān)于python合并ts視頻(三種方法)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • GIT合并分支的三種方法

    GIT合并分支的三種方法

    1、目標(biāo):將dev分支合并到master分支 1.1、首先切換到master分支上 1.2、如果是多人開發(fā)的話 需要把遠(yuǎn)程master上的代碼pull下來 1.3、然后我們把dev分支的代碼合并到master上 1.4、然后查看狀態(tài)及執(zhí)行提交命令 比如 feature 分支上的commit 82ecb31非常重要,它含有一個bug的修改,或其他人

    2024年02月12日
    瀏覽(17)
  • 怎么合并多個視頻?簡單視頻合并方法分享

    怎么合并多個視頻?簡單視頻合并方法分享

    合并多個視頻可以將它們組合成一個更長的視頻,這對于需要播放多個短視頻的情況非常有用。此外,合并視頻還可以使視頻編輯過程更加高效,因為不必將多個獨立的視頻文件分別處理。最后,合并視頻可以減少文件數(shù)量,從而使整個視頻集合更加整潔和易于管理。下面給

    2024年02月14日
    瀏覽(19)
  • 如何把幾個視頻合并在一起?視頻合并方法分享

    如何把幾個視頻合并在一起?視頻合并方法分享

    當(dāng)我們需要制作一個比較長的視頻時,將多個視頻進(jìn)行合并可以使得整個過程更加高效。此外,合并視頻還可以避免出現(xiàn)“剪輯斷層”的情況,使得視頻內(nèi)容更加連貫,更加容易被觀眾理解和接受。再有,合并視頻還可以減少視頻文件的數(shù)量,從而更方便管理。那么怎么合并

    2024年02月14日
    瀏覽(21)
  • python爬取視頻

    python爬取視頻

    適合新手小白揣摩; 環(huán)境準(zhǔn)備: 設(shè)備 軟件版本 windows 環(huán)境(可上網(wǎng)) pycharm 3 本地目錄截圖如下: 詳細(xì)視頻鏈接地址 爬取網(wǎng)頁詳細(xì)地址

    2024年02月14日
    瀏覽(9)
  • Python爬蟲:爬取各種視頻

    Python爬蟲:爬取各種視頻

    一、先看效果: 包括短視頻 中視頻 長視頻等。 短視頻(2到3分鐘時間): 中視頻(10分鐘左右時間): 長視頻(20分鐘左右時間): 二、爬取規(guī)則: 2.1:短視頻爬?。?爬取該網(wǎng)頁視頻: 方法一:F12鍵?找到?network?然后media,數(shù)據(jù)包中的url,復(fù)制粘貼看是否能打開該視頻,如果能打

    2024年04月13日
    瀏覽(19)
  • python 爬取某站視頻

    python 爬取某站視頻

    也是感覺好久都沒有寫博客了,主要是因為學(xué)業(yè)繁忙(其實是想多擺爛一會兒。。。) 距離暑假還有一個月,各科老師也開始布置相關(guān)的期末考試內(nèi)容了。。。。。。 最近英語老師給我們留了一個期末作業(yè)(大學(xué)牲又要忙起來了),內(nèi)容是拍攝一個短視頻,既然是視頻那素

    2024年02月04日
    瀏覽(22)
  • python怎么爬取視頻

    在 Python 中爬取視頻的方法有很多種,具體的步驟如下: 找到要爬取的視頻的網(wǎng)址。 在 Python 中使用網(wǎng)絡(luò)爬蟲工具(如 requests 庫)發(fā)送 HTTP 請求,獲取視頻的網(wǎng)頁源代碼。 使用正則表達(dá)式或者網(wǎng)頁解析工具(如 BeautifulSoup)對網(wǎng)頁源代碼進(jìn)行解析,找到視頻文件的 URL 地址。 使用

    2024年02月16日
    瀏覽(26)
  • python爬取bilibili,下載視頻

    python爬取bilibili,下載視頻

    python下載bilibili視頻合集 2.1vsCode 2.2Anaconda version: conda 22.9.0 2.3代碼 鏈接:https://pan.baidu.com/s/1WuXTso_iltLlnrLffi1kYQ?pwd=1234 3.1 下載單個視頻 感覺現(xiàn)在下載的清晰度不夠,可以在找找,給這塊替換了就行 代碼 3.2 下載選集視頻 選集視頻的播放鏈接很好找,就是后面的p=幾啥的,拼一

    2024年02月10日
    瀏覽(15)
  • 使用python爬蟲爬取bilibili視頻

    可以使用 Python 爬蟲框架如 Scrapy 來爬取 Bilibili 的視頻。首先需要了解 Bilibili 網(wǎng)站的構(gòu)造,包括數(shù)據(jù)是如何呈現(xiàn)的,然后構(gòu)建請求來獲取所需的數(shù)據(jù)。同時需要考慮反爬蟲措施,可能需要使用代理 IP 和 User-Agent 等方法來繞過反爬蟲機(jī)制。 這里提供一個簡單的爬取視頻標(biāo)題的

    2024年02月08日
    瀏覽(16)
  • python批量爬取某站視頻

    python批量爬取某站視頻

    前言: 本項目是批量下載B站如下圖示例的視頻: (家里的小孩想看動畫片,就下載到U盤上在電視上給他們放。。。) 在這個項目中,涉及到的模塊有以下幾個: 1.shutil: Python 標(biāo)準(zhǔn)庫中的一個模塊,用于文件操作,包括復(fù)制、移動、刪除文件等。在這個項目中,主要用于創(chuàng)

    2024年02月20日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包