当前位置: 首页 > news >正文

ffmpeg-转码脚本02

ffmpeg-转码脚本详解

高级脚本

以下为主要部分 更高级优化要见git上

mkv转码电影脚本

@ECHO OFF

REM 以下参数不可乱填

SET FFMPEG=%~DP0\ffmpeg.exe

::------------------------------------------------------------------------------

CALL:PRO_LOOPDIR

::CALL:PRO_LOOPDIR_SUB

GOTO EOF

::------------------------------------------------------------------------------

:FUN_CHECKFFMPEG

IF NOT EXIST "%FFMPEG%" (

ECHO "ffmpeg.exe not find!"&pause

EXIT)

GOTO EOF

:FUN_VIDEO

%FFMPEG% -i %1 -vcodec libx265 -y %2

GOTO EOF

:FUN_VIDEO_SUB

SET STIME=-ss 00:00:07 -t 00:00:30

SET SVIDEO_CP=-map 0:v -vcodec copy

SET SVIDEO=-map 0:v:0 -vcodec libx265

SET SAUDIO_CP=-map 0:a -acodec copy

SET SAUDIO=-map 0:a -acodec aac -b:a:0 512k -map 0:a:1 -acodec aac -b:a 512k

SET SUB=-map 0:s -scodec copy

::%FFMPEG% %STIME% -i %1 %SVIDEO% %SAUDIOAAC% %SUB% -y %2

%FFMPEG% -i %1 %SVIDEO% %SAUDIO_CP% %SUB% -y %2

GOTO EOF

:PRO_LOOPDIR

REM 遍历文件夹处理为H265

CALL:FUN_CHECKFFMPEG

@FOR /F "DELIMS=" %%I IN ('@DIR /B /A-D /S "*.mp4"') DO (CALL:FUN_VIDEO "%%I" "%~DP0%%~NI_265%%~XI")

ECHO "CONVERT END!"

TIMEOUT 6

GOTO EOF

:PRO_LOOPDIR_SUB

CALL:FUN_CHECKFFMPEG

REM 遍历文件夹处理含字幕的mkv

@FOR /F "DELIMS=" %%I IN ('@DIR /B /A-D /S "*.mkv"') DO (CALL:FUN_VIDEO_SUB "%%I" "%~DP0%%~NI_265%%~XI")

ECHO "CONVERT END!"

TIMEOUT 6

GOTO EOF

:EOF

转码S60脚本

@ECHO OFF

CHCP 65001

REM 以下参数不可乱填

SET FFMPEG=%~DP0\ffmpeg.exe

::------------------------------------------------------------------------------

CALL:PRO_SYMIAN_VIDEO

GOTO EOF

::------------------------------------------------------------------------------

:FUN_VIDEO

REM 下面是把MP4文件转为S60专用的MPEG文件 mpeg4+aac

SET INPUT=%1

SET OUTPUT=%2

SET CODEC=-f mp4 -c:v mpeg4

SET XY=-vf "scale=640:480:flags=fast_bilinear,setsar=1/1"

SET SIZE=-b:v 280k -c:a aac -ac 2 -b:a 64k -r 15 -sn -map_metadata -1 -map_chapters -1

%FFMPEG% -i %INPUT% %XY% %CODEC% %SIZE% -y %OUTPUT%

GOTO EOF

:FUN_HIGHVIDEO

REM 下面是把MP4文件转为S60支持的H264文件 H264+aac

SET INPUT=%1

SET OUTPUT=%2

SET CODEC264=-f mp4 -c:v libx264

SET CODECXVID=-f mp4 -c:v libxvid

SET XY=-vf "scale=640:480:flags=bicubic,setsar=1/1"

SET SIZE=-b:v 280k -c:a libmp3lame -ac 2 -b:a 64k -r 15 -sn -map_metadata -1 -map_chapters -1

SET X264INFO=-profile:v baseline -preset veryfast

%FFMPEG% -i %INPUT% %XY% %CODEC264% %SIZE% %X264INFO% -y %OUTPUT%

::%FFMPEG% -i %INPUT% %XY% %CODECXVID% %SIZE% -y %OUTPUT%

GOTO EOF

:TEST_VIDEO_COMPARE

REM S60v3 视频转码各格式对比测试

REM libx264>libxvid(mp4)>mpeg4(3pg)>mpeg4(mp4)>libxvid(avi)>mpeg4(avi)>msmpeg4(avi)

SET XY=-vf "scale=640:480:flags=bicubic,setsar=1/1"

SET SIZE=-b:v 300k -c:a aac -ac 2 -b:a 64k -r 15 -sn -map_metadata -1 -map_chapters -1

SET X264INFO=-profile:v baseline -preset veryfast

FOR /F "DELIMS=" %%I IN ('DIR /B /A-D /S "*.MP4"') DO (

%FFMPEG% -i "%%I" %XY% -f mp4 -c:v libx264 %SIZE% %X264INFO% -y "%~D0%%~PI%%~NI_libx264.mp4"

%FFMPEG% -i "%%I" %XY% -f mp4 -c:v libxvid %SIZE% -y "%~D0%%~PI%%~NI_libxvid.mp4"

%FFMPEG% -i "%%I" %XY% -f mp4 -c:v mpeg4 %SIZE% -y "%~D0%%~PI%%~NI_mpeg4.mp4"

%FFMPEG% -i "%%I" %XY% -f avi -c:v libxvid %SIZE% -y "%~D0%%~PI%%~NI_libxvid.avi"

%FFMPEG% -i "%%I" %XY% -f avi -c:v mpeg4 %SIZE% -y "%~D0%%~PI%%~NI_mpeg4.avi"

%FFMPEG% -i "%%I" %XY% -f avi -c:v msmpeg4 %SIZE% -y "%~D0%%~PI%%~NI_DIV3.avi"

%FFMPEG% -i "%%I" %XY% -f 3gp -c:v mpeg4 %SIZE% -y "%~D0%%~PI%%~NI_3gp.3gp")

GOTO EOF

:PRO_SYMIAN_VIDEO

FOR /F "DELIMS=" %%I IN ('DIR /B /A-D /S "*.MP4"') DO (CALL:FUN_VIDEO "%%I" "%~D0%%~PI%%~NI_mpeg.mp4")

::FOR /F "DELIMS=" %%I IN ('DIR /B /A-D /S "*.MP4"') DO (CALL:FUN_HIGHVIDEO "%%I" "%~D0%%~PI%%~NI_h264.mp4")

GOTO EOF

:EOF

相关文章:

ffmpeg-转码脚本02

ffmpeg-转码脚本详解 高级脚本 以下为主要部分 更高级优化要见git上 mkv转码电影脚本 ECHO OFF REM 以下参数不可乱填 SET FFMPEG%~DP0\ffmpeg.exe ::------------------------------------------------------------------------------ CALL:PRO_LOOPDIR ::CALL:PRO_LOOPDIR_SU…...

SharedPreferences

Android轻量级数据存储 import android.content.Context; import android.content.SharedPreferences;public class SharedPreferencesUtil {private SharedPreferences sharedPreferences;private SharedPreferences.Editor editor;public SharedPreferencesUtil(Context con…...

服务(第二十五篇)redis的优化和持久化

持久化的功能:Redis是内存数据库,数据都是存储在内存中,为了避免服务器断电等原因导致Redis进程异常退出后数据的永久丢失,需要定期将Redis中的数据以某种形式(数据或命令)从内存保存到硬盘;当下…...

David Silver Lecture 7: Policy Gradient

1 Introduction 1.1 Policy-Based Reinforcement Learning 1.2 Value-based and policy based RL 基于值的强化学习 在基于值的 RL 中,目标是找到一个最优的值函数,通常是 Q 函数或 V 函数。这些函数为给定的状态或状态-动作对分配一个值,表…...

知识图谱学习笔记——(五)知识图谱推理

一、知识学习 声明:知识学习中本文主体按照浙江大学陈华钧教授的《知识图谱》公开课讲义进行介绍,并个别地方加入了自己的注释和思考,希望大家尊重陈华钧教授的知识产权,在使用时加上出处。感谢陈华钧教授。 (一&…...

用vs2010编译和调试多个arx版本的arx项目

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、一级标题二级标题三级标题四级标题五级标题六级标题升级原先vs2008版本的项目文件到2010,或直接用vs2010新建一个arx项目; vs中查看项目属性:Project menu -> Properties,项目名上右…...

安全相关词汇

• DEW: Data Encryption Workshop • HSM: Hardware Security Module • KMS: Key Management System • KAM: Key Account Management • DHSM: Dedicated Hardware Security Module • KPS: Key Pair Service • CSMS: Cloud Secret Management Service • PCI-DSS: …...

最新入河排污口设置论证、水质影响预测与模拟、污水处理工艺分析及典型建设项目入河排污口方案报告书

随着水资源开发利用量不断增大,全国废污水排放量与日俱增,部分河段已远远超出水域纳污能力。近年来,部分沿岸入河排污口设置不合理,超标排污、未经同意私设排污口等问题逐步显现,已威胁到供水安全、水环境安全和水生态安全&#x…...

2023年认证杯二阶段C题数据合并python以及matlab多途径实现代码

对于每种心率下给出的数据,我们需要进行合并才能方便后续处理,这里为大家展示利用python以及matlab分别实现合并的代码 import pandas as pd import os# 创建一个空的DataFrame对象 merged_data pd.DataFrame()# 设置数据文件所在的文件夹路径 folder_…...

Win11校园网不弹出登录页面怎么回事?

Win11校园网不弹出登录页面怎么回事?最近有用户在使用校园网的时候遇到了一些问题,访问登录网站的时候,一直无法显示登录的界面。那么遇到这个情况如何去进行解决呢?一起来看看以下的解决方法分享吧。 解决方法如下: 方…...

S32K144低功耗休眠与唤醒实践总结

在做车载项目时,模块在常供电时需要维系随时可以被唤醒工作的状态,并且静态电流需要在3mA以内,当然在JTT1163标准中要求的是5mA以内。 目标明确了,在模块休眠时需要关闭一切不必要的资源消耗,只保留模块被唤醒的部分功…...

一文吃透 Vue 框架教程(上)

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...

堆排序与取topK java实现

1.堆排序思路 最近趁着有点时间,稍微复习了一下数据结构相关内容,温习了一下堆排序,做一下记录。 首先我们复习一下什么是堆: 堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值&#xff0c…...

https通信流程通俗理解

场景,假设A和B进行通信 CA: ( Certificate Authority )就是颁发 HTTPS 证书的组织。 通信流程步骤: 1、A告诉B使用 RSA算法进行加密,B说好的。 2、A和B同时用 RSA算法各自生成一对公钥密钥,各自的公钥密钥都不同。 3…...

银行零售业务转型方法论:打造数字化的“有机体”

传统的业务增长进度叫做连续性创新,它是在一条曲线上渐进性的改良和发展,但这种发展终有极限,如果不能及时开辟第二增长曲线,就很容易被时代所抛弃。过去十年,以互联网为代表的数字化转型的先行者,不断冲击…...

【STM32】STM32使用RFID读卡器

STM32使用RFID读卡器 RFID卡片 ID卡(身份标识):作用就是比如你要输入学号,你刷卡直接就相当于输入学号,省去了输入的过程 IC卡:集成电路卡,是将一种微电子芯片嵌入卡片之中 RFID的操作 1、…...

spring集成mybatis的原理

spring是怎样和mybatis继承的? 在idea里点mapper.queryOne()直接跳到了接口或xml,它究竟是怎样利用jdbc执行的? 我直接调用mapper.queryOne是怎么使用的sqlsession?怎么去connect的? mybatis是怎样根据mapper找到对应的…...

限速神器RateLimiter源码解析 | 京东云技术团队

作者:京东科技 李玉亮 目录指引 限流场景 软件系统中一般有两种场景会用到限流: •场景一、高并发的用户端场景。 尤其是C端系统,经常面对海量用户请求,如不做限流,遇到瞬间高并发的场景,则可能压垮系统…...

spring中怎样优化第三方bean?

需求:将数据库连接四要素提取到properties配置文件,spring来加载配置信息并使用这些信息来完成属性注入。第三方bean属性优化的思路如下: 1.在resources下创建一个jdbc.properties(文件的名称可以任意) 2.将数据库连接四要素配置到配置文件中 3.在Spr…...

8分钟的面试,我直呼太变态了......

干了两年外包,本来想出来正儿八经找个互联网公司上班,没想到算法死在另一家厂子。 自从加入这家外包公司,每天都在加班,钱倒是给的不少,所以也就忍了。没想到11月一纸通知,所有人不许加班,薪资…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...

MMaDA: Multimodal Large Diffusion Language Models

CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

生成 Git SSH 证书

🔑 1. ​​生成 SSH 密钥对​​ 在终端(Windows 使用 Git Bash,Mac/Linux 使用 Terminal)执行命令: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​: -t rsa&#x…...

智能仓储的未来:自动化、AI与数据分析如何重塑物流中心

当仓库学会“思考”,物流的终极形态正在诞生 想象这样的场景: 凌晨3点,某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径;AI视觉系统在0.1秒内扫描包裹信息;数字孪生平台正模拟次日峰值流量压力…...

SpringTask-03.入门案例

一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

AspectJ 在 Android 中的完整使用指南

一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...