TS从目录中提取所有指定扩展名文件的方法

这篇文章主要介绍了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从目录中提取所有指定扩展名文件方法的详细内容了,看完之后是否有所收获呢?如果想了解更多相关内容,欢迎来编程之家行业资讯!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


咪咕视频怎么进行投屏?咪咕视频是一款视频播放器,用户们可以在咪咕视频中观看短视频、热门综艺等,那么在咪咕视频该怎么进行投屏呢?下面就给大家分享咪咕视频投屏方法。咪咕视频怎么进行投屏方法
阿里云盘设备登录满了怎么踢人?阿里云盘有同时登陆的人数限制,如果登陆满了,别人就不能登陆了,但是我们可以踢人,下面我们就来看看阿里云盘设备登录满了无法登陆的解决办法。阿里云盘设备登录满了怎么退详细操作
今天小编给大家分享的是关于Express框架定制路由的介绍,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获...
这篇文章主要介绍了SpringBoot实现自动装配的方法,具有一定借鉴价值,需要的朋友可以参考下。下面就和我一起来看看吧。1. 什么是自动装配在传统的Spring框架中...
今天小编给大家分享的是关于C++和OpenMP的介绍,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。
本篇文章和大家了解一下C语言结构体指针具体怎么使用。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。在 C语言中,结构体指针是一种非常有...
今天小编给大家分享的是MongoDB连接本地失败如何解决,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的...
本篇文章和大家了解一下DockerCompose中限制容器的CPU和内存使用的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。正文最近我在...
今天小编给大家分享的是jupyternotebook如何更换环境,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有
今天小编给大家分享的是如何使用R语言实现自动文摘,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦...
今天小编给大家分享的是parseInt()函数异常行为是什么原因,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收...
今天小编给大家分享的是在ASP.NETCoreWebAPI中处理Patch请求的方法,相信很多人都不太了解,为了让大家更加了解,所以给大家总结...
这篇文章主要介绍了TS从目录中提取所有指定扩展名文件的方法,具有一定借鉴价值,需要的朋友可以参考下。下面就和我一起来看看吧。“.ts”是一种高清视频封装
这篇文章主要介绍了Pycharm如何安装第三方库、安装位置以及镜像,具有一定借鉴价值,需要的朋友可以参考下。下面就和我一起来看看吧。前言Pycharm安装第三方库继...
今天小编给大家分享的是Anaconda查看自己目前安装的包的方法,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有
本篇文章和大家了解一下JS的鼠标监听mouseup鼠标抬起失效如何解决。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。一、起因及解决由于很少...
本篇文章和大家了解一下Rust语言中Copy和Clone的用法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。1.CopytraitCopytr...
今天小编给大家分享的是js如何获取今天、昨天、明天的日期,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收...
这篇“axuer怎么调分辨率”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章...
MAC文件已损坏打不开怎么办?在MAC电脑中安装软件的时候会遇到XXX软件已损坏的错误提示,导致软件无法安装,该如何解决呢?下面小编给大家介绍下解决方法。解决方法1、MacOS10.15及以上新系统出现应用提示损坏打不开的解决方法:打开终端(屏幕下方D...