解决python 中使用ffmpy3.FFmpeg下载m3u8转换为mp4过程中,CPU占用过高的问题

最近刚学习使用python爬取网页中m3u8视频,下载转换为mp4格式,发现使用ffmpy3模块调用FFmpeg挺方便的,具体代码如下:

from ffmpy3 import FFmpeg

url = 'https://******/1/index.m3u8'
title = 'python学习'

ff = FFmpeg(inputs={url:None},

            outputs={f'{title}.mp4': None})

        print(ff.cmd)

        ff.run()

​

但在实际使用中发现CPU占用过高,将近100%,温度达到90摄氏度,搜索后给的答案,应该是ffmpeg默认使用了和CPU核数一样的线程数,寻找限制线程数的代码:

FFmpeg限制CPU的使用率,使用“-threads 2” - yuanloo - 博客园 (cnblogs.com)

在cmd中使用的代码:

FFmpeg -i IN  –threads 2   OUT

体现在python中:

from ffmpy3 import FFmpeg

url = 'https://******/1/index.m3u8&#
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Python可以使用FFmpeg库将m3u8格式的视频文件转换mp4格式。可以使用以下代码: ```python import ffmpeg input_file = 'input.m3u8' output_file = 'output.mp4' stream = ffmpeg.input(input_file) stream = ffmpeg.output(stream, output_file) ffmpeg.run(stream) ``` 其,`input_file`是输入的m3u8格式文件路径,`output_file`是输出的mp4格式文件路径。使用`ffmpeg.input()`函数读取输入文件,使用`ffmpeg.output()`函数设置输出文件,最后使用`ffmpeg.run()`函数执行转换操作。 需要注意的是,使用该代码需要先安装FFmpeg库。可以使用以下命令安装: ```bash pip install ffmpeg-python ``` ### 回答2: Python是一种非常强大的编程语言,它支持大量的功能和库,其包括m3u8格式转换mp4。m3u8是一种视频格式,通常用于流媒体服务,它将整个视频划分成许多小的ts文件进行传输。然而,某些视频播放器不支持m3u8格式,需要将其转换mp4格式才能播放。以下是使用Python将m3u8格式转换mp4格式的步骤。 第一步是安装必要的依赖库。Python有一个非常强大的库“FFmpeg”,可以完成视频格式转换的功能。因此,我们需要使用pip工具在Python环境安装“FFmpeg”库。可以使用以下命令安装: pip install ffmpeg-python 安装完成后,我们可以开始编写Python代码。 第二步是编写Python代码。Python提供了一个名为“ffmpeg”的库,可以轻松地使用Python脚本进行视频格式转换。以下是Python代码示例: ``` import ffmpeg input_file = "example.m3u8" # 输入m3u8格式的文件名。 output_file = "example.mp4" # 输出mp4格式的文件名。 ( ffmpeg .input(input_file) .output(output_file) .run() ) ``` 第三步是运行代码。在Python环境运行上述代码会将输入的m3u8文件转换mp4格式,并将其输出到指定的文件名。在运行之前,需要将代码的文件名替换为实际的文件名。 总之,使用Python将m3u8格式转换mp4格式是非常简单的。只需要安装必要的依赖库,编写相应的Python代码并运行即可完成转换。这对于需要将m3u8格式的视频转换为其他格式的应用程序非常有用。 ### 回答3: M3U8是一种基于HTTP Live Streaming(HLS)协议的视频流媒体传输格式,常用于移动端的视频播放,而MP4是一种常见的视频文件格式。在一些情况下,可能需要将M3U8格式的视频转换MP4格式,例如将M3U8格式的视频下载到电脑上进行本地播放、编辑或上传等。 实现M3U8格式转换MP4格式的主要步骤如下: 1. 下载M3U8视频流:先获取M3U8下载链接,可以通过浏览器开发者工具或在线提取工具获取。然后可以使用开源的下载工具如FFmpeg、youtube-dl等进行下载,命令格式为 ```ffmpeg -i "m3u8_link.m3u8" -c copy video.mp4``` 其“m3u8_link.m3u8”为M3U8下载链接,“video.mp4”为转换后生成的MP4文件名。 2. 转换MP4格式:转换前需要先下载安装FFmpeg及相关依赖库,并在命令行输入相应的转换指令。 例如,将当前文件夹的M3U8文件转换MP4格式,命令格式为 ```ffmpeg -i sample.m3u8 -c copy sample.mp4``` 其“sample.m3u8”为待转换的M3U8文件名,“sample.mp4”为转换后生成的MP4文件名。 需要注意的是,有些M3U8视频流可能具有加密保护,转换时需要提供密钥等额外参数,具体实现方法需要根据不同的情况进行调整。 综上,将M3U8格式转换MP4格式需要一定的技术基础和操作经验,同时还要注意版权问题和网络安全等方面的风险。建议在合法授权范围内使用相关工具和技术进行操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值