从视频流下载TS文件

Nic*_*its 38 video ffmpeg download stream package

大多数网站上的视频都使用渐进式下载,这意味着视频会下载到我的计算机上,并且易于跟踪.有很多扩展可以做到这一点,即使在开发工具中也很容易实现.

在某些网站上,视频会流式传输.这意味着我们不只是下载1个文件,我们下载了很多小包.在开发工具中,可以跟踪这些包.我感兴趣的网站是:http://www.rtlxl.nl/# !/ goede-tijden-slechte-tijden-10821/ c8e2bff7-5a5c-45cb-be2b-4b3b3e866ffb.

- 包的扩展名为.TS.

- 可以通过复制请求的URL来保存包

- 我无法播放这些文件.

我一定做错了什么,或者我错过了什么.我想知道我做错了什么.我想为个人使用创建一个chrome扩展,它可以捕获所有包的URL.当我有所有的网址,我想把它们传递给php脚本,下载它们并使用ffmpeg将它们粘贴到mp4文件中.

请帮我拿到包裹.

dre*_*-hh 24

更新:

Stream Video Dowloader Chrome扩展程序允许无缝下载m3u8流.安装并按下播放视频,它将识别流.

除了@aalhanane和@Micheal Espinola Jr

由于m3u8x仅适用于Windows.一旦确定了m3u8网址,您还可以使用Jdownloader2或VLC Media Player下载并连接流.

Jdownloader2:只需在Jdownloader打开时复制m3u8网址即可.它将识别Linkgrabber选项卡中的流.

VLC 3:

打开网络 - >粘贴m3u8 url - >选中标记Streamoutput - >选择设置.选择输出文件,容器,视频和音频编码.(例如output.mp4,container:mpeg4,video:h264,audio:mp4a)Start Stream.它不会播放视频,而是对其进行编码,通过移动视频播放进度条来显示编码进度.

  • 请发布网站。如果您必须登录才能观看,该网站可以采取额外措施,仅向登录用户保护内容。那么上面的方法就不起作用了。此外,还有像 Widevine 这样的 DRM 措施,可确保只有您的浏览器获得正确的解密密钥,而不是任何其他程序。在这种情况下,唯一的方法是屏幕和音频输出捕获 (2认同)

aal*_*ane 15

--->打开Firefox

--->打开视频页面

--->播放视频

单击--->打开菜单

单击--->打开Web开发人员工具

单击--->开发人员工具栏

单击--->网络

--->转到过滤网址--->写"M3u8" - >查找"m3u8"

--->复制网址".m3u8"

========================

现在下载软件"m3u8x"----> https://tajaribsoft-en.blogspot.com/2016/06/m3u8x.html#downloadx12

--->打开软件"m3u8x"

--->粘贴网址"m3u8"

--->选择选项"One ... One"

--->单击"下载"

--->开始下载

========================

图像"打开菜单"===>

一只忙碌的猫

图像"开发人员工具栏"===>

一只忙碌的猫

图像"m3u8x"===>

在此输入图像描述

在此输入图像描述

  • 如果您只看到 .ts 文件,则需要刷新页面以获取 .m3u8 链接,该链接应该是第一个加载的 url (3认同)
  • 网络标签中没有`.m3u8`文件,只有`.ts`文件。 (2认同)

Iva*_*anM 14

就像这两个命令一样简单:

wget https://example.com/videos/tschunks_{0..10}.ts

猫 tschunks_{0..10}.ts > video.mp4

*-其中“https://example.com/videos/tschunks_{0..10}”-部分可以在m3u8文件中找到


小智 10

您需要下载所有传输流(.ts)文件,并将它们连接成一个mpeg进行播放.像这样的传输流具有关联的播放列表文件(.m3u8),列出了您需要下载和连接的所有.ts文件.如果可用,可能会有一个辅助.m3u8播放列表,它将单独列出字幕蒸汽文件(.vtt).


din*_*ina 10

使用这篇文章

在下面的脚本中插入 LINK

#!/bin/bash

# insert here urls
LINK=(

'http://vid.com/vod/mp4:vod/PRV/Yg0WGN_6.mp4/media_b180000' # replace this with your url 

)

mkdir my-videos
cd mkdir my-videos

CNT=0

for URL in ${LINK[@]}
do
  # create folder for streaming media
  CNT=$((CNT + 1))
  mkdir $CNT
  cd $CNT

  (

   DIR="${URL##*/}"

   # download all videos
   wget $URL'_'{0..1200}.ts

   # link videos
   echo $DIR'_'{0..1200}.ts | tr " " "\n" > tslist
   while read line; do cat $line >> $CNT.mp4; done < tslist

   rm -rf media* tslist
   ) &
   cd ..

done

wait
Run Code Online (Sandbox Code Playgroud)

  • 非常好。如果我像这样连接,结果对我的视频来说不是很好。当我用 VLC 观看时,在路口有非常烦人的视觉伪影。我用 ffmpeg“concat 协议”得到的最好结果。它也不是完美的,因为 VLC 在大步向前和向后移动时遇到了一些麻烦。 (2认同)

vr_*_*ver 9

虽然这不应该被问到 SO 并且首先通过审查处理,但我不知道......但无论如何我都会给出我的答案。

在基本上探索了此处提供的所有选项后,结果证明最简单的往往是最好的。

首先从以下地址下载ffmpeg:https : //evermeet.cx/ffmpeg/

接下来,在获得 .m3u8 播放列表文件(很可能来自网页源或网络流量)后,运行以下命令:

ffmpeg -i "http://host/folder/file.m3u8" -bsf:a aac_adtstoasc -vcodec copy -c copy -crf 50 file.mp4
Run Code Online (Sandbox Code Playgroud)

我尝试从本地保存的 m4u8 文件中运行它,但没有奏效,因为 ffmpeg 下载过程会下载与 URL 相关的块,因此请确保使用网站 URL。


小智 9

  • 下载 VLC 播放器
  • 媒体
  • 转换/保存
  • 网络(选项卡)
  • 输入 [播放列表].m3u8 的 URL
  • 按照剩余的向导步骤设置流目标(文件)
  • 设置适当的转码配置文件(在此回答时为 MP4)
  • 看视频


Top*_*Pug 8

许多网站将其视频打包为多个传输流文件 (.ts)。如果您想输出完整长度的视频,您需要下载所有 .ts 文件片段并组装它们。使用 FFmpeg 命令行工具可以轻松完成组装。

如果有人正在寻找一种从视频流下载 TS 文件的 Java 方法,这里有一个很好的实用程序示例和文章,其中还详细介绍了 TS 和 M3U8 文件的工作原理 >> https://jet-cabral.medium.com/java -ts-视频下载器-a0fcf23ab84a

下载所有 .ts 文件后,用于组装/连接视频的 ffmpeg 命令如下所示:

ffmpeg -i "concat:C:\users\your-name\file_0.ts|C:\users\your-name\file_1.ts|C:\users\your-name\file_2.ts|C:\users\your-name\file_3.ts
Run Code Online (Sandbox Code Playgroud)

如果您已经知道包含要下载的 .ts 文件的 .m3u8 文件的 URL。然后以下命令下载所有 .ts 文件并输出单个 .mp4 文件

ffmpeg -i "http://www.some-website.com/video/someM3U8_file.m3u8" -c copy -bsf:a aac_adtstoasc "full_video.mp4"
Run Code Online (Sandbox Code Playgroud)


Pet*_*eng 7

macOS上的简单youtube-dl示例(在命令行终端中;也支持Windows):

$ youtube-dl -F https://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8
[generic] f08e80da-bf1d-4e3d-8899-f0f6155f6efa: Requesting header
[generic] f08e80da-bf1d-4e3d-8899-f0f6155f6efa: Downloading m3u8 information
[info] Available formats for f08e80da-bf1d-4e3d-8899-f0f6155f6efa:
format code           extension  resolution note
audio-English_stereo  mp4        audio only [en] 
628                   mp4        320x180     628k , avc1.42c00d, video only
928                   mp4        480x270     928k , avc1.42c00d, video only
1728                  mp4        640x360    1728k , avc1.42c00d, video only
2528                  mp4        960x540    2528k , avc1.42c00d, video only
4928                  mp4        1280x720   4928k , avc1.42c00d, video only
9728                  mp4        1920x1080  9728k , avc1.42c00d, video only (best)

$ youtube-dl --format 628 https://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8
...
frame= 5257 fps=193 q=-1.0 Lsize=    6746kB time=00:03:30.16 bitrate= 263.0kbits/s speed=7.73x    
video:6679kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.998669%
[ffmpeg] Downloaded 6907810 bytes
[download] 100% of 6.59MiB in 00:29

$ open f08e80da-bf1d-4e3d-8899-f0f6155f6efa-f08e80da-bf1d-4e3d-8899-f0f6155f6efa.mp4
Run Code Online (Sandbox Code Playgroud)

启动流视频时,使用浏览器的“开发人员工具”>“网络”获取m3u8(HLS清单)URL。

  • 为我工作。我还必须安装 ffmpeg。由于 linux debian 用户必须执行“apt-get install ffmpeg”,只是一个说明。在第二个命令中,paramenter--format 的值,(628) 表示分辨率,应从前面的列表中选择 (2认同)
  • @frank-fu 只需省略“格式”参数,youtube-dl 就会自动选择“最佳”,即 `youtube-dl https://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d- 4e3d-8899-f0f6155f6efa.m3u8` (2认同)

Vad*_*zim 5

我需要从电子学习门户网站下载HLS视频和音频流,其中包含具有application/mp2tMIME内容类型的受会话保护的内容。

手动将所有身份验证标头复制到下载脚本中会很麻烦。

但是借助Video DownloadHelper Firefox扩展及其Companion App可以轻松完成这项任务。它可以通过单击按钮将带有TS块列表的m3u8播放列表以及实际的视频和音频流下载到mp4文件中,同时正确保留身份验证标头。

生成的单独的视频和音频文件可以与ffmpeg 合并

ffmpeg -i video.mp4 -i audio.mp4 -acodec copy -vcodec copy video-and-audio.mp4 
Run Code Online (Sandbox Code Playgroud)

mp4box

mp4box -add audio.mp4#audio video.mp4 -out video-and-audio.mp4
Run Code Online (Sandbox Code Playgroud)

也尝试了Video DownloadHelper Chrome扩展程序,但它对我不起作用。