视频m3u8文件转ts视频,vb.net源码(各小段视频下载合并)
发布时间:2020-12-17 07:43:04 所属栏目:百科 来源:网络整理
导读:Imports System.IOImports System.ThreadingImports System.Text.RegularExpressionsPublic Class Form1 Dim mythread As Thread Dim strWebFile() As String Dim Flag As String Private Sub btnChange_Click(sender As Object,e As EventArgs) Handles btn
Imports System.IO Imports System.Threading Imports System.Text.RegularExpressions Public Class Form1 Dim mythread As Thread Dim strWebFile() As String Dim Flag As String Private Sub btnChange_Click(sender As Object,e As EventArgs) Handles btnChange.Click Dim i As Integer,j As Integer,myfile As String,strAllfile() As String lblState.Text = "检测目录..." Dim fi As New DirectoryInfo("D:Open21") '创建两个目录 If Not fi.Exists Then fi.Create() End If fi = Nothing fi = New DirectoryInfo("D:Open211") If Not fi.Exists Then fi.Create() End If dlgOpen.Multiselect = True '输入m3u8原始文件 dlgOpen.Filter = "m3u8 files (*.m3u8)|*.m3u8" If dlgOpen.ShowDialog = Windows.Forms.DialogResult.OK Then strAllFile = dlgOpen.FileNames.ToArray Else Exit Sub End If lblState.Text = "逐个文件分析...." For i = 0 To strAllfile.GetUpperBound(0) Dim fso As New StreamReader(strAllfile(i)) '逐个m3u8文件读取 Dim strTemp As String = fso.ReadToEnd lblState.Text = "提取服务器上各小TS地址" Dim reg As New Regex("http:[^,]*.ts") '提取服务器上各小TS地址 For j = 1 To reg.Matches(strTemp).Count ReDim Preserve strWebFile(j - 1) strWebFile(j - 1) = reg.Matches(strTemp)(j - 1).Value Next For j = 0 To strWebFile.GetUpperBound(0) '下载各小Ts文件 Flag = "down" lblState.Text = "下载第" & i + 1 & "个文件中第" & j + 1 & "号ts视频文件..." mythread = New Thread(AddressOf DownFile) mythread.Start(j) Do While Flag = "down" Application.DoEvents() Loop Next lblState.Text = "第" & i & "个文件全部小ts下载完成!" Dim file As New FileInfo(strAllfile(i)) myfile = "D:Open21" & Replace(file.Name,".m3u8","") & ".ts" '合并 j = Shell("cmd /c copy /b D:Open211*.ts """ & myfile & """",vbNormalFocus) ',vbHide) System.Threading.Thread.Sleep(60000) '等待6秒,上面基本合并完成 Kill("D:Open211*.ts") '删除 Next End Sub Private Sub DownFile(ByVal n As Integer) My.Computer.Network.DownloadFile(strWebFile(n),"D:Open211" & n + 1 & ".ts") Flag = "stop" mythread.Abort() End Sub End Class (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |