网页视频下载(TS流下载合成)

article/2025/10/9 11:11:22

前言

最近《流浪地球》比较火,想找资源下载看看,无奈只找到了网址 http://m.tlyy.tv/【现已变成不良网站】 ,但是我的chrome插件也嗅探不到网页上的视频。。于是乎,右击页面,inspect 走起…

步骤

首先发现
在这里插入图片描述
m3u8文件映入眼帘 /偷笑,m3u8文件是什么文件呢,copy address and wget 下来看看:
文件 playlist.m3u8 内容如下,可见网页里的视频是根据这个 playlist 组织的 ts 流一段一段组成视频播放的。

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-ALLOW-CACHE:YES
#EXT-X-TARGETDURATION:14
#EXTINF:5.966667,
out000.ts
#EXTINF:4.300000,
out001.ts
#EXTINF:5.166667,
out002.ts
#EXTINF:5.700000,
out003.ts
#EXTINF:4.433333,
out004.ts
#EXTINF:5.166667,
out005.ts
#EXTINF:4.833333,
out006.ts
#EXTINF:5.500000,
out007.ts
#EXTINF:4.900000,
out008.ts
.......
#EXTINF:5.733333,
out1444.ts
#EXTINF:0.266667,
out1445.ts
#EXT-X-ENDLIST

而且ts流命名规范有规律,易下载,一开始打算来个shell脚本用 wget 解决

#!/bin/bash
str="out"for i in `seq 0 1000`
doa=$((1000+$i))str1=$str${a:1:3}\.ts # 生成 string "out000.ts"~"out999.ts"echo $str1wget https\:\/\/doubanzyv4\.tyswmp\.com\:888\/2019\/02\/07\/06SfTJsUSa6nKqG9\/$str1 -P ./ts_list/
done

但是下着下着发现老是一直 connecting,就卡住了(可能是网络问题),后来就发现chrome 下载这种文件特别快,但是要注意控制延迟,因为 chrome 下载序列数目有限,超出就会下载错误,shell 脚本如下:

#!/bin/bash
str="out"for i in `seq 0 999`
doa=$((1000+$i))str1=$str${a:1:3}\.ts # 生成 string "out000.ts"~"out999.ts"echo $str1google-chrome https\:\/\/doubanzyv4\.tyswmp\.com\:888\/2019\/02\/07\/hLShLmXEtVqiYix9\/$str1sleep 1s	# 延迟1s,视网速而定
done

下载完所有 ts 流文件之后,开始合成,祭出大杀器:ffmpeg,利用 mpeg concat 分离器,先在 ts 文件目录下创建一个文本文件 filelist.txt,即 ts 流文件的顺序列表:

file ‘out000.ts’
file ‘out001.ts’
file ‘out002.ts’

file ‘out1349.ts’
当然要借助程序( C )实现啦:

#include <stdio.h>int main(void)
{FILE *fp = NULL;fp = fopen("./ts_list/filelist.txt", "w+");for (int i = 0; i < 1350; i++){fprintf(fp, "file \'out");fprintf(fp, "%03d", i);fputs(".ts\'\n", fp);}fclose(fp);
}

然后打开在文件目录打开 terminal ,利用 ffmpeg 合成:

ffmpeg -f concat -i filelist.txt -c copy output.mkv

大概一分钟就好了(如果出错,可尝试其他的输出格式:flv,mp4, wmv,avi),目录下便有了 output.mkv, enjoy it!

附:ffmpeg实用命令

ffmpeg -i input.mp4 output.mp3 # 从视频中抽取音频
ffmpeg -i input.mp4 -ss 00:01:20 -c copy -t 10 output.mp4 #从00:01:20开始截取10s钟视频输出
ffmpeg -i input.mp4 -c:v copy -an input-no-audio.mp4 #去除视频中音频
ffmpeg -i input-no-audio.mp4 -i input.mp3 -c copy output.mp4 #合并音视频

参考资料

  • https://www.jianshu.com/p/a9bccc12229b
  • https://zhidao.baidu.com/question/1888515562979217228.html

http://chatgpt.dhexx.cn/article/13OwrUVn.shtml

相关文章

TS流分析

一 从TS流开始 数字电视机顶盒接收到的是一段段的码流&#xff0c;我们称之为TS&#xff08;Transport Stream&#xff0c;传输流&#xff09;&#xff0c;每个TS流都携带一些信息&#xff0c;如Video、Audio以及我们需要学习的PAT、PMT等信息。因此&#xff0c;我们首先需要了…

ts流中的时间概念: pcr,pts,dts 实例解说

ts流中的时间概念: pcr,pts,dts 实例解说 ---------------------------------------- PCR OPCR ---------------------------------------- ts流包头4字节,第5字节为适配域长度,若不为0&#xff0c;第六字节为适配域标志. 适配域有5个标志&#xff0c;这里先说两个,节目参考时钟…

TS流解析【PCR】自己的总结

http://www.cnblogs.com/ztteng/articles/3166025.html http://blog.csdn.net/liuhongxiangm/article/details/8981032 http://blog.sina.com.cn/s/blog_6b94d5680101ton7.html http://blog.csdn.net/jl2011/article/details/47044647 二.TS流包含的内容 一段TS流&#xf…

ES流、PES流、PS流和TS流介绍

流媒体系统结构 整个传输过程为&#xff1a;音视频数据分别通过图像声音编码器打包成ES&#xff08;elemental stream 基本数据流&#xff09;&#xff0c;在通过PES打包器打包成PES&#xff08;packet elemental stream分组的基本数据流&#xff09;&#xff0c;之后通过PS复用…

TS流基本知识【HI3798 AVPLAY播放TS流】

目录 一、TS流相关知识 1.1 TS流、PS流、PES流和ES流都是什么&#xff1f; 1.2 TS流是如何产生的&#xff1f; 1.3TS流的格式 二、从TS流到PAT、PMT 2.1 PAT表&#xff08;Program Association Table&#xff0c;节目关联表&#xff09; 2.1.1PAT表的描述&#xff08;表…

TS流

TS流的健壮性很好&#xff0c;所以适合用在无线视频传输。但是&#xff0c;TS流一帧数据的格式较为复杂&#xff0c;所以需要有优秀的分析工具。 比如&#xff0c;EasyICE。&#xff08;此软件仅供非商业使用&#xff0c;而且每次开打都需要联网验证是否是最新版本&#xff09…

ts流格式

1.ts简介 ts流最早应用于数字电视领域&#xff0c;其格式非常复杂包含的配置信息表多大十几个&#xff0c;视频格式主要是mpeg2。苹果公司发明的http live stream流媒体是基于ts文件的&#xff0c;不过他大大简化了传统的ts流&#xff0c;只需要2个最基本的配置表PAT和PMT&…

ts流格式详解

ts介绍 ts文件为传输流文件&#xff0c;视频编码主要格式h264/mpeg4&#xff0c;音频为acc/MP3。 ts文件分为三层&#xff1a;ts层Transport Stream、pes层 Packet Elemental Stream、es层 Elementary Stream. es层就是音视频数据&#xff0c;pes层是在音视频数据上加了时间戳…

MPEG-2 TS流结构浅析

一、概述 MPEG-2是MPEG&#xff08;Moving Picture Experts Group&#xff0c;运动图像专家组&#xff09;组织制定的视频和音频有损压缩标准之一&#xff0c;它的正式名称为“基于数字存储媒体运动图像和语音的压缩标准”。MPEG-2标准是在1994年11月为数字电视而提出来…

RTSP中TS流结构分析

RTSP中TS流结构分析 UDP数据包整体结构RTP Header结构TS Header结构PAT结构PMT结构PES Header结构ES层Wireshark抓取TS包 UDP数据包整体结构 在使用UDP传输TS流时&#xff0c;整个数据包结构如下&#xff1a; RTP Header结构 RTP结构如下图&#xff1a; 各字段的含义如下&…

TS流理论分析

TS&#xff08;Transport Stream&#xff09;流由TS包组成&#xff0c;而每个TS包的⻓度&#xff1a;固定为188 Bytes或204 Bytes&#xff0c;204 Bytes⻓度是在188Bytes后⾯增加了16 Bytes的CRC校验数据。 ts 层的内容是通过 PID 值来标识的&#xff0c;主要内容包括&#xff…

TS流详细解析

1、PAT表的TS包 0x47&#xff1a;包头识别符 Sync_code 0x40 0x00&#xff1a;0100 0000 0000 0000 0b&#xff1a;transport_error_Indicator 为1的包丢弃 1b&#xff1a;payload_unit_start_indicator是否忽略头部后的第一个字节 0b&#xff1a;transport_priority 传输优先级…

ts 流基础(白话讲解).

---------------------------------------- author: hjjdebug date: 2022年 09月 27日 星期二 ---------------------------------------- ts 流就是188个字节构成的流数据. 先来点最简单的. ts 头部&#xff0c;4字节 ts 流是47开头的,以188字节为单位的打包流&#xff0…

什么是TS流?

前言 什么是TS流&#xff1f; 百度说&#xff1a;transport stream&#xff08;传送流&#xff09;简称TS流&#xff0c;是根据ITU-T Rec.H.222.0|ISO/IEC 13818-2 和ISO/IEC 13818-3协议定义的一种数据流&#xff0c;防止有可能发生严重错误时进行一道或多道程序编码数据的传…

hls之m3u8、ts流格式详解

2019独角兽企业重金招聘Python工程师标准>>> HLS&#xff0c;Http Live Streaming 是由Apple公司定义的用于实时流传输的协议&#xff0c;HLS基于HTTP协议实现&#xff0c;传输内容包括两部分&#xff0c;一是M3U8描述文件&#xff0c;二是TS媒体文件。 1、M3U8文件…

TS流概述(ES流-基本流,PES流-打包基本码流,PS流-节目流,TS流-传输流)

一、TS流概述 ES流(Elementary Stream&#xff0c;基本流)&#xff1a;数字电视各组成部分编码后所形成的直接表示基本元素内容的流&#xff0c;包含视频、音频或数据的连续码流。 PES流&#xff08;Paketized Elementary Stream&#xff0c;打包基本码流):是将基本的码流ES流…

网络流媒体(四)———TS流

1. 数字视频压缩MPEG-2标准 MPEG-2是MPEG&#xff08;Moving Picture Experts Group&#xff0c;运动图像专家组&#xff09;组织制定的视频和音频有损压缩标准之一&#xff0c;它的正式名称为“基于数字存储媒体运动图像和语音的压缩标准”。与MPEG-1标准相比&#xff0c;MPEG…

Segmentation笔记4-Boundary-Aware Network for Fast and High-Accuracy Portrait Segmentation

创新点 1.提出了BANet 2.提出了refine loss 总结 图片引起不适。。。 网络流程如下&#xff1a; 图片经过语义分支得到1/4大小的特征图。将其上采样到原图大小&#xff0c;c 1作为边界特征挖掘分支的边界注意力图。注意力图由BA loss监督。将原图与注意力图拼接&#xff…

diffusion medical image segmentation

1、Diffusion Models for Implicit Image Segmentation Ensembles code&#xff1a;https://github.com/JuliaWolleb/Diffusion-based-Segmentation 2、MedSegDiff: Medical Image Segmentation with Diffusion Probabilistic Model code: https://github.com/WuJunde/MedS…

weakly supervised semantic segmentation

Weakly Supervised Semantic Segmentation by Pixel-to-Prototype Contrast CVPR2022 北京大学 Though image-level weakly supervised semantic segmentation (WSSS) has achieved great progress with Class Activation Maps (CAMs) as the cornerstone, the large supervis…