廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 34824 個閱讀者
 
<<   1   2  下頁 >>(共 2 頁)
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
PeterPan 手機
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 社區建設獎
知名人士
級別: 知名人士 該用戶目前不上站
推文 x1 鮮花 x99
分享: 轉寄此文章 Facebook Plurk Twitter 版主評分 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x1
[Java][範例] 修改Srt字幕檔案的字幕顯示時間
===================↑執行範例↑====================
A‧將執行檔與字幕檔搬到同一目錄,執行ChangeSrtTime.exe
B‧輸入字幕檔案名稱與修改的毫秒數
C‧成功變出修改好的字幕檔


==========↓前言﹝碎碎唸﹞↓===========
昨晚抓了一些電影以及字幕檔,準備考試完畢以後犒賞自己,但是有些字幕顯示時間與影片時間不合,又懶的每次都要去DirectVobSub設定偏差時間,於是開始在茫茫網海中搜尋能修改 .srt 字幕時間的程式,但是找了半小時都找不到...﹝這傢伙搜尋功力果然夠差﹞,一怒之下就花了三個小時半寫出這隻程式﹝這傢伙只顧著寫 Web Application,基本的小程式居然都忘記怎麼寫了!﹞

============↓程式原理↓=============
.srt 檔案的規則很簡單,以下擷取部份內容說明
3
00:00:29,891 --> 00:00:33,504
∮噢,我來自一個遙遠的國度

4
00:00:33,572 --> 00:00:36,834
∮一個沙漠駱駝隊徜徉的地方

5
00:00:36,901 --> 00:00:40,415
∮那裡平坦寬闊、廣袤無邊、酷熱難耐
由此可知,每段字幕就是編號、顯示時間的範圍、字幕內容 這三個部分。而時間這行有字串 " --> ",所以程式只要在讀取每行資料的時候,判斷這行資料是否有 " --> " 這個字串,如果有,就修改這行 String,如果沒有,就直接 write 囉。

時間這行 String 的格式很固定↓
小時:分鐘:秒數,毫秒 --> 小時:分鐘:秒數,毫秒

我的做法是將兩個時間通通換算成毫秒數,再增減希望增減的毫秒數,然後傳入 Date 的 constructor,再傳入 SimpleDateFormat 來設定格式,然後再輸出。

=============↓程式碼↓=============/**
  .srt 字幕檔的字幕顯示時間修改程式
  written by PeterPan 【peterpan_pp.tw@yahoo.com.tw】
  2005/05/02
**/
import java.io.*;
import java.util.Date;
import java.text.SimpleDateFormat;

public class ChangeSrtTime{

public ChangeSrtTime(){
}

public void changeTime(Strin ..

訪客只能看到部份內容,免費 加入會員 或由臉書 Google 可以看到全部內容



[ 此文章被PeterPan在2005-05-08 11:57重新編輯 ]

此文章被評分,最近評分記錄
財富:100 (by codeboy) | 理由: 真是有用的小程式...辛苦您了~^^請再來喔~



神:在多項技術領域,具有不可取代性且擁有高度權威
魔:在某項技術領域,具有不可取代性且擁有高度權威
妖:有高度實戰經驗,且在專業領域上具有domain-Knowledge
俠:在技術層面上有過人專業能力
人:可以獨立運作、設計暨開發系統
蟲:coder only (my level)
獻花 x6 回到頂端 [樓 主] From:台灣數位聯合 | Posted:2005-05-03 13:47 |
mannon
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

真是個方便又精簡的程式!
非常實用! 表情


獻花 x0 回到頂端 [1 樓] From:臺灣中華HiNet | Posted:2007-06-07 21:33 |
skywalker509
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x1
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

往前移的功能有寫錯喔
往後移正常


獻花 x0 回到頂端 [2 樓] From:臺灣 | Posted:2007-11-30 23:49 |
a413012
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x1
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

看起來很複雜的感覺
有沒有比較方便一點的


獻花 x0 回到頂端 [3 樓] From:歐洲 | Posted:2008-08-30 20:02 |
ost 手機
數位造型
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x9 鮮花 x134
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

看說明好像使用起來很方便耶

不知有沒有比DirectVobSub好用

來試試看好了

感謝分享


槑...
獻花 x0 回到頂端 [4 樓] From:歐洲 | Posted:2008-08-31 00:04 |
luvqaf
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

他不能全部改變耶
只能用一小部分的字幕


獻花 x0 回到頂端 [5 樓] From:臺灣 | Posted:2009-02-01 21:41 |
xxxx9659
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

這個好用


獻花 x0 回到頂端 [6 樓] From:未知地址 | Posted:2009-06-16 03:53 |
daweproject
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x19
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

這好用的軟體當然要下載回來試試囉.謝謝分享


獻花 x0 回到頂端 [7 樓] From:臺灣中華 | Posted:2009-06-23 01:49 |
jimyuan
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

太棒了~希望這好用!!!


獻花 x0 回到頂端 [8 樓] From:歐洲 | Posted:2009-10-10 20:16 |
overing 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x0 鮮花 x55
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

如果沒有需要額外儲存資料
其實changeTime可以加個static
就可以在main裡面直接用ChangeSrtTime.changeTime呼叫
不用再生成(new)一個ChangeSrtTime物件


Zippy G2 600W
Intel C2Q Q9550
Gigabyte GA-X48-DQ6
Gigabyte GV-NX96T512H-B
G-skill pi 1100MHz 2Gx4
ACARD ANS-9010 32GB (Windows7 10sec boot!!)
WD 150GB(WD1500ADFD)/640GB(6400AASK)
獻花 x0 回到頂端 [9 樓] From:未知地址 | Posted:2009-10-16 01:55 |

<<   1   2  下頁 >>(共 2 頁)
首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.090917 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言