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.它不会播放视频,而是对其进行编码,通过移动视频播放进度条来显示编码进度.
aal*_*ane 15
--->打开Firefox
--->打开视频页面
--->播放视频
单击--->打开菜单
单击--->打开Web开发人员工具
单击--->开发人员工具栏
单击--->网络
--->转到过滤网址--->写"M3u8" - >查找"m3u8"
--->复制网址".m3u8"
========================
现在下载软件"m3u8x"----> https://tajaribsoft-en.blogspot.com/2016/06/m3u8x.html#downloadx12
--->打开软件"m3u8x"
--->粘贴网址"m3u8"
--->选择选项"One ... One"
--->单击"下载"
--->开始下载
========================
图像"打开菜单"===>

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

图像"m3u8x"===>
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
使用这篇文章
打开Firefox/chrome
打开视频页面
播放视频
点击F12键盘 - >network
在Filter URLsts
复制ts的链接
从链接中删除索引和ts扩展名
例如:
http://vid.com/vod/mp4:vod/PRV/Yg0WGN_6.mp4/media_b180000_454.ts
Run Code Online (Sandbox Code Playgroud)
将被复制为
http://vid.com/vod/mp4:vod/PRV/Yg0WGN_6.mp4/media_b180000
Run Code Online (Sandbox Code Playgroud)在下面的脚本中插入 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)
虽然这不应该被问到 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
许多网站将其视频打包为多个传输流文件 (.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)
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。
我需要从电子学习门户网站下载HLS视频和音频流,其中包含具有application/mp2tMIME内容类型的受会话保护的内容。
手动将所有身份验证标头复制到下载脚本中会很麻烦。
但是借助Video DownloadHelper Firefox扩展及其Companion App可以轻松完成这项任务。它可以通过单击按钮将带有TS块列表的m3u8播放列表以及实际的视频和音频流下载到mp4文件中,同时正确保留身份验证标头。
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扩展程序,但它对我不起作用。
| 归档时间: |
|
| 查看次数: |
167333 次 |
| 最近记录: |