MP4视频在浏览器播放首屏卡的优化处理


自已做的MP4在线WEB站一直存在播放首屏卡的问题,严重的卡近10S,还以为是高清/码率/分辨率过大的问题,如果像大站那样优化也太麻烦了,因为是自己用,所以也并不在意那种开始时的卡顿,近日无意阅读一篇文章,谈到这种问题
简单来说就是网上下载的MP4视频没有moov.udta.meta,导致浏览器不能很快获取到视频总体的信息,解决方法就是用ffmpeg重新处理,单个文件处理就是
ffmpeg -i input.mp4 -movflags faststart -acodec copy -vcodec copy output.mp4
这样的命令。处理后首屏卡的情况的确大大改善,因文件较多,把ffmpeg加入系统path变量,然后写了一个python批量处理。代码如下:
 
#coding:utf-8
from pathlib import Path
import os

mp4_filepath=Path('D:\视频\WEB视频')
save_path=mp4_filepath.joinpath('处理后视频') #拼合保存路径
save_path.mkdir(exist_ok=True) #如路径目录不存在创建
for x in mp4_filepath.glob('*'): #列出目录下所有文件
    if x.suffix.upper()=='.MP4': #判断扩展名为mp4的文件再进入处理
        save_as_path=save_path.joinpath(x.name) #拼合保存的绝对路径,文件名为原文件名
        exe_command= f'ffmpeg -i "{x}" -movflags faststart -acodec copy -vcodec copy "{save_as_path}"' #拼合执行命令,注意如文件有空格需用双引号括起来,windows用单引号会有问题
        try:
            x1=os.popen(exe_command) #执行
            print(x1.read()) #读出信息流
        except:
            print(f"视频{x}出错了!")

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM