python 运行其他命令行工具,实时打印输出内容

起因, 目的:

python 运行一个命令,最简洁的写法是:

python 复制代码
import os 

# 转换视频格式。
cmd = "ffmpeg -i a1.ts -c copy a1.mp4"

os.system(cmd)
问题:

如果上面的视频比较大,需要运行很长时间,那么感觉就像是卡住了, 不动了。 (而实际却还在运行)

其他情况,比如使用 streamlink 下载远程视频,也是一样的效果。

解决办法: 实时输出:
python 复制代码
import subprocess

cmd = "ffmpeg -i a3.ts -c copy a3.mp4"

with subprocess.Popen(cmd.split(" "), stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True) as process:
    for line in process.stderr:  # 输出结果
        print(line, end="")      # 避免新的空行


个人接单,留学生辅导,python, R语言,私聊.

老哥,支持一下啊。

相关推荐
宠..几秒前
VS Code SSH 远程连接 Ubuntu 并实现快速运行(C/C++示例)
java·运维·c语言·开发语言·c++·ubuntu·ssh
Omics Pro1 分钟前
免费!糖蛋白质组学数据分析
开发语言·深度学习·数据挖掘·数据分析·r语言·excel·知识图谱
WL_Aurora2 分钟前
Python 算法基础篇之排序算法(二):希尔、快速、归并
python·算法·排序算法
枫叶林FYL3 分钟前
【强化学习】2 大规模并行强化学习中的耦合策略优化:受控多样性驱动的样本高效探索
开发语言·php
chao1898444 分钟前
基于MATLAB的音频信号AM调制与解调实现
开发语言·matlab·音视频
雨落在了我的手上7 分钟前
初识java(八):数组的定义与使用
java·开发语言
贵州晓智信息科技7 分钟前
曼德勃罗集的 Three.js 实现
开发语言·javascript·ecmascript
xiaoshuaishuai88 分钟前
C# CUDA 到 OpenCL 迁移
开发语言·windows·c#
AI科技星9 分钟前
基于平行素数对等腰梯形网格拓扑的完备性证明哥德巴赫猜想1+1
c语言·开发语言·网络·量子计算·agi
聆风吟º9 分钟前
【C标准库】深入理解C语言 isdigit函数详解:判断字符是否为数字
c语言·开发语言·库函数·isdigit