[Chrome Extension] Youtube影片截選播放清單 (Youtube Clip Playlist)

前言


GitHub tag GitHub last commit (branch) LICENSE
Chrome Web Store Chrome Web Store
Bootstrap TypeScript Webpack
Google Chrome YouTube Microsoft OneDrive Google Drive

這是截選播放清單擴充功能,在Youtube/Onedrive/GoogleDrive/TwitCasting上直接播放「起始~結束時間」影片片段。
此工具專門設計來聽Vtuber的歌枠,這是我對於歌回烤肉的程式解

和看烤肉或剪片相比的優點為

  • 觀看數都會算在原始影片上
  • 只要清單化起始/結束時間就完事,比剪片快得多
  • 因為沒有轉載、修改原影片,不會有版權爭議
此專案曾是個油猴腳本(UserScript),現已重寫為擴充功能

安裝步驟

  1. 參照這篇文章,設定下方網域的允許自動播放
    • https://www.youtube.com:443
    • https://1drv.ms:443
    • https://gothuedutw-my.sharepoint.com:443
    • https://twitcasting.tv:443
  2. 安裝瀏覧器擴充功能: Chrome Web Store
  3. 播放Playlist

參數說明

播放單一播放清單

https://www.youtube.com/?
    startplaylist &
    playlist=QuonTamaSongList

Youtube網址格式

https://www.youtube.com/watch?
    v=ETjgki1sSgc &
    t=1591 &
    end=1880
&
    shuffle=1 &
    playlistinclude=quon
&
    playlistexclude=member

Google Drive網址格式

https://drive.google.com/file/d/13LaALYNOmdN3GfD7aeKreyzshdKX-Tvz/view?
    t=884 &
    end=1166 &
    shuffle=1 &
    playlistinclude=quon &
    playlistexclude=member

其它網址格式 (目前支援OneDrive、twitcasting)

其它格式是以原網址直接當做VideoID傳入
https://twitcasting.tv/quon01tama/movie/688324697
    t=1470 &
    end=1653 &
    shuffle=1 &
    playlistinclude=twitcasting

參數

  • VideoID: 在Youtube為原生v參數;Google Drive 是在路徑中;其它為原始網址
  • t: 影片播放開始時間
  • end: 在指定秒數停止播放影片
  • shuffle: Playlist隨機播放,1為啟用;0為禁用(等同不傳入) 
  • playlist: 播放單一清單,不能和 playlistincludeplaylistexclude 同時傳入 
  • playlistinclude: 讀入Playlist標籤,可以以「_」底線分隔傳入多個標籤
  • playlistexclude: 排除Playlist標籤,可以以「_」底線分隔傳入多個標籤

詳細功能描述

  • 此工具是由網址參數驅動
  • 傳入startplaylist時會啟動此工具,執行全清單循序播放
  • 傳入end,會在指定秒數停止播放器
  • 傳入playlist參數,會播放指定播放清單
  • 使用「標籤篩選功能」,可以混合播放多個播放清單 (例如,以playlistinclude=tama播放久遠たま的所有類型播放清單)
    • 傳入playlistinclude,則只會載入有該標籤的清單
    • 傳入playlistexclude,則會排除有該標籤的清單,且Exclude優先於Include
  • 「禁用歌單功能」將禁用指定歌單,即使透過標籤篩選也會被排除在外
  • 「隨機功能」為建立亂序清單後播放,在所有歌曲都放過一輪後才會再循環
  • 傳入startplaylist參數時會立刻重建亂序清單
  • 支援以鍵盤的媒體按鍵(Media Keys)操作「下一首

啟動連結

說明 連結
全清單 循序 https://www.youtube.com/?startplaylist
全清單 隨機 https://www.youtube.com/?startplaylist&shuffle=1
久遠たま 全歌單循序 https://www.youtube.com/?startplaylist&playlistinclude=tama&playlistexclude=NotSongs
久遠たま 排除會限 https://www.youtube.com/?startplaylist&playlistinclude=tama&playlistexclude=member_NotSongs
久遠たま 全歌單隨機 https://www.youtube.com/?startplaylist&playlistinclude=tama&playlistexclude=NotSongs&shuffle=1
久遠たま twitcasting歌單 https://www.youtube.com/?startplaylist&playlistinclude=twitcasting
RadioQTama 廣播 https://www.youtube.com/?startplaylist&playlistinclude=RadioQTama
須多夜花 全歌單循序 https://www.youtube.com/?startplaylist&playlistinclude=yoruka
須多夜花 全歌單隨機 https://www.youtube.com/?startplaylist&playlistinclude=yoruka&shuffle=1
間取かける 全歌單循序 https://www.youtube.com/?startplaylist&playlistinclude=kakeru
間取かける 全歌單隨機 https://www.youtube.com/?startplaylist&playlistinclude=kakeru&shuffle=1
薬袋アルマ 全歌單循序 https://www.youtube.com/?startplaylist&playlistinclude=aruma
薬袋アルマ 全歌單隨機 https://www.youtube.com/?startplaylist&playlistinclude=aruma&shuffle=1
伊冬ユナ 全歌單循序 https://www.youtube.com/?startplaylist&playlistinclude=ItouYuna
伊冬ユナ 全歌單隨機 https://www.youtube.com/?startplaylist&playlistinclude=ItouYuna&shuffle=1
羽宮くぅ 全歌單循序 https://www.youtube.com/?startplaylist&playlistinclude=HaneMiya
羽宮くぅ 全歌單隨機 https://www.youtube.com/?startplaylist&playlistinclude=HaneMiya&shuffle=1
町田ちま 全歌單循序 https://www.youtube.com/?startplaylist&playlistinclude=MachitaChima
町田ちま 全歌單隨機 https://www.youtube.com/?startplaylist&playlistinclude=MachitaChima&shuffle=1
牧野白 全歌單循序 https://www.youtube.com/?startplaylist&playlistinclude=MakinoShiro
牧野白 全歌單隨機 https://www.youtube.com/?startplaylist&playlistinclude=MakinoShiro&shuffle=1

彈窗 UI 選單

UI

瀏覧器右上角開啟擴充工具彈出式視窗
  • 單擊左上角的隨機按鈕,切換是否隨機播放
  • 單擊中間的紅色播放按鈕,播放所有播放清單
  • 單擊播放清單列表,播放單一播放清單

禁用歌單功能

若你不聽廣播,可以把 RadioQTamaList 禁用,再使用全循序/隨機播放功能

點擊右上角進入「編輯」功能,此時在清單項單擊可以啟用、禁用該播放清單
編輯完成後,請務必單擊右上角「儲存」按鈕寫入設定

歌單(Playlist)

目前內建久遠たまIROA間取かける薬袋アルマ須多夜花伊冬ユナ羽宮くぅ的歌單

如果想要編寫歌單,請參考此repo
你也可以fork此repo架構,從頭寫你自己的! PRs Welcome

歌單格式

歌單的格式是JSON with comment
這裡有總表,標示清單名稱、標籤、位置,並載入個別歌單

每個陣列中儲存以下項目: [VideoID, StartTime, EndTime, Title?, SubSrc?]

  • VideoID: 必須用引號包住,為字串型態
  • StartTime: 必須是非負數,為數字型態。如果要從頭播放,輸入0
  • EndTime: 必須是非負數,為數字型態。如果要播放至尾,輸入0
  • Title?: 必須用雙引號包住,為字串型態,可選
  • SubSrc?: 必須用雙引號包住,為字串型態,可選
Youtube: OneDrive: TwitCasting ツイキャス:
對於有密碼鎖的影片,請延伸閱讀
TwitCasting每次播放都要求輸入密碼?不要一直問我!

字幕

此工具支援載入WebVTT字幕(.vtt)、ASS字幕(.ass),請將字幕直鏈傳入歌單之SubSrc欄位

我在RadioQTama播放清單中使用了來自アルバート的翻譯字幕,是直接由他的repo取得內容
我使用了一支.Net Core程式Github Workflow做CI
定時由他的gitlab取得ass直鏈,並重寫歌單

LICENSE

LICENSE
此工具以 MIT License 開源

沒有留言:

張貼留言

目錄