視頻添加字幕腳本分享

腳本簡介

這是一個給視頻添加字幕的腳本,可以方便的在指定的位置給視頻添加不同大小、字體、顏色的文本字幕,添加方式可以直接修改腳本中的文本信息,或者可以提前編輯好.srt字幕文件。腳本執行環境:windows+mingw+ffmpeg。本方法僅適合有一定腳本語言基礎或者DOS\Linux shell基礎的人使用。

腳本代碼

分享一段給視頻添加字幕的Shell腳本,直接上代碼:

#!/bin/sh
# using:./signacttomp4.sh filename.mp4 filename.srt
#硬壓字幕參數
#ffmpeg -i $1 -vf drawtext=fontfile=simkai.ttf:text=Welcome:x=\(w-tw\)/2:y=\(h-th\)/2:fontcolor=green:fontsize=30 ${fileout}out.mp4
# 以.srt字幕文件嵌入字幕方式,去掉下面這行的注釋,注釋掉其他語句即可
# ffmpeg -i $1 -vf subtitles=$2 ${fileout}out.mp4
#
################################################################################################
file=$1
fontsize=40
fileout=${file%%.*}
txtthings='標題'
textschool='  學校名稱'
textclass='班級 '
textname='姓名'
cmdstring="drawtext=fontfile=simkai.ttf:text=${txtthings}:x=w-tw-2*${fontsize}:y=h-th*5-10:fontcolor=orange:fontsize=${fontsize}"
cmdstring1=", drawtext=fontfile=simkai.ttf:text=${textschool}:x=w-tw-2.5*${fontsize}:y=h-th*4-10:fontcolor=orange:fontsize=${fontsize}"
cmdstring=$cmdstring$cmdstring1
cmdstring1=", drawtext=fontfile=simkai.ttf:text=${textclass}:x=w-tw-2*${fontsize}:y=h-th*3-10:fontcolor=orange:fontsize=${fontsize}"
cmdstring=$cmdstring$cmdstring1
cmdstring1=", drawtext=fontfile=simkai.ttf:text=${textname}:x=w-tw-3*${fontsize}:y=h-th*2-10:fontcolor=orange:fontsize=${fontsize}" 
cmdstring=$cmdstring$cmdstring1
echo $cmdstring" "${fileout}"out"ffmpeg -i $1 -vf "${cmdstring}" ${fileout}out.mp4

字幕添加效果

添加前:

添加后:

下載地址

本文提供腳本

【實用腳本工具】視頻編輯添加字幕簽名工具

同時提供一個可視化實用視頻簽名工具下載地址:

實用視頻簽名工具

歡迎大家下載使用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/79246.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/79246.shtml
英文地址,請注明出處:http://en.pswp.cn/web/79246.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ubuntu nobel + qt5.15.2 設置qss語法識別正確

問題展示 解決步驟 首選項里面的高亮怎么編輯選擇都沒用。如果已經有generic-highlighter和css.xml,直接修改css.xml文件最直接! 在generic-highlighter目錄下找到css.xml文件,位置是:/opt/Qt/Tools/QtCreator/share/qtcreator/…

洛谷P7528 [USACO21OPEN] Portals G

P7528 [USACO21OPEN] Portals G luogu題目傳送門 題目描述 Bessie 位于一個由 N N N 個編號為 1 … N 1\dots N 1…N 的結點以及 2 N 2N 2N 個編號為 1 ? 2 N 1\cdots 2N 1?2N 的傳送門所組成的網絡中。每個傳送門連接兩個不同的結點 u u u 和 v v v( u …

C++STL——priority_queue

優先隊列 前言優先隊列仿函數頭文件 前言 本篇主要講解優先隊列及其底層實現。 優先隊列 優先隊列的本質就是個堆,其與queue一樣,都是容器適配器,不過優先隊列是默認為vector實現的。priority_queue的接口優先隊列默認為大根堆。 仿函數 …

助力你的Neovim!輕松管理開發工具的魔法包管理器來了!

在現代編程環境中,Neovim 已經成為許多開發者的編輯器選擇。而針對 Neovim 的各種插件與功能擴展,則是提升開發體驗的重要手段。今天我們要介紹的就是一個強大而便捷的開源項目——mason.nvim,一個旨在簡化和優化 Neovim 使用體驗的便攜式包管…

Java-Lambda 表達式

Lambda 表達式是 Java 8 引入的一項重要特性,它提供了一種簡潔的方式來表示匿名函數。Lambda 表達式主要用于簡化函數式接口的實現,使代碼更加簡潔和易讀。以下是關于 Lambda 表達式的詳細闡述: 1. Lambda 表達式的基本語法 Lambda 表達式的…

05 mysql之DDL

一、SQL的四個分類 我們通常可以將 SQL 分為四類,分別是: DDL(數據定義語言)、DML(數據操作語言)、 DCL(數據控制語言)和 TCL(事務控制語言)。 DDL 用于創建…

1 2 3 4 5順序插入,形成一個紅黑樹

紅黑樹的特性與優點 紅黑樹是一種自平衡的二叉搜索樹,通過額外的顏色標記和平衡性約束,確保樹的高度始終保持在 O(log n)。其核心特性如下: 每個節點要么是紅色,要么是黑色。根節點和葉子節點(NIL節點)是…

微服務6大拆分原則

微服務6大拆分原則 微服務拆分是指將一個大型應用程序拆分成獨立服務的過程,在微服務拆分時,需要考慮以下6大微服務拆分原則 一、單一職責原則 微服務單一職責原則,是指每個微服務應該專注于解決一個明確定義的業務領域或功能,…

java: Compilation failed: internal java compiler error 報錯解決方案

java: Compilation failed: internal java compiler error 報錯解決方案 如下圖所示: 在編譯的時候提示 java: Compilation failed: internal java compiler error 原因:內部 java 編譯錯誤,一般是編譯版本不匹配。 問題解決 項目中有以下設置JDK版本…

介紹一下ReentrantLock 跟 Synchronized 區別

ReentrantLock 跟 Synchronized 區別 面試回答: 相同點: synchronized 和 ReentrantLock 都是用來保護資源線程安全的。 都可以保證可見性。 synchronized 和 ReentrantLock 都擁有可重入的特點。 從基本語義和概念上說 synchronized: Java 內建的…

第7次課 棧A

課堂學習 棧(stack) 是一種遵循先入后出邏輯的線性數據結構。 我們可以將棧類比為桌面上的一摞盤子,如果想取出底部的盤子,則需要先將上面的盤子依次移走。我們將盤子替換為各種類型的元素(如整數、字符、對象等&…

ts裝飾器

TypeScript 裝飾器是一種特殊類型的聲明,能夠被附加到類聲明、方法、訪問符、屬性或參數上。它本質上是一個函數,會在運行時被調用,并且被裝飾的聲明信息會作為參數傳遞給裝飾器函數。 裝飾器的分類 類裝飾器 類裝飾器作用于類構造函數&…

【金倉數據庫征文】政府項目數據庫遷移:從MySQL 5.7到KingbaseES的蛻變之路

摘要:本文詳細闡述了政府項目中將 MySQL 5.7 數據庫遷移至 KingbaseES 的全過程,涵蓋遷移前的環境評估、數據梳理和工具準備,遷移實戰中的數據源與目標庫連接配置、遷移任務詳細設定、執行遷移與過程監控,以及遷移后的質量驗證、系…

VB與Excel無縫連接實現指南

一、前期準備 引用Excel對象庫: 在VB開發環境中,點擊"項目"→"引用" 勾選"Microsoft Excel XX.X Object Library"(XX.X代表版本號) 創建Excel應用程序對象: vb Dim xlApp As Excel.…

【MySQL】數據庫、數據表的基本操作

個人主頁:Guiat 歸屬專欄:MySQL 文章目錄 1. MySQL基礎命令1.1 連接MySQL1.2 基本命令概覽 2. 數據庫操作2.1 創建數據庫2.2 查看數據庫2.3 選擇數據庫2.4 修改數據庫2.5 刪除數據庫2.6 數據庫備份與恢復 3. 表操作基礎3.1 創建表3.2 查看表信息3.3 創建…

cursor sign in 網頁登錄成功,sursor軟件里一直登陸不成功沒有登陸信息

今天在使用cursor登陸無法登陸,點擊sigin in打開網址登陸成功后,軟件里一直無法顯示登陸信息。 點擊sigin in 在網址登陸成功后 解決辦法: 方法1.設置windows默認應用為chrome. 辦法2: 刪除代理 cursor上ctrl, 打開設置,找到…

深入理解卷積神經網絡的輸入層:數據的起點與預處理核心

內容摘要 本文圍繞卷積神經網絡輸入層展開,詳細介紹其在網絡中的重要作用,包括接收不同領域數據的形式及傳遞數據的過程。深入解讀數據預處理的關鍵操作,如去均值、歸一化和PCA/白化。助力讀者透徹理解輸入層,為構建高效卷積神經…

解決 MySQL 數據庫無法遠程連接的問題

在使用 MySQL 數據庫時,遇到這樣的問題: 本地可以連接 MySQL,但遠程機器連接時,總是報錯 Host ... is not allowed to connect to this MySQL server。 這通常是因為 MySQL 的用戶權限或配置限制了遠程訪問。 1. 登錄 MySQL 數據…

MCP認證全解析:從零到微軟認證專家

MCP認證全解析:從零到微軟認證專家 什么是MCP認證? Microsoft Certified Professional(MCP)是由微軟官方頒發的技術認證,旨在驗證IT從業者在微軟技術棧(如Azure、Windows Server、SQL Server等&#xff0…

驅動開發系列57 - Linux Graphics QXL顯卡驅動代碼分析(四)顯示區域更新

一:概述 前面在介紹了顯示模式設置(分辨率,刷新率)之后,本文繼續分析下,顯示區域的繪制,詳細看看虛擬機的畫面是如何由QXL顯卡繪制出來的。 二:相關數據結構介紹 struct qxl_moni…