透過 DVDFab 備份 4K UHD 光碟 (需使用特定 UHD BD 藍光燒錄機並刷韌體降版)

透過 DVDFab 備份 4K UHD 光碟 (需使用特定 UHD BD 藍光燒錄機並刷韌體降版)

為 UHD BD 進行備份需準備以下三件事情:1. 準備一台可支援的光碟機:像是 LG BU40N、Archgon UHD 藍光燒錄機 (MD-8107-U3YC-UHDB-S)、Buffalo BRUHD-PU3-BK,或其他官方列出可支援的機器型號2. 使用 DVDFab UHD Drive Tool 重刷機器韌體,降至可支援版本3. 使用 DVDFab 進行備份 UHD BD 與一般藍光光碟的不同 UHD BD 的外型雖然與一般藍光光碟長的一樣,但實際 UHD BD 的光碟片以一般藍光光碟為基礎進行改良,調整內部數據的紀錄方式及物理特性。改良後的 UHD BD 可以容納更多的資料,最高可以容納三層的儲存空間,每層可寫入 33GB 的資料量,等於最高可寫入將近 100GB 的容量。因此需要可以相容的光碟機才能讀取 UHD BD 的內容。這還只是光碟讀取層面的相容性需求。 若想要在電腦上播放 4K UHD BD 的電影,除了需要相容的光碟機之外,還需要有相容的軟硬體才能播放。其原因是因為 UHD 藍光光碟所使用的數位版權管理(Digital Rights Management,DRM)機制需要搭配 Intel 處理器的 SGX (Intel® Software Guard...

Winsows / 如何為不明裝置安裝驅動程式 (unknown device)

Winsows / 如何為不明裝置安裝驅動程式 (unknown device)

有時候我們安裝新系統的時候,難免會漏掉一些裝置的驅動程式,卻又不確定究竟到底是哪個晶片或PCI-E、USB…裝置忘了安裝 (或是懶得打開電腦一個一個測試) 😅 這邊有兩個方法可以幫助我們找出正確的裝置名稱並且找到對應的驅動程式: 以下圖為例,目前電腦中有一個不明裝置,以下分別說明兩種查詢方法。 ▍方法一:從硬體的 Device instance path、Hardware Ids 或 Device description 詳細資訊查詢 1. 從裝置管理員當中找到未知裝置 [右鍵] → [內容] → [詳細資料] 2. 查詢 [屬性] 當中的 Device instance path (裝置例項路徑)、Hardware Ids (硬體識別碼) 或 Device description (裝置描述) 等等資訊 3. 直接 Google 或許可以找到相對應的驅動程式 ▍方法二:利用 DriverIdentifier 自動搜尋驅動程式 (本篇比較推薦的方式) 👑 DriverIdentifier 這個網站建立了大量的硬體資料庫,可以透過他的軟體分析目前電腦上所有的硬體元件,並盡可能的找出各個裝置的驅動程式,告訴你哪個未知裝置需要安裝、或是可以更新版本的驅動,非常的迅速方便。即便目前的電腦暫時不能上網,他也有離線模式:查詢的結果會輸出成一個網頁檔,將檔案一道有網路的環境並打開它,就可以查到整個驅動程式的清單。 1. 首先,先下載 DriverIdentifier 並安裝 2. 執行 DriverIdentifier,點擊...

Excel / 利用萬用字元搜尋欄位內容包含某字串並加總數值 (Sum if cells contain specific text)

Excel / 利用萬用字元搜尋欄位內容包含某字串並加總數值 (Sum if cells contain specific text)

在 Excel 當中我們可以使用 SUMIF 或 SUMIFS 函數來根據某一欄位的內容,決定另一欄位的數值是否要被加總。但如果我們要判斷的是欄位內容是否包含某個特定字串呢?這時候可以利用 * 這個萬用字元 (Wildcard) 作為判斷條件。下面範例計算當 Item 欄位內容含有 Hoodie 的字串,就加總該列的 Quantity 數值: 同樣的,也可以搜尋含有特定字串開頭或結尾的值,只需標上單邊的萬用字元即可。當萬元字元擺在前面表示字串前方還有其他文字存在,也就是字串是出現在結尾的地方。反過來把萬用字元擺在後面,就是字串出現在開頭的地方: 必須注意的是,SUMIF / SUMIFS 這個函數會忽略大小寫的差異,若需判斷大小寫的不同,則可使用下面另一個區分大小寫的方法。 其他萬用字元 (wildcare) 除了 * 這個萬用字元代表任何字元或字串外,還有其他幾個常見的萬用字元可以交互使用,使用方式如下: Target Criteria 包含 3 個字元 “???” 在 x 和 z 中間夾一個字元,如 ‘xyz’, ‘xxz’, xaz’… “x?z” 以 xyz 開頭的字串 “xyz*” 以 xyz 結尾的字串 “*xyz” 任何含有 xyz 的字串,包含 ‘xyz’...

SQL Server / 取得資料表使用的容量大小

SQL Server / 取得資料表使用的容量大小

在 SQL Server 下可以透過指令取得各 table 使用的容量和資料列數等資訊: 使用指令統計所有資料表使用容量 另外,根據微軟文件也可以使用 stored procedure 查詢資料表使用容量 (sp_spaceused): 查詢單一資料表使用容量 查詢所有資料表使用容量 Reference Get size of all tables in database | StackOverflow Get size of tables in SQL Server | ParisPolyzos Copyright announcement:Photo by sarah tatton on Unsplash

影音剪輯 / 使用 ffmpeg 分割影片 (指定開始及結束時間或固定時間長度分割)

影音剪輯 / 使用 ffmpeg 分割影片 (指定開始及結束時間或固定時間長度分割)

使用 ffmpeg 可以很有效率地完成很多影片或聲音檔的剪輯動作,安裝 ffmpeg 就不多做討論了可以參考這篇 安裝 ffmpeg 以指令進行影音剪輯,剪輯影像和聲音檔的方式是一樣的,以下就以 mp4 檔為範例。 依據給定的時間切割影片 ▍ 給定時間切割影片 (開始時間及時間長度) ffmpeg 基本的影片分割指令僅需給定開始時間和時間長度即可: 其中 -ss 參數指定起始時間、 -t 指定時間長度,上面範例是從影片第 30 秒開始,並切割時間長度為 1 分鐘 (60秒),也就是切割從 30 秒至 90 秒的影片。可以接受 timestamps 格式 HH:MM:SS.xxx 或秒數 s.msec 兩種時間格式 (如上範例)。 -i 、 -c 則為來源檔案及編碼,這裡輸入 input.mp4 檔案並且不重新編碼 (copy)。 ▍ 給定時間切割影片 (開始時間及結束時間) 另外也可以明確指定開始及結束時間切割影片,使用 -to 參數: ▍ 給定時間切割影片並重新編碼 這邊也可以給定編碼資訊分別對影像及聲音重新編碼,以下範例給定影像編碼 libx264 並且不對聲音編碼: 固定時間長度自動分割整個影片 這邊如果我們希望將一個影片檔案,依照給定的固定時間長度將整個檔案分割成數的小檔案,只需要加入...

影音剪輯 / 使用 ffmpeg 指令合併影片及聲音檔 (直接複製資料不重新編碼)

影音剪輯 / 使用 ffmpeg 指令合併影片及聲音檔 (直接複製資料不重新編碼)

最近因為在寫一些關於影片或聲音檔案合併的程式時,發現了 ffmpeg 本身有出了一個以指令介面為主的剪輯程式。其中可以透過這套程式做到基本的影片剪輯、合併、編碼等動作,詳細的指令和使用方式可以參考官方文件。 如果我們想要將一個影片檔案及聲音檔案直接合併起來,例如當我們從 YouTube 上分別將影片的影像及聲音下載下來,最終還是需要將兩個檔案合併成為一個完整的影片檔,這時候就可以簡單透過 ffmpeg 指令去完成。 ▍ 直接複製影像內容,並對聲音重新編碼後合併影片 這邊先簡單介紹最基本的合併動作:直接複製影像內容,不對影像進行重新編碼 (re-encoding),並對聲音重新編碼。這樣的目的是為了加快處裡速度,因為當我們需要對影像進行重新編碼時將會需要大量的運算,那處理速度上就會差很多,但由於聲音的資料量相對小很多,對其重新編碼並不會對速度造成太大的影響。所以一般的狀況下,如果沒有特殊的需要,我們可以選擇直接以這個方式進行合併。指令如下: 其中影像及聲音檔案最好在同一個目錄底下,且檔名應包含副檔名。在這指令下,我們是假設影片檔並不包含聲音資訊,該聲音資訊是分開存在另一個聲音檔當中,所以才需將它完全對應的合併。例如我在 YouTube 下載了影像及聲音檔案後,分別為 video.mp4 及 audio.webm,並且輸出至 output.mp4,那麼就會以下指令進行: 在這邊我們是以 AAC 編碼對聲音進行重新編碼,原因是 AAC 是 MP4 container 可支援的聲音編碼格式之一 (AAC 編碼資訊:FFmpeg Wiki: AAC Encoding Guide),若有需要,也可以替換成任何可支援的聲音編碼格式。 若影像或聲音檔的長度不相同,可以加入--shortest參數,輸出的影片將會結束在較短的時間。 ▍ 複製影像及聲音內容,且不做任何重新編碼直接合併影片 這取決與你的 container 是否可以支援該影音編碼,例如 MKV 對於編碼的支援程度就很高,這時我們可以不對影像及聲音進行任何重新編碼,只需直接複製即可。指令如下: ▍ 替換影片中的聲音,並對聲音進行重新編碼 另一種狀況,如果匯入的影像檔案以包含音軌資訊,但我們想用另一個聲音檔取代,則必須使用-map參數告訴 ffmpeg 這邊採用第一個匯入檔(input)的第一個影像資訊,及第二個匯入檔的第一個聲音資訊。指令如下: 同樣的,這裡也對聲音進行重新編碼,並採用 AAC 編碼格式。 Reference How to merge audio and video file...

Mac / Python使用Selenium爬蟲無法開啟chromedriver

Mac / Python使用Selenium爬蟲無法開啟chromedriver

最近更新MacOS之後發現正在開發的Python爬蟲程式無法啟動chromedriver了,系統出現了下面這段警告訊息: “chromedriver” cannot be opened because it is from an unidentified developer.macOS cannot verify that this app is free from malware. 中文的介面應該會顯示: 無法打開「chromedriver」,因為它來自未識別的開發者。macOS無法驗證此App未包含惡意軟體。 稍微Google一下發現好像很多人都有遇到類似的狀況,大概都是因為新版的MacOS對安全性的要求變得更高,導致許多沒有被認證的程式預設都被禁止執行,有些從網路上下載的程式也有可能遇到這種狀況。 解決的辦法有兩種: ▍取消程式的隔離註記(quarantine flag) 執行步驟: 開啟終端機(terminal) 移動到該程式的目錄下,如我的chromedriver放在下面的目錄下 執行下列任一個指令 xattr 編輯檔案目錄的附加屬性這個系統指令可以編輯檔案目錄的附加屬性,例如系統目錄屬性(com.apple.FinderInfo)或是這邊要講的隔離屬性(com.apple.quarantine)。xattr指令的語法是:xattr <options> attributes <name of application>在chromedirver所在的目錄下,執行xattr指令使用 -d 移除chromedriver的隔離屬性(com.apple.quarantine): spctl 編輯程式的安全性權限標記通常不會是這個原因造成chromedriver無法開啟,不過偶爾還是會遇到類似的狀況。出於安全性的理由,對於一些無法辨識來源的程式系統可能會禁止執行,使用spctl指令可以開啟”任何來源“的程式執行權限。spctl指令的語法是:spctl <option> <assessment label> <label name> <name of application> ▍使用開發者工作(Developer Tools) 第二種方法是使用開發者工作(Developers Tools)。如果你有安裝X-Code的話,可以將chromediver加入系統的開發者工具清單中,開發者工具會忽略隔離標記(qurantine...

SQL Server / 如何取得資料庫列表

SQL Server / 如何取得資料庫列表

想知道目前的 SQL Server 上的所有資料庫列表,可以用 SQL 指令的方式列出資料庫名稱與細節,也可以在 SQL Server Management Studio 上直接點選。 ▍方法一:SQL Query 指令 在 SQL Server 上有一個 master 的系統資料庫,裡面記錄所有關於系統層級的相關資訊,關於 master 資料庫的詳細資訊可以參考微軟的 document:master 資料庫 – SQL Server | Microsoft Docs。其中 dbo.sysdatabases 這張 table 就儲存了每個資料庫的訊息。 執行以下指令: 其中 name 欄位就是目前 SQL Server 上的所有資料庫名稱,後面還有關於資料庫儲存的位置等等訊息。 ▍方法二:直接點選 SQL Server Management Studio 的樹狀圖 如果你的資料庫並不多,或是你是一個害怕使用程式碼的人,沒有將大量資料庫名稱輸出的需求,也許你可以直接點開資料庫的樹狀圖。 在 SSMS 左側的 Object Explorer 中點開...

Win / 如何解除 Outlook禁止存取下列可能不安全的附件

Win / 如何解除 Outlook禁止存取下列可能不安全的附件

我平常工作的時候經常需要透過 E-mail 傳檔案,除了 Excel、Word 檔之外還有很多的壓縮檔、程式碼等。先不說被自己公司 Mail Server 擋下來的郵件,有時候有些附件是被 Outlook 自動隱藏起來。例如上次當我請別人寄送一個 .py 的 python 檔過來,附件檔案就這麼消失了,而信件上方會顯示這麼一條警告:「 Outlook禁止存取下列可能不安全的附件」。 其實這個檔案並沒有被 mail server 檔下,它只是被 Outlook 視為可疑檔案隱藏起來。要解開的方式非常簡單,只需要修改登錄檔機碼即可。步驟如下: 1. 進入登錄檔編輯器 點擊 Win + R 快速鍵,或是從開始列找到「執行」→ 輸入「 regedit 」進入登錄檔編輯器 2. 開啟 Outlook 設定 進入以下路徑,根據不同的 Outlook 版本可能版本號碼會有差 HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Security 3. 將不想被隱藏的檔案格式加入機碼 在 Security 中加入 Level1Remove 字串值 → 並在數值資料中填入不想被移除的檔案格式副檔名,多個副檔名以分號區隔,如 .py;.exe。 再重新打開就看得到剛剛被隱藏的檔案啦~ Photo by Markus Spiske on Unsplash

Design / 免費照片、圖片、icon 分享,可用於平面、網頁、UI 設計 (2019.08更新)

Design / 免費照片、圖片、icon 分享,可用於平面、網頁、UI 設計 (2019.08更新)

▍照片、圖片庫 Unsplash 圖片、照片 Pexels 照片、影片 ▍UI 設計 Flaticon 向量 icon ▍字型 Google Fonts 各國語言字型 ▍綜合素材庫 Envatoelements 圖片、照片、影片、音樂、字體、簡報樣板、WordPress 主題 Freepik 向量圖檔、照片、圖片、向量 icon、平面設計樣板 Copyright announcement:the featured image: Photo by Jeff Sheldon on Unsplash