您的位置:首頁技術文章
文章詳情頁

TS如何從目錄中提取所有指定擴展名的文件

瀏覽:48日期:2022-06-09 16:17:53
目錄
  • TS如何從目錄中提取所有指定擴展名的文件

“.ts”是一種高清視頻封裝格式文件,全稱為MPEG2-TS,TS表示TransportStream;MPEG2-TS格式的特點就是從視頻流的任一片段開始都是可以獨立解碼的。ts格式數據面向的傳輸介質是地面和衛星等可靠性較低的傳輸介質,主要用于數字電視廣播系統。

.ts是什么文件

ts是日本高清攝像機拍攝下進行的封裝格式,全稱為MPEG2-TS。ts即"Transport Stream"的縮寫。MPEG2-TS格式的特點就是從視頻流的任一片段開始都是可以獨立解碼的。

MPEG2-TS 傳輸流(MPEG-2 Transport Stream;又稱MPEG-TS、MTS、TS)是一種傳輸和存儲包含視頻、音頻與通信協議各種數據的標準格式,用于數字電視廣播系統,如DVB、ATSC、ISDB、IPTV等等。

MPEG2-TS定義于MPEG-2第一部分:系統(即ISO/IEC標準13818-1或ITU-TRec. H.222.0)。

MPEG2-TS面向的傳輸介質是地面和衛星等可靠性較低的傳輸介質,這一點與面向較可靠介質如DVD等的MPEG PS不同。

TS如何從目錄中提取所有指定擴展名的文件

import path from "path"
import fs from "fs"
/**
 * 從指定目錄中提取指定后綴名的所有文件
 * @param srcPath string 要提取文件的目錄路徑,相對或絕對路徑都可
 * @param destPath string 提取后的文件存放的目錄路徑,相對或絕對路徑都可
 * @param exts string[] 要提取的文件擴展名數組,每個擴展名需以點開頭
 */
function extractAllFiles(srcPath: string, destPath: string, exts: string[]) {
  // 如果源目錄不存在,直接結束程序
  if (!fs.existsSync(srcPath)) {
    return console.log(`源目錄不存在,請核對修改!`)
  }
  // 如果存放目錄不存在,則創建
  !fs.existsSync(destPath) && fs.mkdirSync(destPath)
  // 獲取src和dest的絕對路徑
  const realSrc = fs.realpathSync(srcPath)
  const realDest = fs.realpathSync(destPath)
  // 遍歷src,判斷文件類型
  fs.readdirSync(realSrc).forEach(filename => {
    // 拼接文件的絕對路徑
    const realFile = path.resolve(realSrc, filename)
    // 如果是目錄,遞歸提取
    if (fs.statSync(realFile).isDirectory()) {
      extractAllFiles(realFile, realDest, exts)
    } else {
      // 如果是文件,則判斷其擴展名是否在給定的擴展名數組中,在則將該文件復制到dest中
      if (exts.includes(path.extname(filename))) {
fs.copyFileSync(realFile, path.resolve(realDest, filename))
      }
    }
  })
}

到此這篇關于TS如何從目錄中提取所有指定擴展名的文件的文章就介紹到這了,更多相關TS提取所有指定擴展名的文件內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: JavaScript
国产综合久久一区二区三区