GMBA冚世界山脈地圖

GMBA冚世界山脈地圖
GMBA冚世界山脈地圖
GMBA冚世界山脈地圖

『GMBA』冚世界山地生物多樣性評估計畫, 8616座山脈.登入官網

https://www.earthenv.org/mountains

下載數據

Standard – All 冚世界:8327座山脈
Standard – Basic 基础:6717座山脈
Standard – ‘300 selection’ 300: 291座山脈
Broad – All 冚世界:8616座山脈
Broad – Basic 基础:6991座山脈
Broad – ‘300 selection’ 300: 292座山脈
GMBA_Definition_v2.0 山脈定義

 

GMBA Inventory v2.0 standard 標准
GMBA Inventory v2.0 broad 包埋山脉延伸

 

欄位  
GMBA_V2_ID: 山脈唯一識別碼,五位數.將圖斑與山脈資料聯繫.
GMBA_V1_ID: GMBA Inventory v1.0圖斑ID
MapName: 山脈名ASCII,用於標記圖斑(不同山脈存在重名)
WikiDataUR: 唯一資源識別字URI,以字母Q開頭,標識https://www.Wikidata.org/存儲山脈.
MapUnit: 分類變數(Basic/Aggregate)

Basic返回最小山地圖斑.

Aggregate返回有子級圖斑,Basic多邊形聚合.

Hier_Lvl: 圖斑級別,1~10
Feature: 分類變量(14個)
Area: 以Mollweide投影計算山地圖斑平面面積,單位km2, 吾適用於GMBA Inventory v2.0_ broad
Perimeter: 山地圖斑周長,單位km
Elev_Low: DEM計最低海拔
Elev_High: DEM計最高海拔
Path: 從級別1大陸/海洋開始, 指向山脈(使用 DBaseName)完整層次路徑
Path_ID: 與GMBA_V2_ID 一致
Level_01~Level_10: 地區名
Select_300: 292個山脈定制,可用於全球和IPCC或 IPBES區域級別分析.
Countries: 與山脈相交國家名/地區名
CountryCodes: 與山脈相交國家名/地區名Alpha-3 ISO代碼
DBaseName: 唯一山脈名.冇重名.
LocalNames: Wikidata使用山脈所在國家的語言對山脈或地貌進行命名
AsciiName: MapName不帶變音符號
Name_AR: 阿拉伯山脈名
Name_DE: 德语山脈名
Name_EN: 英語山脈名
Name_ES: 西班牙語山脈名
Name_FR: 法語山脈名
Name_PT: 葡語山脈名
Name_RU: 俄語山脈名
Name_ZH 漢語山脈名
ColorAll: 0~5,六色,為圖斑著色,連續圖斑冇相同顏色.
ColorBasic: 0~5,六色,為圖斑著色,用於Basic層
Color300: 0~5,六色,為圖斑著色,用於300層

 

 

ArcGIS導入『GMBA_Inventory_v2.0_standard.shp』矢量圖.

完整『.shp』矢量圖, 随附文檔有(.shp, .shx, .dbf, .prj …) 係同一資料夹下,且冇損毁.

  1. 『File』->『Add File』->『Add File』
  2. 導入『ESACCI-LC-L4-LCCS-Map-300m-P1Y-1992-v2.0.7cds.tif』.
  3. 導入『tif』.
  4. 導入『0_standard.shp』.
  5. 『0_standard.shp』右鍵撳『符號系統』.
  6. 揀『分級色彩』.
  7. 欄位揀『Hier_Lvl』圖斑級別
  8. 方法『自然間斷㸃分級法Jenks』

 

多邊形轉㸃陣像素.

  1. 揀『Geoprocessing』->『ArcToolbox』
  2. 揀『ArcToolbox』->『Conversion Tools』->『To Raster』->『Polygon to Raster』多邊形轉㸃陣像素
  3. 撳『參數』
  4. 『Input Features』揀『0_standard』
  5. 『Value field』揀『Hier_Lvl』
  6. 『Output Raster dataset』揀『GMBA_Inventory_v2_PolygonToRaster』
  7. 『Cell assignment type(optional)』揀『CELL_CENTER儲存格中心』
  8. 『優先順序欄位』揀『Hier_Lvl』
  9. 『儲存格大小』揀『tif』
  10. 勾『建立順序欄位』.
  11. 撳『環境』
  12. 『儲存格大小』揀『tif』
  13. 『儲存格大小投影法』揀『轉换單位』
  14. 『貼齊㸃陣』揀『tif』
  15. 禁『金字塔』
  16. 『壓縮類型』揀『LZW』
  17. 『輸出座標系統』揀『GCS_WGS_1984』
  18. 撳『𢴇行』生成栅格. (㸃陣像素)
  19. 生成『0_PolygonToRaster』後,右鍵撳『符號系統』.
  20. 揀『類別』.
  21. 欄位揀『Value』.
  22. 方法『自然間斷㸃分級法Jenks』
  23. 『類別』.

 

 

 

匯出㸃陣像素. 輸出『.tiff格式』

  1. 『GMBA_Inventory_v2_PolygonToRaster』右鍵撳『資料』->『匯出點陣』.
  2. 撳『一般』
  3. 『Output Raster Dataset』填『D:\GMBA\MyProject\GMBA_Inventory_v2_Polygon.tif』
  4. 『Format(optional)』揀『TIFF』
  5. 『座標系統』揀『GCS_WGS_1984』
  6. 『正在裁剪幾何』揀『ESACCI-LC-L4-LCCS-Map-300m-P1Y-1992-v2.0.7cds.tif』
  7. 勾『維持裁剪幾何』
  8. 『㸃陣大小』欄『129600』列『64800』
  9. 勾『强制為RGB顏色』
  10. 勾『使用渲染器』
  11. 『壓縮類型』揀『LZW』
  12. 『Compression』揀『LZW』
  13. 撳『設定』
  14. 『貼齊㸃陣』揀『ESACCI-LC-L4-LCCS-Map-300m-P1Y-1992-v2.0.7cds.tif』
  15. 禁『金字塔』
  16. 禁『計算』
  17. 撳『匯出』生成『.TIFF』

ArcGIS地理訊息系統

ArcGIS地理訊息系統
ArcGIS地理訊息系統
ArcGIS地理訊息系統
ArcGIS地理訊息系統

『ArcGIS地理訊息系統』米國Esri公司, 係上世紀1980年開向量地理程式.

登入『Esri官網』下載ArcGIS

https://www.esri.com

早期『ArcGIS.Desktop』依然支援x86/x64-Windows, 去到『ArcGIS.Pro』衹支援x64-Windows.

版本 支援Windows
ESRI.ArcGIS.Desktop.FULL.v10.8.2 x86/x64
ESRI.ArcGIS.Pro.v3.1 x64
ESRI.ArcGIS.Pro.v3.0 x64 冇使賬號
ESRI.ArcGIS.Pro.v3.3 x64 冇使賬號
ESRI.ArcGIS.Pro.v3.5 x64 賬號登錄

 

安装『ArcGIS.Pro』

  1. 𢴇行『exe』
  2. 解壓包路徑吾得有漢字, 衹能英文字母, 似『C:\ArcGIS Pro 3.0』咁樣. 吾係會『.cab』冇法讀取.
  3. 取消『點擊此處參與Esri用戶體驗改善計畫(推薦)』
Click here to participate in the Esri User Experience Improvement program.(Recommended)
  1. 𢴇行『ArcGIS_Pro_331_190126.msp』升級3.31
  2. 𢴇行『ArcGIS_Pro_332_190125.msp』升級3.32
  3. 𢴇行『ArcGISProLP_33_zh_TW_190152.exe』漢化
  4. 𢴇行
  5. 允許

ESA CCI Land Cover歐洲航天局-土地表層數據300米

ESA CCI Land Cover歐洲航天局-土地表層數據300米
ESA CCI Land Cover歐洲航天局-土地表層數據300米
ESA CCI Land Cover歐洲航天局-土地表層數據300米

歐洲航天局長期進行頂目, 使用衛星航拍, 分析土地表層數據.解像度300米.

登入『ESA CCI Land Cover』官網,

http://www.esa-landcover-cci.org/

撳『Downloading the CCI LC Products』

撳『http://maps.elie.ucl.ac.be/CCI/viewer/download.php』

係右側填寫訪問資料

  1. 『Name』填姓名
  2. 『Organisation』填組織
  3. 『e-mail』填郵箱
  4. 勾『同意條款』

撳『Validate』

http://maps.elie.ucl.ac.be/CCI/viewer/download.php#usertool

依次下載

快速使用者指南
產品使用者指南
用戶工具5.0(壓縮)
用戶工具 4.3 描述(文檔)

下載『FileZilla』登入FTP, 連線伺服器.

FileZilla
Server: geo10.elie.ucl.ac.be
User: none
password: none

下載氣候研究資料包CCI

ftp://geo10.elie.ucl.ac.be/CCI

下面有三個資料夾, 冚辦闌下載落蒞.

LandCover 土地覆蓋
Seasonality 季節性
WaterBodies 水體

『.tiff』檔灰度色,photoshop轉為256色, 重新載入調色板

index color text
0 0x000000 冇數據
10 0xFFFF64 雨養耕地
11 0xFFFF64 草皮覆蓋
12 0xFFFF64 樹木或灌木覆蓋
20 0xAAF0F0 灌溉農田或洪水
30 0XDCF064 農田(>50%)/自然植被(喬木,灌木,草本植被)(<50%)
40 0XC8C864 自然植被(喬木,灌木,草本植被)(>50%)/農田(<50%)
50 0x006400 樹木覆蓋,闊葉,常綠,封閉到開放(>15%)
60 0x00A000 樹木覆蓋,闊葉,落葉,封閉到開放(>15%)
61 0x00A000 樹木覆蓋,闊葉,落葉,封閉(>40%)
62 0x00A000 樹木覆蓋,闊葉,落葉,開放(15-40%)
70 0x003C00 樹木覆蓋,針葉,常綠,封閉到開放(>15%)
71 0x003C00 樹木覆蓋,針葉,常綠,封閉(>40%)
72 0x003C00 樹木覆蓋,針葉,常綠,開放(15-40%)
80 0x285000 樹木覆蓋,針葉,落葉,封閉到開放(>15%)
81 0x285000 樹木覆蓋,針葉,落葉,封閉(>40%)
82 0x286400 樹木覆蓋,針葉,落葉,開放(15-40%)
90 0x788200 樹木覆蓋,混合葉型(闊葉和針葉)
100 0x8CA000 混合喬木和灌木(>50%)/草本覆蓋(<50%)
110 0xBE9600 混合草本覆蓋率(>50%)/喬木和灌木(<50%)
120 0x966400 灌木叢Shrubland
121 0x966400 常綠灌木叢
122 0x966400 落葉灌木叢
130 0xFFB432 草原
140 0xFFDCD2 地衣和苔蘚
150 0xFFEBAF 稀疏植被(喬木,灌木,草本植被)(<15%)
151 0xFFFA64 稀疏樹木
152 0xFFD278 稀疏灌木(<15%)
153 0xFFEBAF 稀疏草本植被(<15%)
160 0x00785A 樹木覆蓋,洪水,淡水或咸水
170 0x009678 樹木覆蓋,洪水,鹽水
180 0x00DC82 灌木或草本覆蓋物,淹沒,淡水/咸水/微咸水
190 0xC31400 都市地區
200 0xFFF5D7 裸露區域
201 0xDCDCDC 合併裸露區域
202 0xFFF5D7 未加固裸露區域
210 0x0046CB 水體
220 0xFFFFFF 永久冰雪

 

BIGTIFF圖檔解析

BIGTIFF圖檔解析
BIGTIFF圖檔解析

高解像度『TIFF』圖片, 加入『BIGTIFF』規范,使用64bit支緩4GB以上圖片. 支緩『ZIP』壓縮.擴展名『.tf8』『.btf』『.tiff』.

『BIGTIFF』圖檔頭Image File Header(IFH)

typedef struct BIGTIFF_HEAD_TYP { BIGTIFF圖檔頭
        WORD ByteOrder; 字節順序  ‘II’ / ‘MM’
        WORD version; BIGTIFF圖檔版本  0x002B
        WORD     ReservedOffset; 保留
        WORD     Reserved; 保留
DWORD64  offset; 首個IFD偏移量64BIT,邊界對齊4
}BIGTIFF_HEAD, * BIGTIFF_HEAD_PTR;  

區分『BIGTIFF』仝『TIFF

#define TIFF_VERSION          0x002A TIFF圖檔版本
#define BIGTIFF_VERSION       0x002B BIGTIFF圖檔版本

『BIGTIFF』新增三個數據類型

#define BIGTIFF_TYPE_LONG8     16 冇符號8字節(64位)整数
#define BIGTIFF_TYPE_SLONG8    17 有符號8字節(64 位)整数
#define BIGTIFF_TYPE_IFD8       18 无符号8字節(64位)IFD偏移。

『BIGTIFF』新增ZIP壓縮類型 8

#define TIFF_Compression_ZIP  8 ZIP壓縮, MAX_WBITS帶 zlib 頭和尾

『BIGTIFF』目錄入口 Directory Entry(DE)

typedef struct BIGTIFF_ENTER_TYP { 即係數值
WORD  tag; 標識
        WORD  type; 數據類型 1~12 16~17
        DWORD64 count; 數量64BIT
        union {

DWORD64 data;

數值64BIT
                DWORD64 offset;

};

偏移64BIT
}BIGTIFF_ENTER, * BIGTIFF_ENTER_PTR;  

『BIGTIFF』目錄 Image File Directory(IFD)

typedef struct BIGTIFF_DIRECTORY_TYP {  
        DWORD64  count; 目錄數量64BIT
        BIGTIFF_ENTER enter_array[1]; 目錄,即係數值
        // DWORD64 offset; 64BIT下壹個偏移-BIGIFD
}BIGTIFF_DIRECTORY, * BIGTIFF_DIRECTORY_PTR;  

『高解像圖片』組織成『Tiled瓦片』而非『條帶Strip』, 低中解像圖像用標準『TIFF』『條帶Strip』.『高解像圖片』切割成大致方正塊狀,而非長條『條帶Strip』.壓縮效果更佳.

『Tiled瓦片』取代『StripOffsets』、『StripByteCounts』『RowsPerStrip』. 切忽仝時用『Tiled瓦片』仝『條帶Strip』.

『TileWidth』仝『TileLength』『瓦片』定義寬高. 所有『瓦片』『寬高』相同, 『瓦片』邊界填充.

當『ImageWidth』=129, 『TileWidth』= 64.則分割3個『Tiled瓦片』, 最後一個填充63個像素.

平鋪邊界代價需要浪費一定空間,但係壓縮可以將填充區壓縮到接近0.

即使數據冇壓縮,『Tiled瓦片』祗适用於『高解像圖片』. 『高解像圖片』分割大量『Tiled瓦片』, 填充區祈浪費百分之幾空間,

『Tiled瓦片』被單獨壓縮, 仝『條帶Strip』壓縮一樣. 即每個『Tiled瓦片』數據被視為單獨『條帶Strip』.

『Tiled瓦片』欄位:

『Tiled瓦片』欄位:    
TileWidth SHORT or LONG 瓦片寬度, 必須16倍數
TileHeight SHORT or LONG 瓦片高度, 必須16倍數
TileOffsets LONG or LONG8 瓦片(數據)偏移, 從左到右從上到下的順序排列.
TileByteCounts SHORT or LONG or LONG8 瓦片數據字節量, 從左到右從上到下的順序排列.

載入瓦片數據

bool Load_Tile_TIFF(TIFF_PTR tiff){
PBYTE  tile_buffer; // 瓦片圖像

DWORD64    tile_size; // 瓦片數據字節量

DWORD64    tile_offset;// 瓦片数据偏移

DWORD64 tiles_countX;// 瓦片橫跨

DWORD64 tiles_countY;  // 瓦片縱跨

DWORD64 line_size;

DWORD64 index, i, j; // 索引

DWORD64 offset;// (數據)偏移.

DWORD64 count;// 數據字節量

DWORD64 size;// 寫入量

DWORD64 buffer_offset;// 圖像数据偏移

DWORD64 buffer_size;// 圖像数据字節

tiles_countX = (tiff->ImageWidth + tiff->TileWidth – 1) / tiff->TileWidth;// 瓦片橫跨
tiles_countY = (tiff->ImageHeight + tiff->TileHeight – 1) / tiff->TileHeight;// 瓦片縱跨
tile_size = tiff->TileWidth * tiff->TileHeight * tiff->SamplesPerPixel; // 瓦片數據字節量
tile_buffer = (PBYTE)malloc(tile_size);// 分配記憶體
size = 0;// 寫入量
// 計算圖像所占長度

buffer_size = (tiff->ImageWidth * tiff->ImageHeight) * tiff->SamplesPerPixel;

// 定位平鋪/瓦片图像数据

for (j = 0; j < tiles_countY; ++j){

for (i = 0; i < tiles_countX; ++i){
index = j * tiles_countX + i;
offset = tiff->TileOffsets[index]; // (數據)偏移.

count = tiff->TileByteCounts[index]; // 數據字節量

// 讀瓦片數據

if (tiff->Compression == TIFF_Uncompressed)

{// 未壓縮

memcpy(tile_buffer, tiff->data + offset, count);// 复制图像数据

size = size + count;// 累積寫入量

}else

if (tiff->Compression == TIFF_Compression_LZW)

{// LZW 解壓縮

tile_size = ((tiff->TileWidth * tiff->TileHeight) * tiff->SamplesPerPixel);

UnCompress_Data_LZW(&_lzw, tile_buffer, &tile_size, tiff->data + offset, count);

size = size + tile_size;// 累積寫入量

}

else

if (tiff->Compression == TIFF_Compression_ZIP)

{// ZIP 解壓縮

DWORD _tile_size = ((tiff->TileWidth * tiff->TileHeight) * tiff->SamplesPerPixel);

Uncompress_Data_ZIP(tile_buffer, &_tile_size, tiff->data + offset, (DWORD)count, MAX_WBITS);

size = size + _tile_size;// 累積寫入量

}

// 寫入瓦片數據

for (DWORD tindex = 0; tindex < tiff->TileHeight; ++tindex)

{

if ( (j * tiff->TileHeight + tindex)  >= tiff->ImageHeight )

break;// 超出

buffer_offset = ( ((j * tiff->TileHeight + tindex) * tiff->ImageWidth) + (i * tiff->TileWidth)) * tiff->SamplesPerPixel;// 圖像数据偏移
tile_offset = tindex * tiff->TileWidth * tiff->SamplesPerPixel;// 瓦片数据偏移
if ((tiff->TileWidth * i) > tiff->ImageWidth)

line_size = (tiff->ImageWidth – (tiff->TileWidth * (i – 1))) * tiff->SamplesPerPixel;

else

line_size = tiff->TileWidth * tiff->SamplesPerPixel;

if (buffer_offset >= buffer_size)

break;// 截斷填充區

                                memcpy(tiff->buffer + buffer_offset, tile_buffer + tile_offset, line_size);

}

}

}

        free(tile_buffer);// 释放

return true;

}

LZW壓縮算法-TIFF版本

LZW壓縮算法-TIFF版本
LZW壓縮算法-TIFF版本

LZW壓縮算法, 三位發眀家『Lemple』『Ziv』『Welch』首字母組合而蒞.

LZW『壓縮』『解壓』算法極高速無損,算法基於『字符串表string_table, 映射代碼Code』和『字符串string,重要它極易實現. 易於嵌入程式, 壓縮數據.

LZW壓縮

 

STRING

字符/數據, 文本代表字符, 圖像代表數值

prefix

前綴字符串

suffix

後綴字符串

+

連接字符串

code

代碼,字符串代碼編號.

string_table

字典/字符串表存放『代碼Code』和『字符串string

首先定義『STRING字符串』結构.

typedef struct LZW_STRING_TYP {

 

        int code;

代碼,代碼應盡量短,至多12Bit

        BYTE data[64];

字符/數據 

        int  length;

字符/數據長度

}LZW_STRING, * LZW_STRING_PTR;

 

CODE限制12BIT代碼, 字典至多4096個字符串.

#define   LZW_MAX_STRING      4096  

(2^12)

定義『LZW』結构.

typedef struct LZW_TYP

 

PBYTE   sour; 

蒞源數據

DWORD   sour_position;

蒞源數據當前位置

DWORD   sour_position_bit;

跟踪BIT邊界

DWORD   sour_length;

蒞源數據長度

PBYTE   dest;

目標數據緩存

DWORD   dest_size;

目標緩存長度

DWORD   dest_position;

目標數據當前位置

DWORD   dest_position_bit;

跟踪BIT邊界

int         string_count;

字典量

LZW_STRING  string_table[LZW_MAX_STRING];

字典/字符串表

}LZW, * LZW_PTR;

 

初始字典/字符串表,初值有256,編號係0~255, 字符/數據亦係0~255, 255之後定義兩個代碼『清除碼ClearCode=256 仝『結束碼EoiCode=257, 一共258.

#define   LZW_CODE_CLEAR      0x0100

0x0100(256) 清除碼 ClearCode

#define   LZW_CODE_EOI        0x0101

0x0101(257) 結束碼 EoiCode

初始字典/字符串表,

bool Init_StringTable_LZW(LZW_PTR lzw) {

        for (index = 0; index < 256; ++index){

lzw->string_table[index].code = index;

            lzw->string_table[index].length = 1;

                lzw->string_table[index].data[0] = index;

        }

        code = LZW_CODE_CLEAR;

        lzw->string_table[LZW_CODE_CLEAR].code = LZW_CODE_CLEAR;  // 清除碼

        lzw->string_table[LZW_CODE_CLEAR].length = 2;

    memcpy(lzw->string_table[LZW_CODE_CLEAR].data, &code, 2);

        code = LZW_CODE_EOI;

        lzw->string_table[LZW_CODE_EOI].code = LZW_CODE_EOI; // 結束碼

        lzw->string_table[LZW_CODE_EOI].length = 2;

        memcpy(lzw->string_table[LZW_CODE_EOI].data, &code, 2);

lzw->string_count = 258;

}

將代碼CODE寫入輸出流,首個代碼係『ClearCode#256, 以『EOICode#257』結束.

因為係壓縮數據,數據将吾以8BIT/16BIT對齊, 代碼Code以字典字符量跟踪Bit邊界.首個CODE將是9Bit代碼小於512. 字典量達係#510 之後10Bit代碼小於1024. #1022之後11Bit代碼小於2048. #2046之後12Bit代碼小於4096.代碼左移至高位,接連上個代碼.

bool Write_Code_LZW(LZW_PTR lzw, DWORD code) {

int bits = 9; 

PBYTE data;

        if (lzw->string_count <= LZW_MASK_9BIT)

                bits = 9;

        else

        if (lzw->string_count <= LZW_MASK_10BIT)

                bits = 10;

        else

        if (lzw->string_count <= LZW_MASK_11BIT)

                bits = 11;

        else

        if (lzw->string_count <= LZW_MASK_12BIT)

                bits = 12;

        int byte_offset = lzw->dest_position_bit / 8;

        int bis_offset = lzw->dest_position_bit % 8;

        code = code << (32 – bits);

        code = code >> bis_offset;

        data = (PBYTE) &code;

        for (int i = 0; i < 4; ++i){

                *(lzw->dest + byte_offset + i) = *(lzw->dest + byte_offset + i) | data[4 – i – 1];

                if (byte_offset + i >= lzw->sour_length)

                        break; // 數據尾,跳出

        }

        lzw->dest_position_bit = lzw->dest_position_bit + bits;// 蒞源數據當前位置

        lzw->dest_position = lzw->dest_position_bit / 8;// 蒞源數據當前位置

        return true;

}

加入字符串至字典.首個添加到字串將位於258.

bool Add_StringTable_LZW(LZW_PTR lzw, LZW_STRING_PTR string){

WORD index;

LZW_STRING_PTR str;

index = lzw->string_count;

++lzw->string_count;

str = &lzw->string_table[index];

        str->code = index;// 代碼應盡量短,至多12Bit

str->length = string->length;

        memcpy(str->data, string->data, string->length);

        return true;

}

讀蒞源CHAR字符, 未壓縮數據

bool Read_NextChar_LZW(LZW_PTR lzw, LZW_STRING_PTR string){ 

BYTE data;

        if (lzw->sour_position + 1 > lzw->sour_length)

                return false; // 

        data = *(lzw->sour + lzw->sour_position);

        lzw->sour_position = lzw->sour_position + 1;// 蒞源數據當前位置 

        string->data[0] = data;

        string->length = 1;

        return true;

}

壓縮算法步驟:

bool Compress_Data_LZW(PBYTE dest, DWORD* dest_length, PBYTE sour, DWORD sour_length){

LZW lzw;

        LZW_STRING prefix;// 前綴字符

        LZW_STRING suffix;// 後綴字符

        LZW_STRING string;

        WORD code;// 代碼

        Init_LZW(&lzw, dest, *dest_length, sour, sour_length); // 初始LZW

        Init_StringTable_LZW(&lzw); // 初始字典

        Write_Code_LZW(&lzw,LZW_CODE_CLEAR); // 寫目標

        Zero_String_LZW(&prefix);// 前綴字符串清零

while (Read_NextChar_LZW(&lzw, &suffix)) {       // 讀下一字符,後綴字符

Copy_String_LZW(&string, &prefix); // 前綴

  Cat_String_LZW(&string, &suffix);// 前綴+後綴

                if ( Find_StringTable_LZW(&lzw, &string, &code) ){ // 字符串查代碼

                        Cat_String_LZW(&prefix, &suffix);// 後綴 = 前綴+後綴

                }

else

                {

                Find_StringTable_LZW(&lzw, &prefix, &code);// 查找前綴

                        Write_Code_LZW(&lzw, code);// CODE代碼寫入輸出流

                        // 前綴+後綴

                        Copy_String_LZW(&string, &prefix); // 前綴

                        Cat_String_LZW(&string, &suffix);// 前綴+後綴

                        Add_StringTable_LZW(&lzw,&string);// 加入字符串至條目表

                        Copy_String_LZW(&prefix, &suffix); // 後綴變前綴

                }

        }

Find_StringTable_LZW(&lzw, &prefix, &code);// 查找前綴

        Write_Code_LZW(&lzw, code);// CODE代碼寫入輸出流

Write_Code_LZW(&lzw, LZW_CODE_EOI);// CODE代碼寫入輸出流

        *dest_length = lzw.dest_position;         // 輸出压缩長度

        if (lzw.dest_position_bit / 8 != 0)

                ++(*dest_length);

        return true;

}

讀壓縮CODE代碼,必須跟踪Bit邊界. 代碼右移至低位,提取代碼. 代碼Code以字典字符量跟踪Bit邊界.首個CODE將是9Bit代碼小於512. 字典量達係#510 之後10Bit代碼小於1024. #1022之後11Bit代碼小於2048. #2046之後12Bit代碼小於4096.

WORD Read_NextCode_LZW(LZW_PTR lzw){

        DWORD data;

        int bits = 9;   

        if (lzw->string_count <= LZW_MASK_9BIT) // 小於512

                bits = 9;

        else

       if (lzw->string_count <= LZW_MASK_10BIT) // 小於1024

                bits = 10;

        else

        if (lzw->string_count <= LZW_MASK_11BIT) // 小於2048

                bits = 11;

        else

        if (lzw->string_count <= LZW_MASK_12BIT) // 小於4096

                bits = 12;

        int byte_offset = lzw->sour_position_bit / 8;

        int bis_offset  = lzw->sour_position_bit % 8;

        data = (*(lzw->sour + byte_offset))     << (24+bis_offset) |

                   (*(lzw->sour + byte_offset + 1)) << (16+bis_offset) |

                   (*(lzw->sour + byte_offset + 2)) << ( 8+bis_offset) ;

        data = data >> (32 – bits);

        lzw->sour_position_bit = lzw->sour_position_bit + bits;// 蒞源數據當前位置

        lzw->sour_position  = lzw->sour_position_bit / 8;// 蒞源數據當前位置

        return (WORD)data;

}

壓縮算法步驟:

bool UnCompress_Data_LZW(PBYTE dest, DWORD* dest_length, PBYTE sour, DWORD sour_length){

        LZW lzw;

        WORD code = 0;

        WORD OldCode = 0;

        LZW_STRING string;

        LZW_STRING OldString;

        if ( dest == NULL || dest_length == NULL || sour == NULL || sour_length == 0)

                return false;

        Init_LZW(&lzw, dest, *dest_length, sour, sour_length); // 初始LZW

        while (TRUE)

        {

                code = Read_NextCode_LZW(&lzw);// 讀蒞源數據

                if (code == LZW_CODE_EOI)// 結束碼

                        break;// 數據結束

                if (code == LZW_CODE_CLEAR) {    // 清除碼

                         Init_StringTable_LZW(&lzw);// 初始字典

                         code = Read_NextCode_LZW(&lzw);// 讀蒞源數據

                         if (code == LZW_CODE_EOI)// 結束碼

                                 break;// 數據結束

                 Find_StringTable_LZW(&lzw, code, &string);

                         Write_String_LZW(&lzw, &string);// 將字符串寫入輸出流

                         OldCode = code;

                }

                else

                {  

// 代碼稳查字符串

          if (Find_StringTable_LZW(&lzw, code, &string)) {

                        Write_String_LZW(&lzw, &string); // 將字符串寫入輸出流

Find_StringTable_LZW(&lzw, OldCode, &OldString);        // 代碼稳查字符串

Cat_String_LZW(&OldString, &string, 1); // 連接字符串 

                   Add_StringTable_LZW(&lzw, &OldString); // 加入字符串至條目表

                        OldCode = code;

                }

        else{   // 代碼稳查字符串

                Find_StringTable_LZW(&lzw, OldCode, &OldString);

         Cat_String_LZW(&OldString, &OldString, 1); // 連接字符串 

Write_String_LZW(&lzw, &OldString); // 將字符串寫入輸出流

         Add_StringTable_LZW(&lzw, &OldString); // 加入字符串至條目表

                                OldCode = code;

                        }

                }

        }

        *dest_length = lzw.dest_position;         // 輸出压缩長度

        return true;

}

 

 

AMD 銳龍Ryzen7 5800X

AMD 銳龍Ryzen7 5800X
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
AMD 銳龍Ryzen7 5800X
AMD 銳龍Ryzen7 5800X
AMD 銳龍Ryzen7 5800X
AMD 銳龍Ryzen7 5800X
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
幽靈棱鏡Wraith MAX
AM4防撥支架
AM4防撥支架
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120
幽靈棱鏡Wraith MAX風扇120

上次粒『AMD Ryzen5 5600X』畀我跌彎,依鋪『AMD Ryzen7 5800X』搭『Gigabyte X570 AORUS MASTER』,預先買定『幽靈棱鏡Wraith MAX』加強散, 装『幽靈棱鏡Wraith MAX』最好落AM4防撥支架, 原厰硅脂黏性强,拆果陳容易連CPU連根撥起. 但係粒U有105W, 個舊機壹冚蓋, 播條片都過90度輕機重啟.

柝左原厰風扇,换『AVC-12038-12v-3.12A-PWM』,處於Default模式CPU(1 Core) 閂門吾輕機. 係OC模式CPU(ALL Cores) 冇冚盖通風稳定吾輕機, 冚盖依然輕機重啟.睇蒞要换機箱.

風扇 轉速PRM 噪音 Default-CPU(1 Core) OC-CPU(ALL Cores)
AVC-12038-3.12A 7500轉 猛虎呌气 稳定最高90℃ 輕機重啟
DELTA-12038-1.6A 4355轉 可接受 稳定最高90℃ 輕機重啟
QISU-14038-1.45A 4623轉 可接受 稳定最高90℃ 輕機重啟

 

 

 

CPU-AMD-AM4- CPU-Z Single Thread CPU-Z Multi Thread
AMD Ryzen5 1500X 342 2244.2
AMD Ryzen5 5600X 512 4042.6
AMD Ryzen7 5800X 607.4 6711.1

 

 

AMD Ryzen7 5800X
散熱 幽靈棱鏡Wraith MAX
TDP 105W
核芯速度Core Speed 3600 HMz
電壓Core Voltage 1.2v
基頻Bus Speed 100HMz
倍頻Multplier 37
核芯Cores 8核
線程Threads 16
步進Stepping 0

 

SAMSUNG-ECC伺服記憶體-32GB-2RX8-PC4-3200AA

SAMSUNG-ECC伺服記憶體-32GB-2RX8-PC4-3200AA
SAMSUNG-ECC伺服記憶體-32GB-2RX8-PC4-3200AA
SAMSUNG-ECC伺服記憶體-32GB-2RX8-PC4-3200AA
SAMSUNG-ECC伺服記憶體-32GB-2RX8-PC4-3200AA
SAMSUNG-ECC伺服記憶體-32GB-2RX8-PC4-3200AA

幾年買前『Gigabyte X570 AORUS MASTER』, 中古都要千幾紋, x570揀記憶體,多年之前買雜牌DDR4,降低頻率都死機, x570唯壹好處係,支持ECC伺服記憶體. 後蒞買左兩條『SAMSUNG-32GB-2RX8-PC4-3200AA』先冇死機.等遲D買多兩係組夠128GB.

Word禁止大細寫自動校正

Word禁止大細寫自動校正
Word禁止大細寫自動校正

WORD自動修正大細寫,其實可以禁文法檢查.

  1. 撳『檔䅁』->『選項』左下角
  2. 撳『校訂』
  3. 禁『自動拼字檢查』
  4. 禁『自動標記文法錯誤』
  5. 禁『常混淆字』
  6. 禁『拼字檢查時亦檢查文法』
  7. 撳『自動校正選頂』
  8. 禁『更正前兩個英文字母大寫錯誤』
  9. 禁『英文句首字母大寫』
  10. 禁『表格單元首個英文句母大寫』
  11. 禁『英文日期首字大寫』
  12. 禁『更正意外撳Caps Lock鍵錯誤』
  13. 撳『確定』保存生效.

 

 

 

 

 

Linux目錄組織結構

Linux目錄組織結構
Linux目錄組織結構

『Linux』仝『Windows』相繼係上世未90年代誕生,用慣『Windows』初接觸『Linux』吾慣目錄組織.

係『Windows』系統,磁碟都會分配盤符.1.44磁碟『A:』, WINDOWS系統磁碟『C:』.

係『Linux』系統『USB磁碟』『SATA磁碟』『M.2磁碟』『CD-ROM』…冚辦爛硬件都被分配『資料夾』畀佢.吾分大細寫.

係『Linux』以『樹型結構』組織『資料夾』,『樹型結構』頂端係根目錄. 用『/』表示.根目錄下『資料夾』有各自用庶. 區分大細寫.

/ 根目錄
/boot 啟動引導配置, 內核文檔
/dev 每個硬體設備係『/dev』下分配壹個『資料夾』, 通過『資料夾』下『文檔』訪問硬體設備.
/etc 軟體程式配置檔
/home 存儲用戶帳號.帳號
『exos』資料夾路徑『home/exos』.
/usr/lib 系統程式配置
/mddia 媒體設備,『CD-ROM』仝『USB磁碟』係庶訪問
/mnt 掛載設備
/opt
/proc/sys 系統運行狀態信息
/root root帳號目錄
/sbin root帳號專用程式.
/usr 通用軟體程式
/var 軟體程式日誌文檔

 

Ubuntu攻略

Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略
Ubuntu攻略

 

将『linux』仝幾千『app』測試結合成『ubuntu』. 仝windows吾仝, 『Ubuntu』免費.

係裝『Ubuntu』過程,應得單獨壹隻磁碟,以免引導扇區寫係递庶.特別係M.2磁碟安裝,引導扇區寫入它首隻穩到sata磁碟.

 

登錄『ubuntu官網

https://ubuntu.com/
https://ubuntu.com/download/desktop

下載桌面版『ubuntu-24.04.2-desktop-amd64.iso』约莫6GB.至小穩隻8GB-USB磁碟蒞刻錄鏡像.

https://mirror-hk.koddos.net/ubuntu-releases/24.04.2/ubuntu-24.04.2-desktop-amd64.iso

balenaEtcher』或『Rufus刻錄『.iso』鏡像.『Ubuntu』徑已係USB磁碟.

插入USB磁碟.著機撳『DELETE』鍵登入BIOS.以『UEFI: SMI USB DISK 1100,Partition』引導.

UEFI: SMI USB DISK 1100,Partition 2

試用或安装Ubuntu .

*Try or Install Ubuntu

等壹陳登錄桌面,但系統存係『USB磁碟』速度慢.

装『Ubuntu』入『M.2磁碟』以提高運行速度.撳下角『Install Ubuntu 24.04.2 LTS』.

  1. 選擇語言, 指桌面GNONE語言.
  2. 無障礙功能, 吾使變更設定.
  3. 選擇鍵盤配置, 擇『英語(美式)』
  4. 連接網際網路, 揀『有線網路』,『WIFI網路』装掂後設定.
  5. 『安装程式有可用更新』撳『跳過』. 吾係又要重新蒞過.
  6. 撳『安裝Ubuntu』
  7. 撳『互動式安裝』
  8. 撳『完整安裝』
  9. 勾『安裝等三方軟體使用顯示卡, 無線網络等硬體』
  10. 勾『安裝等三方軟體以提供媒體格式支援』
  11. 撳『清除磁碟並安裝Ubuntu』,自動分兩個區,分區1掛載『/boot/efi』引導配置.分區2掛載『/』系統.『手動硬碟分割』同樣要甘樣分割.『Ubuntu』默認『ext4』格式.
分區 格式 掛載
NVME0n1p1 fat32 /boot/efi
NVME0n1p2 ext4 /
  1. 『name』名: 人名
  2. 『USERNAME』用戶名: 吾畀用『admin』『root』.要易記吾超4字母.
  3. 『PSSSWORD』密碼: 字母數字混合.
  4. 『Hostname』主機名: 以『系统-主板』命名, 類似『Ubuntu-x450itx』
  5. 揀『city城市』『time zne時區』
  6. 撳『開始安裝』, 可以去喫茶,壹粒鐘後…
  7. 『Ubuntu 24.04.2 LTS装完』.撳『立即重新啟動』
  8. 猛『USB磁碟』撳『enter』鍵重啟.

 

OpenWRT-SSH遠程登錄-PuTTY終端

OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端
OpenWRT-SSH遠程登錄-PuTTY終端

OpenWrt_SSH_PuTTY

OpenWRT-SSH遠程登錄-PuTTY終端

『SSH』全名『Secure Shell』,遠程網絡登錄系統,『shell』係指命令行模式. 『OpenWRT』可能冇顯示器,係自已台電腦,通過『SSH』遠程網絡登錄『OpenWRT』.

查『OpenWRT』IPv4地埗.

ifconfig  br-lan

例如

Inet addr:192.168.2:1

配置『SSH』,『openwrt』通過『dropbear』實現.

vim    /etc/config/dropbear

編輯『dropbear』

config  dropbear  
  option   enable   ‘1’ 1:SSH使能

0:禁制

  option   PasswordAuth  ‘on’ 密碼驗證
  option   RootPasswordAuth ‘on’ 允許root賬戶憑密碼登錄
  option   RootLogin   ‘ on ‘ 允許root賬戶登錄
  option  Port  ’22’ SSH連接埠默認22
  option  Interface ‘lan’  
  option  BannerFile  ‘/etc/banner’ 登錄Logo
  option  SSHKeepAlive ‘300’ 心跳300
  option  IdleTimeout  ‘0’ 休閑超時,0禁用.

設置root賬戶密碼,執行『passwd』

passwd  
Changing password for root  
new password: 填root帳戶密碼
Retype password: 再填壹次
Password for root changed by root  

重啟SSH

/etc/init.d/dropbear  restart

 

下載『PuTTY』輕量級SSH客戶端, 先登入官網

https://www.putty.org/
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

最新0.83版. 下載『putty.exe』可直執行,仝『installer.msi』安将包.

https://the.earth.li/~sgtatham/putty/latest/w64/putty-64bit-0.83-installer.msi
https://the.earth.li/~sgtatham/putty/0.83/w64/putty.exe
  1. 執行『exe
  2. 『Host Name(or IP address)』: OpenWrt地埗-例『168.2:1』
  3. 『Port』:SSH連接埠默認『22』
  4. 『Connection type』:揀『SSH』
  5. 撳『Open』.
  6. 首次連線提示『PuTTY Security Alert』,OpenWtr密鈅未存儲,係咪信賴佢,撳『Accept』接受.彈出黑色命令行窗口.
  7. 『Login as』賬號填『root』
  8. 『root@192.168.2.1’s passwort:』撳鍵盤吾會顯示密碼, 撳『Enter』登入.

 

或者係『Windows10』用命令行模式直接埶行 ssh

ssh   username@hostname

 

OpenWRT漢化

OpenWRT漢化
OpenWRT漢化
OpenWRT漢化
OpenWRT漢化

『OpenWRT』安裝圖形界面後,語言祈有英文揀,可再線下載漢化包.

更新安裝包列表

opkg  update

安裝圖形界面

opkg  install  luci

OpenWRT漢化

opkg  install  luci-i18n-base-zh-tw

登入後台luci經已漢化

  1. 撳『System』->『system』
  2. 撳『Lanuage and style』 ->『language』
  3. 揀『繁體中文(Chinese Traditional)』

 

MediaTek聯發科-MT7925- WIFI7冇線網卡

MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MVME TO M.2 WIFI
MVME TO M.2 WIFI
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡
MediaTek聯發科-MT7925- WIFI7冇線網卡

砌WIFI軟路郵,買WIFI冇線網卡做AP熱點,『Intel-AX210/EB200』閹左祇發射2.4G信號. 改買『MediaTek-MT7925』發射5G信號.

『MT7925』係『M.2-KEY E』接口,插係MVME槽要買『MVME TO M.2 WIFI』轉接卡,因『SUPERMICR X10SDV-4C-TLN2F』得壹條PCIE槽, 留番畀5G模塊.

壹定要下載穩定版『OpenWrt 24.10.1』,就係下載『OpenWrt 24.10.0』搞到WIFI信號時有時冇,.

係『OpenWrt』搜索『MT7925』驅動.

opkg list | grep mt792

安裝『MT7925』驅動.

opkg install kmod-mt7925-common
opkg install kmod-mt7925-firmware
opkg install kmod-mt7925e
opkg install kmod-mt7925u
opkg install kmod-mt792x-common
opkg install kmod-mt792x-usb
opkg install mt7925bt-firmware

wifi密碼加密

opkg install wpa-supplicant 用戶端模式
opkg install hostapd AP模式或AD-HOC模式

『vim /etc/config/wireless』冇線網絡配置文檔

wifi-device 驅動設備名
radio0 WIFI冇線網卡驅動1
radio1 WIFI冇線網卡驅動2

設備類型

type 設備類型
mac80211 驅動類型固定為mac80211

冇線信道

channel 冇線信道
1~13之間 2.4G默認信道1
36,40,44,48,52,56,60,64,149,153,157,161,165 中國產手機限制5G信道,得幾條揀, 吾係手機穩吾到5G-WIFI
auto 自動揀最優信道

冇線頻寬htmode

htmode 冇線頻寬
HT20 20MHz頻寬,支持1-13信道
HT40 40MHz頻寬,支持1-7信道
VHT20 20MHz頻寬
VHT40 40MHz頻寬
VHT80 80MHz頻寬

冇線协議 hwmode

hwmode 冇線协議
11b/11g/11n 2.4G
11n/11a/11ac 5G

帶寬共存

ht_coex  
1 帶寬20MHZ/40MHZ共存
0  

2.4G模式『冇線协議 hwmode』『冇線頻寬htmode』『ht_coex』對應關係

冇線網卡驅動路徑

path 冇線網卡驅動路徑
  自動生成

閂冇線設备

disabled 閂冇線設备
0 禁制wifi
1 使能wifi

地區

country  
US 美國
GB 英國
JP 日本
KR 韩國
HK 香港
US 冇線信道1~12
CN 冇線信道1~13

冇線發射功率

txpower 冇線發射功率
0~20 單位dBm

掃描信道

noscan 吾扫描信道
0 扫描信道
1 禁止掃描信道

節點名

wifi-iface wifi-iface節點名

驅動名

device wifi-device驅動名
radio0 默認2.4G
radio1 默認5G

冇線網卡名

ifname 冇線網卡名/ifconfig顯示名
wlan0 Wifi1
wlan1 Wifi2

網絡設備類型

network 網絡設備類型,對應網橋
lan 橋接內網
wwan 冇線中繼

冇線工作模式

mode 冇線工作模式
ap 訪問點模式
sta 容戶端模式
minotor 監聽模式

WIFI名

ssid WIFI名
Openwrt-5G 最長32字符

WIFI密碼加密模式

encryption WIFI密碼加密模式
none 明文
psk WPA-PSK密文
psk2 WPA-PSK2密文
psk-mixed WPA-PSK/ WPA-PSK2混合
psk2+ccmp  

WIFI密碼

key 密碼
12345678 psk2加密模式:8~64個字符
  none加密模式時:密碼冇效

隱藏熱點

hidden 隱藏熱點
1 隐藏
0 可畀搜索

執行『vim /etc/config/wireless』修改WIFI-mt7925冇線網絡配置文檔.

WIFI-mt7925冇線網卡驅動

config wifi-device ‘radio0’ WIFI-2.4g冇線網卡驅動,編號0
option type ‘mac80211’ 驅動類型固定為mac80211
option path ‘pci0000:00/0000:00:01.0/0000:01:00.0’ mt7925冇線網卡驅動路徑
option band ‘6g’  
option channel ‘auto’ 冇線信道
option htmode ‘HT80’ 40MHZ
option txpower ’20’ 冇線發射功率
option country ‘CN’ 地區
option disabled ‘0’ 1:禁制wifi

0:使能wifi

WIFI冇線網卡接口信息.『lan』設備用網橋『br-lan』. 吾用網橋『br-lan』手機連wifi會一直處於『正在獲取IP位址』.

config wifi-iface ‘default_radion0’ WIFI冇線網卡接口信息
option device     ‘radio0’ 冇線網卡驅動
option network    ‘lan’ 內網
option mode      ‘ap’ ap
option ssid        ‘OpenWrt’ wifi名
option encryption  ‘psk2’ 加密方式
option key         ‘12345678’ 密碼

重啟網絡

service network restart

冇線wifi配置生效

wifi

列出所有無線網絡信息

iwinfo

軟路郵與主路郵網線相連, 係手機連『OpenWrt』密碼『12345678』.

 

 

 

 

 

OpenWRT旁郵路攻略-x86/x64電腦版

OpenWRT旁郵路攻略-x86/x64電腦版
OpenWRT旁郵路攻略-x86/x64電腦版
OpenWRT旁郵路攻略-x86/x64電腦版
OpenWRT旁郵路攻略-x86/x64電腦版
OpenWRT旁郵路攻略-x86/x64電腦版
OpenWRT旁郵路攻略-x86/x64電腦版
OpenWRT旁郵路攻略-x86/x64電腦版
OpenWRT旁郵路攻略-x86/x64電腦版

 

OpenWrt』嵌入式路郵設計Linux系統,市面大部分路郵都係用佢,提供『防火牆』『VPN』『IPv6』『WIFI』『4G/5G』.

依甫係itx臺式電腦將『OpenWrt』,要2網口一個WAN口一個LAN口.

  1. itx底板『SUPERMICR X10SDV-4C-TLN2F
  2. 磁碟『SUPERMICR-SATA-DOM-G4GB
  3. 下載『OpenWrt』x86/x64版鏡像
  4. 刻錄『OpenWrt』鏡像SATA磁碟
  5. 安將『OpenWrt』此過程自動執行
  6. 配置網絡『vim /etc/config/network』

登入『OpenWrt官網』下載穩定版『OpenWrt 24.10.1』,就係下載『OpenWrt 24.10.0』wifi信號時有時冇,5G模塊冇USB,搞左個大頭佛.

https://downloads.openwrt.org/

硬件版本區別

X86架構  
64 64bit-cpu,2007年後出所CPU都係64BIT.
Generic i586體系, Pentium 4及之後32BIT-CPU.
Legacy i386體系, Pentium 4之前32BIT-CPU-
Geode 定制老舊網絡設備.

文檔系統

文檔系統  
squashfs 傳統佈局, openwrt系統自帶程式,存儲設定仝程式分區得230mb
ext4 適合擴容展,後期加裝程式.

引導標記

引導標記  
標efi uefi引導-新bios
冇efu legacy引導-舊bios

引導模式

uefi引導 legacy引導
新式bios , 圖形介面 舊式bios
啟動速度快 較慢
32Bit/64Bit 電腦 32Bit電腦
GPT磁碟分區,支緩高達9.4ZB磁碟 MBR磁碟分區,僅支緩2.1TB磁碟
支緩USB鍵盤鼠標, 觸控. 僅支緩PS2鍵盤

撳『OpenWrt 24.10.1』->『x86』->『64』

下載『generic-ext4-combined-efi.img.gz』,

https://downloads.openwrt.org/releases/24.10.1/targets/x86/64/openwrt-24.10.1-x86-64-generic-ext4-combined-efi.img.gz
https://downloads.openwrt.org/releases/24.10.0/targets/x86/64/openwrt-24.10.0-x86-64-generic-ext4-combined-efi.img.gz

用『Physdiskwrite』刻錄『OpenWrt』 鏡像,

將『generic-ext4-combined-efi.img.gz』解壓出『openwrt-24.10.0-x86-64-generic-ext4-combined-efi.img』

磁碟清零

  1. 插『SUPERMICR-SATA-DOM-G4GB』磁碟系
  2. 系統管理員身份執行命令視窗CMD
  3. 執行『diskpart』登錄
  4. 執行『list disk』列出磁碟番號
  5. 執行『select disk x』擇當前操作磁碟.『x』替換為磁碟番號,此庶係
  6. 執行『clean』清除.

刻錄『openwrt.img』鏡像

  1. 將『openwrt-24.10.0-x86-64-generic-ext4-combined-efi.img』仝『exe』擺係『c:』
  2. 系統管理員身份執行命令視窗CMD
  3. 執行『.』當前資料夾『c:』
  4. 執行『physdiskwrite -u openwrt.img』
  5. 揀磁碟番號,此庶係
  6. 撳『y』鍵確認, 等待寫入結束.

 

安將『OpenWrt

  1. 插『SUPERMICR-SATA-DOM-G4GB』系路郵主板.
  2. 顯示『OpenWrt』3秒後自動安將.
  3. 當命令行停止吾鬱,撳『Enter』鍵進入命令行.
  4. 睇到『OpenWrt』幾隻字, 掂.
  5. 設置root密碼,執行『passwd』
passwd  
Changing password for root  
new password: 填root帳戶密碼
Retype password: 再填壹次
Password for root changed by root  
  1. 執行『ifconfig』指令,默認eth0網口是LAN口, eth1網口是WAN口
br-lan 虛擬設備,內網網口集合
eth0 真實設備, 網口0
eth1 真實設備, 網口1
io 虛擬設備,回環設備.
wlan0 真實設備,啟動wifi後產生
wwan0 真實設備,啟動4G/5G模塊後產生
pppoe-wan 虛擬設備,pppoe撥號上網後產生

執行『brctl show』查『br-lan』橋狀態

brctl show

『vim』編輯文檔

撳『i』或『a』鍵 進入編輯模式.
撳『esc』鍵, 退出綸輯模式.
執行『:wq』撳『enter』鍵 儲存後退出,帶冒號.
執行『:q!』撳『enter』鍵 吾儲存直接退出.

網絡配置文檔

vim /etc/config/network 有線網絡配置文檔.
vim /etc/config/wireless 冇線網絡配置文檔.

設備名

Ifname 設備名
eth0 網口0
eth1 網口1

協議類型

proto 協議類型
static 靜態IP地圵
dhcp 動態獲取IPv4地圵
dhcpv6 動態獲取IPv6地圵
pppoe 撥號上網
pptp 遠程VPN伺服機
3g 連接3G/4G冇線電話網絡

網卡6字節唯一編碼

macaddr 網卡MAC編碼
XX:XX:XX:XX:XX:XX 6字節唯一編碼

type網絡類型

type 網絡類型
bridge 橋接,交換機模式
mac80211  

首先用eth0網口連上互聯網, 軟路郵與主路郵網線相連,下載相關驅動.

執行『vim /etc/config/network』修改有線網絡配置文檔.

config interface ‘wan’ 外網
option ifname ‘eth0’ 設備名
option type ‘bridge’ 橋接,交換機模式
option device ‘eth0’  
option proto ‘dhcp’ 動態獲取IP地圵192.168.1.x
option metric ’64’  
option delegate ‘0’  
list ports  ‘eth0’  

 

config interface ‘wan6’ 外網ipv6
option proto ‘dhcpv6’  
option device ‘eth0’  
option type ‘bridge’ 橋接,交換機模式

『lan’內網』設備改用網橋『br-lan』. 吾用網橋『br-lan』手機連wifi會一直處於『正在獲取IP位址』

config interface ‘lan’ 內網
option type ‘bridge’ 橋接,交換機模式
option device ‘br-lan’ 網橋『br-lan』
option proto ‘static’ 靜態IP地圵
option ipaddr ‘192.168.2.1’ 假定主由路郵ip地圵192.168.1.1
option netmask ‘255.255.255.0’ 掩碼
option ip6assign ’60’  
list ports  ‘eth1’  

壹定要有網橋『br-lan』, 網橋下可加入多接口『wwan』『eth0』『eth1』『…』, 冇左網橋『br-lan』連wifi會一直處於『正在獲取IP位址』

config device  
  option type  ‘bridge’ 橋接,交換機模式
  option name ‘br-lan’ 網橋『br-lan』
  list ports ‘eth1’  

網橋『br-wan』

config device  
  option type  ‘bridge’ 橋接,交換機模式
  option name ‘br-wan’ 網橋『br-wan』
  list ports ‘eth0’  
list ports ‘usb0’  

重啟網絡, 軟路郵與主路郵網線相連

service network restart

執行『ifconfig』指令,如果『br-wan』接口有ip地址『192.168.1.x』,家時連網線可以上網.

路郵 ip
主路郵ip 192.168.1.1
軟路郵-wan 192.168.1.x
軟路郵-lan 192.168.2.1
電腦ip 192.168.2.x

執行『opkg update』更新安裝包列表

執行『opkg install luci』安裝圖形界面

執行『opkg install luci-i18n-base-zh-tw』OpenWRT漢化

執行『/etc/init.d/uhttpd enable』打開uhttpd服務
執行『/etc/init.d/uhttpd start』讓uhttpd自啟動

連網線電腦打開瀏覽器連接軟路郵192.168.2.1, 登入openwrt後臺

 

wifi 冇線配置生效
iwinfo 列出所有無線網絡信息
ifconfig 有線網絡
service network restart 重啟網絡
reboot 重啟OPENWRT
route 查路郵
ping ip Ping 撳『ctrl+z』褪.

 

ITX機箱-兩槽

ITX機箱-兩槽
ITX機箱-兩槽
ITX機箱-兩槽
ITX機箱-兩槽
ITX機箱-兩槽
ITX機箱-兩槽
ITX機箱-兩槽
ITX機箱-兩槽
ITX機箱-兩槽
ITX機箱-兩槽

ITX機箱-買蒞砌臺5G-WIFI路郵,仝前兩部ITX機箱比,設計用心,做工尚佳,两條半高槽,壹條全高槽,祗係漏左起牙, 改用4MM鑼絲鑼帽壓死檔板.

PCIE轉向卡要另外買. 适配轉向卡高61.8MM.

換左6025-0.15A-4PIN風扇, 原配風扇冇得調速.

两個2.5寸磁碟架, 吾頂CPU風扇.

缺點係装吾到『加長ITX底板』好似『X10SDV-TP8F』,祗能装『標准ITX底板』.

 

Physdiskwrite刻錄img鏡像

Physdiskwrite刻錄img鏡像
Physdiskwrite刻錄img鏡像
Physdiskwrite刻錄img鏡像
Physdiskwrite刻錄img鏡像

 

physdiskwrite』刻錄『.img』鏡像, 佢幾乎萬能. 支緩『sata磁碟』『usb磁碟』.

登錄『physdiskwrite』官網. 佢有『圖形版』仝『命令行版』.

https://m0n0.ch/wall/physdiskwrite.php

下載『physdiskwrite-0.5.3.zip

https://m0n0.ch/wall/downloads/physdiskwrite-0.5.3-PhysGUI-bundle.zip
https://m0n0.ch/wall/downloads/physdiskwrite-0.5.3.zip

 

磁碟清零

  1. 系統管理員身份執行命令視窗CMD
  2. 執行『diskpart』登錄
  3. 執行『list disk』列出磁碟番號
  4. 執行『select disk x』擇當前操作磁碟..『x』替换為磁碟番號,此庶係0.
  5. 執行『clean』清除.

 

刻錄『.img』鏡像

  1. 将『.img』仝『physdiskwrite.exe』擺係『c:』
  2. 系統管理員身份執行命令視窗CMD
  3. 執行『cd..』. 當前資料夾『c:』
  4. 執行『physdiskwrite -u openwrt.img』
  5. 揀磁碟番號,此庶係0.
  6. 撳『y』鍵确認, 等待寫入結束.

Windows10-USB磁碟修复-格式化提示修复

USB磁碟-格式化提示修复
USB磁碟-格式化提示修复
USB磁碟-格式化提示修复
USB磁碟-格式化提示修复
USB磁碟-格式化提示修复
USB磁碟-格式化提示修复

當插USB磁碟提示要格式化, 可能係磁碟分區遵至. 此法經已修复多隻USB磁碟.

  1. 系統管理員身份執行命令視窗CMD
  2. 執行『diskpart』登錄
  3. 執行『list disk』列出磁碟番號
  4. 執行『select disk x』擇當前操作磁碟..『x』替换為磁碟番號,
  5. 執行『clean』清除.
  6. 撳『控制台』->『系統管理工具』->『電腦管理』
  7. 撳『電腦管理(本機)』->『存放装置』->『磁碟管理』
  8. 系『未配置』撳『新增簡單磁碟區』重建磁碟分區
  9. 『簡單磁碟區大小』默認吾使改
  10. 『指定下列磁碟機代號』默認吾使改
  11. 勾『用下列設定將这個磁碟格式化』
  12. 『檔案系統』揀『FAT32』
  13. 『配置單位太小』揀『預設』
  14. 『磁碟區標籤』默認吾使改
  15. 勾『執行快速格式化』
  16. 格式化後成功修复USB磁碟.

 

 

Stable Diffusion插件-AddNet融合LoRA模型

Stable Diffusion插件-AddNet融合LoRA模型
Stable Diffusion插件-AddNet融合LoRA模型
Stable Diffusion插件-AddNet融合LoRA模型
Stable Diffusion插件-AddNet融合LoRA模型

『Additional Networks』插件 簡稱AddNet.任意實時融合至多5個LoRA模型, 權重係『0~0.5』LoRA模型先發揮作用.  LoRA觸發詞要加到prompt.

https://github.com/kohya-ss/sd-webui-additional-networks

裝『Additional Networks』插件

  1. 撳『Extensions擴展』->『Install from URL網絡安裝』
  2. 『URL for extension’s git repository』填『https://github.com/kohya-ss/sd-webui-additional-networks.git』
https://github.com/kohya-ss/sd-webui-additional-networks.git
  1. 撳『Install』下載
  2. 撳『Extensions擴展』->『Installed已裝』
  3. 撳『Apply and restart UI應用後重啟界面』

 

 

指定LoRa模型資料夾路徑

  1. 撳『Settings』->『Uncategorized』->『Additional Networks』
  2. 填『Extra paths to scan for LoRA models』
C:\stable-diffusion-webui\models\Lora
  1. 撳『Apply settings』應用設定
  2. 撳『Reload UI』重啟

 

 

 

指定LoRa模型權重

  1. 撳『Txt2img』->『Additional Networks』
  2. 勾『Enable』使能.
  3. 撳『refresh models』
  4. 設置LoRA模型.
  5. LoRA觸發詞要加到
  6. 權重設『0~0.5』,0係禁用, 多試幾次降低權重, 修正異常.
  7. 嘗試降低『Denoising strength』重繪幅度『1~0.2』, 修正異常.

SUPERMICR-SATA-DOM-G4GB

SUPERMICR-SATA-DOM-G4GB
SUPERMICR-SATA-DOM-G4GB
SUPERMICR-SATA-DOM-G4GB
SUPERMICR-SATA-DOM-G4GB
SUPERMICR-SATA-DOM-G4GB
SUPERMICR-SATA-DOM-G4GB
SUPERMICR-SATA-DOM-G4GB
SUPERMICR-SATA-DOM-G4GB

『SATA-DOM』即係SATA插頭迷理磁碟. 細到可以直插係SATA口. 諗住買蒞將openwrt. 讓m.2畀wifi.

上面印『SVFM Compact』, 用超微底板3pin供電.64GB- MLC固態磁盤.

超微底板有5個藍色SATA口, 1個橙色SATA口. 仝供電有關.

橙色SATA口吾使額外供電,靠第7PIN供電.

藍色SATA口靠額外5V供電.

電話咭-Lucky2攻略-港澳中台25GB

電話咭-Lucky2攻略-港澳中台25GB
電話咭-Lucky2攻略-港澳中台25GB
電話咭-Lucky2攻略-港澳中台25GB
電話咭-Lucky2攻略-港澳中台25GB

上次張『Lucky2上網卡-中台澳5GB-香港10G』用曬5GB高速後,低速後用吾够壹個月,張卡切底用吾到.祈有買過張.

『Lucky2上網卡-港澳中台25GB高速數據』.25GB高速用曬後降為512kbps低速任用, 140紋. 希望可以用一年.

插卡後開通『數據漫遊』.即插即用吾使實名登記.

 

咪
咪
咪
咪
咪
咪
咪

之前買落咪連埋支架, 先69紋. 支咪48V, 插係電腦,要買48V幻象火牛,點知壹插,火牛冇通電,块雜版B450I燒埋.

一分錢一分貨, 用埋ISK-48V幻象火牛,都係細聲.

撳『設定』->『系統』->『音效』->『輸入』->『測試麥克風』

頂櫳得%5左右.

 

Premiere剪接駁片

 

首先利用『Stable Diffusion WebUI』生成人像同背景.

  1. 『Premiere』
  2. 撳『File』->『new』->『Project』新建工程.填『location位置』『name名prpject』.
  3. 『Video Rendering and playback視頻渲染回放』揀GPU加速
Mercury Playback Engine GPU Acceleration GPU加速
Mercury Playback Engine Software Only CPU加速
  1. 『Video Display Format視頻顯示格式』揀『Timecode時間碼』
Timecode時間碼  
Feet+frames 16mm 16mm菲冧
Feet+frames 35mm 35mm菲冧
Frames畫格 祗計影片格數量
  1. 『Audio Display Format音頻顯示格式』
Audio Samples 音頻采樣(時:分:秒:幀)
Milliseconds 亳秒(時:分:秒:亳秒)
  1. 『Capture Format捕捉格式』揀『HDV』, 借助IEEE1394火線.
DV DV摄录機
HDV HDV摄录機
  1. 勾『Display the project item name and label color for all instances』針對所有實例項目名同標簽顏色.
  2. 『暫存盤(scratch disk) 』吾使搞
Documents文檔 用戶檔䅁夾
Same As Project項目 工程路徑
Custom自定 自定檔䅁夾
  1. 『收錄設置(Ingest settings)』
  2. 撳『确定ok』新建工程.
  3. 撳『窗口window』->『工作區workspaces』->『所有面版all panels』.
  4. 創建『序列』, 存放『短片』『聲音』『圖片』.
  5. 直接拖『圖片』入『Project』.
  6. 『時間軸』上層短片軌道覆盖下層短片軌道. 即係前景擺上層, 背景擺下層.
  7. 『圖片Project』拖入『時間軸』.
  8. 制作水印圖,解像與短片一致,係右下角填域名網名帶陰影.透明圖層.輸出 擺係『時間軸』上層.
  9. 制作人像, 借『transparent-background』背景透明人像圖. 解像與短片一致,輸出png圖檔
C:\Program Files\Python310\Scripts\transparent-background-gui.exe
  1. 咪頭錄『配音』. 拖入『Project』. 再拖入『時間軸』.
  2. 撳『space吉格』->『PLAY/STOP』
  3. 撳『file文件』->『導出export』->『媒體MEDIA』
格式Format H.264
預設PRESET Youtube 720p HD
  1. 撳『導出export』.

 

 

 

 

Stable Diffusion插件-Adetailer修復臉形扭曲

Stable Diffusion插件-Adetailer修復臉形扭曲
Stable Diffusion插件-Adetailer修復臉形扭曲
Stable Diffusion插件-Adetailer修復臉形扭曲
Stable Diffusion插件-Adetailer修復臉形扭曲
Stable Diffusion插件-Adetailer修復臉形扭曲

Adetailer自動檢測人臉,針對人臉自動生成遮罩,自動重繪修復臉形扭曲.一氣呵成, 吾使人工幹預.

https://github.com/Bing-su/adetailer
  1. 撳『Extensions擴展』->『Install from URL網絡安裝』
  2. 『URL for extension’s git repository』填『https://github.com/Mikubill/sd-webui-controlnet
https://github.com/Bing-su/adetailer.git
  1. 撳『Install』下載
  2. 撳『Extensions擴展』->『Installed已裝』
  3. 撳『Apply and restart UI應用後重啟界面』

 

  1. 手動下載『adetailer』
  2. 登入CMD命令行模式
  3. 指定當前資料夾
CD C:\stable-diffusion-webui\extensions\
  1. 下載『adetailer
git clone https://github.com/Bing-su/adetailer.git
  1. 如出錯刪下列檔䅁夾,再重新下載
C:\stable-diffusion-webui\extensions\sd-webui-animatediff
C:\stable-diffusion-webui\tmp\sd-webui-animatediff

 

勾ADetailer激活

揀Detection model检测模型,8s比8n說耗時長,修圖效果更佳.

Detection model检测模型  
Face_yolov8n.pt 檢測重繪人面
Face_yolov8s.pt 檢測重繪人面
Hand_yolov8n.pt 檢測重繪手
Person_yolov8n-seg.pt 檢測重繪整個人
Person_yolov8s-seg.pt 檢測重繪整個人
Yolov8x-worldv2.pt  
Mediapipe_face_full 檢測重繪人臉
Mediapipe_face_short  
mediapipe_face_mesh  
mediapipe_face_eyes_only 檢測重繪人眼

通過1st,2nd,3rd,4th, 叠加多個模型檢測并重繪

 

WhatsApp攻略

WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略
WhatsApp攻略

注册『WhatsApp』,要HK電話冧靶, SIM咭可『收短信』同埋『上網』流動數據.

  1. 係『Google Play』下載『WhatsApp』.
  2. 輸入手機冧靶『+852 8888 8888』, 填錯隔機粒鐘先重發.
  3. 等收短訊,6位驗證代碼.
  4. 允許存取『聯絡人』『相片』『媒體』『google帳戶』權限.
  5. 填名.
  6. 上轉頭像.
  7. 設定->帳户->雙重認證. 設6位數字pin碼.
  8. 設定->帳户->電郵地址. 用翻『Google帳户』.

 

 

Google-HK電話冧靶注冊Gmail郵箱

Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱

Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱
Google-注冊Gmail郵箱

注冊Google帳號即注冊Gmail郵箱,要諗定個名6字母,仲畀人注册到.仲有畫埋定logo 解像512px*512px. 揀『源界明朝』體. Google公司條列定明Gmail郵箱閑2年注消

  1. 撳手機Gmail
  2. 撳『新增郵地址』
  3. 撳『Google』
  4. 『請重新輸入pin碼』
  5. 撳『建立帳戶』, 揀『工作或管理個人業務用途』
  6. 填『姓氏』『名字』
  7. 填『姓別』『出生曰期』
  8. 填Gmail地址, 6個ascii字母『xxxxxx@gmail.com 』
  9. 填Gmail密碼, 分大細寫字母(A~Z)+字符().
  10. 用HK電話冧靶,绑定備援電話.

 

 

 

 

 

 

 

 

 

 

 

 

電話咭-Lucky2攻略-中台澳5GB-香港10GB

電話咭-Lucky2攻略-中台澳5GB-香港10GB
電話咭-Lucky2攻略-中台澳5GB-香港10GB

鴨寮街Lucky2上網卡,冇電話冧靶,自然冇得接打電話,冇得收發短信.插卡後開通『數據漫遊』.即插即用吾使實名登記.

香港10GB高速數據,中台澳5GB高速數據.用曬後降為低速任用,即係365日冇限數據,鴨寮街價70蚊,SIM卡+卡針.

張卡用曬5GB高速後,低速後用吾够壹個月,張卡切底用吾到.

部主力機插左雙卡,手頭有部老竇舊手機,開熱點畀屋企手機電腦上網,等遲D先買插sim卡wifi郵路.實测youtube係畫質240p流畅.

  1. 手機插入『sim卡』
  2. 開『數據漫遊』
  3. 開『熱點』命名為『Lucky2』, 分享畀電腦.

 

電腦

  1. 切斷有線網络絡, 至簡單係猛條網線, 或者撳『控制台\所有控制台項目\網路連線』->停用『乙太網路』.
  2. 『WIFI』連『Lucky2』.

 

 

FFmpeg-DVD轉MP4

FFmpeg-DVD轉MP4
FFmpeg-DVD轉MP4

加時電腦腦冇配DVD,機箱冇5.25寸口,取而代之係家用NAS伺服機,16TB容量够存幾千DVD碟.用『FFmpeg』將DVD入面VOB轉MP4. 例

G:\VIDEO_TS\VTS_01_1.VOB
  1. 首先部署『FFmpeg
  2. 登录『命令行CMD
  3. 填下列指令將DVD轉MP4
ffmpeg -i G:\VIDEO_TS\VTS_01_1.VOB -c:v libx265 -c:a aac -preset medium -crf 23 D:\OUTPUT.MP4
ffmpeg -i G:\VIDEO_TS\VTS_01_1.VOB -c:v h264_nvenc -c:a aac -preset medium -crf 23 D:\OUTPUT.MP4

用上面指令,壓肆條片, 『H.254』畀『H.265』大肆倍.

  H.254 H.265 片長
小念頭.MP4 660 MB 119 MB 46:11
木人桩.MP4 669 MB 114 MB 43:44
尋橋.MP4 783 MB 142 MB 51:08
標指.MP4 770 MB 132 MB 50:23

 

 

参式簡介  
-i 輸入檔
-c:v 視頻編碼
-c:a 音頻編碼
-preset 编码速度和质量
-crf 視頻編碼質量

 

視頻編碼 -c:v  
flv 速度快,視頻文檔大
vp6  
libx264 同等清晰度下,视频文檔細,缺点係转换慢.
h264_qsv Intel-GPU 硬件编码
h264_nvenc NVIDIA-GPU 硬件编码
h264_amf AMD-GPU 硬件编码
h264_vaapi Intel AMD NVIDIA-GPU硬件编码
libx265 比264壓缩仲高

 

音頻編碼 -c:a  
mp3 速度快,視頻文檔大
aac 比MP3音檔細30%

 

編碼 -preset 编码速度和质量之间权衡
ultrafast 編碼速度最快,輸出質量最較低。
superfast 編碼速度飛快
veryfast 編碼速度飛快
faster 編碼速度較快
fast 編碼速度較快
medium 默認預設,平衡編碼速度和質量
slow 編碼速度較慢,輸出質量較高.
slower 編碼速度更慢,輸出質量更高.
veryslow 編碼速度最慢,輸出質量最高.

 

視頻編碼質量-crf  
0 無損壓縮 質量最高 文檔最大
18 視覺無損 質量非常高 文檔大細適中
23 默認值 平衡質量和文檔大細
51 質量最低 文檔最小

 

SUPERMICR X10SDV-4C-TLN2F

SUPERMICR X10SDV-4C-TLN2F
SUPERMICR X10SDV-4C-TLN2F
SUPERMICR X10SDV-4C-TLN2F
SUPERMICR X10SDV-4C-TLN2F
M.2-2280純銅散熱
M.2-2280純銅散熱

超微X10SDV簡化板,缺两個千兆口,有两個萬兆口.CPU係『D-1521』,插两條『32GB-2R*4』,著機自檢耐.

超微底板有5個藍色SATA口, 1個橙色SATA口. 仝供電有關.橙色SATA口吾使額外供電,靠第7PIN供電.藍色SATA口靠額外5V供電.

網卡芯片散熱阻擋M.2散熱,唯有用冇下托架散熱,用銅箔胶紙固定.

超微主板有前置面板插口,『超微機箱』皆有止插口Front panel Header.

有兩個『USB2.0-9Pin』,臺個左上邊,另臺個例右下邊.

祗适宜做NAS, 冇『USB3.0-19PIN』吾岩做Route.

 

Windows10下載機

Windows10下載機
Windows10下載機

本蒞諗住係『truenas』,用虛擬機装『Windows10』做『下載機』.實制未能充份利用CPU同Memory.更好係直接装『Windows10』.摆係角落用WIFI做冇線『下載機』.

配置都係淘汰件.最衰『ITX機箱』密吾透氣, 粒『XEON E5-2630LV3』係幾分鐘內超過壹百度.裝『AVC 9025』疏風.拆com口擋版透氣.裝『AVC 5020』直吹CPU.

  1. 网络唤醒
  2. Windows-SMB共享
  3. Microsoft 遠端桌面

 

下載機 配置
火牛 臺逵flex-500w
CPU INTEL XEON E5-2630LV3
CPU散熱 SOCKET2011-纯銅散熱風扇
CPU風扇 AVC 5020
底板 雜牌X99-ITX
機箱 3槽ITX機箱
WIFI Intel Wi-Fi 7 BE200
Memory SAMSUNG 32GB DDR4 2400T
HDD SAMSUNG SM961 256GB
SSD SAMSUNG 1000GB
顯卡 MSI GT710 1G

 

 

 

 

 

下載機 配置
火牛 臺逵flex-500w
CPU INTEL XEON E5-2630LV3
CPU散熱 SOCKET2011-纯銅散熱風扇
CPU風扇 AVC 4020
底板 雜牌X99-ITX
機箱 3槽ITX機箱
WIFI Intel Wi-Fi 7 BE200
Memory SAMSUNG 32GB DDR4 2400T
HDD SAMSUNG SM961 256GB
SSD SAMSUNG 1000GB
顯卡 MSI GT710 1G

 

 

 

Windows10-WakeOnLAN網絡喚醒

Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒
Windows10-WakeOnLAN網絡喚醒

係舊時網卡附有『3pin-WOL』插主板,實現『網絡喚醒』, 好彩依時主板附帶網口吾使『3pin-WOL』線. 『網絡喚醒』通過網線發送『喚醒魔術包』將『休眠』『睡眠』『閂機』電腦呌醒, 『閂機』後呌吾醒,可能Windows10電源管理引起.冇線WIFI吾得『網絡喚醒』,有線網卡先得『網絡喚醒』.

 

係主板BIOS設置『網絡喚醒』

  1. 著機撳『Delete』鍵登錄BIOS
  2. 撳『Advanced』->『Wake Up Function』
  3. 撳『Lan Wake Up』揀『Enabled』
  4. 撳『Advanced』->『Network stack Configuration』
  5. 撳『Network Stack』揀『Enabled』
  6. 撳『IPv4 PXE Support』揀『Enabled』
  7. 撳『IPv4 PXE Support』揀『Enabled』
  8. 『save』後退出

 

Windows10網卡設置

  1. 撳『控制台』->『裝置管理員』->『網路介面卡』
  2. 撳『有線網卡』似『Ethernet』
  3. 勾『允許電腦關閉這個裝置以節省電源』
  4. 勾『允許這個裝置喚醒電腦』
  5. 勾『只允許magic封包喚醒電腦』後『WakeOnLAN』睇吾電腦醒未.吾勾『WakeOnLAN』發送PING包可能會自動著機.
  6. 撳 『確定』

 

Windows10電源選項,混合式關機停用 WOL.

  1. 撳 『控制台』->『電源選項』
  2. 撳 『選擇電源按鈕的功能 』
  3. 禁止『開啟快速啟動 (建議選項) 』. 事因『混合式關機』停用
  4. 撳 『儲存變更』

 

Windows10電源選項

  1. 撳『控制台』->『電源選項』->『進階設定』
  2. 撳『睡眠』->『允許混合式睡眠』設定 『關閉』. 事因『混合式關機』停用
  3. 撳『PCI Express』->『連結狀熊電源管理』設定 『關閉』. 閂機後令網依然通電.
  4. 撳 『儲存變更』

 

Windows10網絡喚醒

  1. 下載『11.11.0.exe』後裝.
  2. 進『命令行模式CMD』用『ipconfig /all』得網卡『MAC位圵』同埋『主機名稱』. 『MAC位圵』6字節『xx:xx:xx:xx:xx:xx』.
  3. 𢴇行『exe』
  4. 撳『檔案FILE』->『新增主機New Host』
  5. 『Name名稱』求其填.
  6. 『Group群組』填『WORKGROUP』
  7. 『MAC Address位圵』似『xx:xx:xx:xx:xx:xx』6字節.
  8. 勾『Broadcast IP廣播位址IP』
  9. 『Broadcast子網路遮罩』填『168.1.255』
  10. 『FQDN/IP電腦名稱』填『主機名』或『IPV4地圵』
  11. 『UDP Port端口』填『9』
  12. 撳 『確定』
  13. 撳 『喚醒主機』
  14. 撳『遠端桌面』控制主機
  15. 撳『PING』後發送PING包可能會自動著機.

 

睡眠(S3)  
休眠(S4)  
關機(S5)  

 

 

 

 

ITX機箱-側透

ITX機箱-側透
ITX機箱-側透
ITX機箱-側透
ITX機箱-側透
ITX機箱-側透
ITX機箱-側透

諗住買『ITX機箱』蒞装翻『X99-ITX』同埋『QUADRO K6000』,需配『益衡SFX模組火牛750W 』,機箱背板係標准內凹設計.揀佢.

整體尚可, 叁條槽3090ti,最多可装肆12CM風扇.

  1. 電源線駁長成條賓洲. 重新造220v插頭,
  2. 『5寸磁碟』装肆粒磁石吸係火牛.
  3. 『5寸磁碟』可借助水冷支架.

x99-50mm風扇散熱支架

x99-50mm風扇散熱支架
x99-50mm風扇散熱支架
x99-50mm風扇散熱支架
x99-50mm風扇散熱支架
x99-50mm風扇散熱支架
x99-50mm風扇散熱支架
x99-50mm風扇散熱支架
x99-50mm風扇散熱支架
x99-50mm風扇散熱支架
x99-50mm風扇散熱支架

臺『ITX機箱』密吾透氣,粒『XEON E5-2630LV3』係幾分鐘內超壹百度.之前買拆機銅底鋁片散熱,打印風扇支架.裝『AVC 5020』直吹CPU.冚埋盖免强吾死機.

係網買『AVC 5020』睇蒞係拆機,線極短. 標『0.25a』但係噪聲大.

Logitech MX BRIO

Logitech MX BRIO
Logitech MX BRIO
Logitech MX BRIO
Logitech MX BRIO
Logitech MX BRIO
Logitech MX BRIO

上世紀末已有電腦摄像頭,一直冇買蒞玩,前排買過中古『Microsoft LifeCam Studio』條線根斷退貨.後蒞睇中Logitech摄像頭『MX BRIO』同『MX BRIO705 for Business』.包装吾同性能冇分别,

『MX BRIO』可用『Logi Options+』『Logitech G HUB』『Logi Tune』設置. 建議用『Logi Tune』.

壹定要插係『USB3.0-TYPE C』吾係吾上4K,『相片品質』『8.3MP 16:9(3840*2160)』, 『影片品質』『2160p 16:9(30fps)』.

插係『USB2.0』『相片品質』得翻『2.1MP 16:9(1920*1080)』,『影片品質』得翻『1080p 16:9(30fps)』.

Logi Options+
https://download01.logi.com/web/ftp/pub/techsupport/optionsplus/logioptionsplus_installer.exe

 

Logitech G HUB
https://download01.logi.com/web/ftp/pub/techsupport/gaming/lghub_installer.exe

『MX BRIO705 for Business』要用『Logi Tune』.

Logi Tune
https://software.vc.logitech.com/downloads/tune/LogiTuneInstall.exe

 

SAMSUNG SM961-512GB

SAMSUNG SM961-512GB
SAMSUNG SM961-512GB
SAMSUNG SM961-512GB
SAMSUNG SM961-512GB

『SM961-512GB』買蒞做下載機系統碟,健康得78%.比之前買『SM961-256GB』平一半. 『讀』3553MB/S『寫』1639MB/S. 比『SM961-256GB』讀寫仲快.

SAMSUNG SM961 叁數
型號 SM961
SIZE 512GB
3553mb/s
1639mb/s
協議 NVME
插口 M.2 PCIE3.0X4
顆粒 MLC

 

ITX機箱-3槽

ITX機箱-3槽
ITX機箱-3槽
ITX機箱-3槽
ITX機箱-3槽
ITX機箱-3槽
ITX機箱-3槽

雜牌ITX機箱買蒞諗住做『影音機』,肆面密吾透氣.得『4020風扇』抽風.貪佢有3條槽.

RYZEN5-1500X』+『原裝幽靈風扇』仲免强頂得住. 換左『XEON E5-2630LV3』+『纯銅散熱』+『猫頭鷹NF-A6x25』慶過辣雞.幾分鐘內超百度.两粒U都係功耗60w,睇蒞此類機箱CPU極限60w.

加裝两個『AVC 9025』疏風.冚辦闌COM口擋版拆蒞透氣.裝埋『AVC 12025』直吹CPU.

 

 

 

 

 

Microsoft 遠端桌面

Microsoft 遠端桌面
Microsoft 遠端桌面
Microsoft 遠端桌面
Microsoft 遠端桌面
Microsoft 遠端桌面
Microsoft 遠端桌面
Microsoft 遠端桌面
Microsoft 遠端桌面

使Windows10作為『網盤』『BT』下載機, 再蒞用『Microsoft 遠端桌面

遠程控制下載機.

 

『下載機』開啟遠端桌面

  1. 撳『設定』->『系統』->『關於』->『遠端桌面』
  2. 『啟用遠端桌面』撳『開啟』

 

『下載機』設定電源與睡眠

  1. 『螢幕 插電時, 在下列時間後關閉』揀『永不』
  2. 『睡眠 當電腦連接電源時, 會在下列時間後進入睡眠狀態』揀『永不』
  3. 撳『設定』->『系統』->『關於』->『進階系統設空』
  4. 撳『遠端』
  5. 勾『允許到這部電腦的遠端栛助連線』
  6. 勾『允許遠端連線到此電腦』
  7. 撳『套用』

 

Microsoft 遠端桌面

  1. 撳『+新增』
  2. 『電腦名稱』填『下載機』名稱
  3. 『使用者帳戶』填『下載機』登入帳戶

TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像

TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像
TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像
TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像
TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像
TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像
TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像
TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像
TrueNAS RAID1-SEAGATE-16TBx2-Create Pool砌Raid1鏡像

新買『SEAGATE-16TB』同之前剩低两個组成raid0,插两『SEAGATE-16TB』. 同舊版本『trueNAS』有小小吾同.

  1. 撳『Storage Dashboard儲存』.
  2. 撳『Create Pool建立儲存集區』.
  3. 『name』填『pool0』,以『pool0/pool1/pool2』命名.
  4. 『Layout』揀『Mirror鏡像』即係『Raid1』.
  5. 『Width』揀『2』,两個磁碟.
  6. 『Log』吾使設置
  7. 『Spare』吾使設置
  8. 『Cache』吾使設置
  9. 『Metadata』吾使設置
  10. 『Dedup重複資料刪除』吾使設置
  11. 撳『Create Pool建立儲存集區』.

 

通過網络訪問NAS『Sharing共用』

  1. 創建User
  2. 創建Dataset
  3. Windows (SMB) Shares
  4. UNIX (NFS) Shares
  5. Block (iSCSI) Shares Targets

 

 

 

Stripe Raid0
Mirror鏡像 Raid1
Raid-Z Raid5

 

Stable Diffusion外網訪問–share

Stable Diffusion外網訪問--share
Stable Diffusion外網訪問–share

Stable_Diffusion_share

Stable Diffusion外網訪問–share

之前利用『–listen』係內網訪問『Stable Diffusion』電腦,利用『–share』係外網訪問『Stable Diffusion』.

  1. 編缉『webui-user.bat』
C:\stable-diffusion-webui\webui-user.bat
  1. 對『bat』添加『– share』参數.
set COMMANDLINE_ARGS=–share
  1. 下載『frpc_windows_amd64.exe』.
https://cdn-media.huggingface.co/frpc-gradio-0.2/frpc_windows_amd64.exe
  1. 重命名為『frpc_windows_amd64_v0.2』,冇擴展名.
  2. 复制到『gradio』資料夾
C:\stable-diffusion-webui\venv\lib\site-packages\gradio
  1. 得到『https://684da9579597aa77c4.gradio.live』 此鏈接在72小時後過期
https://684da9579597aa77c4.gradio.live

 

1. Download this file: https://cdn-media.huggingface.co/frpc-gradio-0.2/frpc_windows_amd64.exe
2. Rename the downloaded file to: frpc_windows_amd64_v0.2
3. Move the file to this location: C:\stable-diffusion-webui\venv\lib\site-packages\gradio

 

This share link expires in 72 hours. For free permanent hosting and GPU upgrades, run `gradio deploy` from Terminal to deploy to Spaces (https://huggingface.co/spaces)

 

Stable Diffusion下載安裝-ControlNet

Stable Diffusion下載安裝-ControlNet
Stable Diffusion下載安裝-ControlNet
Stable Diffusion下載安裝-ControlNet
Stable Diffusion下載安裝-ControlNet
Stable Diffusion下載安裝-ControlNet
Stable Diffusion下載安裝-ControlNet

『ControlNet』含『插件』『模型』分開下載.

『Stable Diffusion』裝『插件』需編輯『webui-user.bat』,加入命令行参式『–enable-insecure-extension-access』啟用插件訪問.

C:\stable-diffusion-webui\webui-user.bat
set COMMANDLINE_ARGS=–listen –enable-insecure-extension-access

下載插件方式1:

  1. 撳『Extensions擴展』->『Install from URL係網裝』
  2. 『URL for extension’s git repository』填『https://github.com/Mikubill/sd-webui-controlnet
https://github.com/Mikubill/sd-webui-controlnet.git
  1. 撳『Install』下載

 

下載插件方式2:

  1. 撳『Extensions擴展』->『Available可下載』
https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui-extensions/master/index.json
  1. 撳『Load from:加載擴展列表』搜索下載列表.
  2. 『sd-webui-controlnet』撳『Install』下載

 

  1. 撳『Extensions擴展』->『Installed已裝』
  2. 撳『Check for updates檢查更新』
  3. 撳『Apply and restart UI應用後重啟界面』
  4. 係『txt2img』『img2img』下側『ControlNet』
  5. 如果出錯刪下列檔䅁夾, 在重新下載
C:\stable-diffusion-webui\extensions\sd-webui-controlnet
C:\stable-diffusion-webui\tmp\sd-webui-controlnet

 

『雙精度模型』『ControlNet-v1-1

https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main

下載『ControlNet』雙精度模型.

control_v11e_sd15_ip2p.pth InstructP2P
control_v11e_sd15_ip2p.yaml  
control_v11e_sd15_shuffle.pth Shuffle随機洗牌
control_v11e_sd15_shuffle.yaml  
control_v11f1e_sd15_tile.pth Tile/Blur
control_v11f1e_sd15_tile.yaml  
control_v11f1p_sd15_depth.pth Depth深度
control_v11f1p_sd15_depth.yaml  
control_v11p_sd15_canny.pth Canny硬邊緣
control_v11p_sd15_canny.yaml  
control_v11p_sd15_inpaint.pth Inpaint局部重繪
control_v11p_sd15_inpaint.yaml  
control_v11p_sd15_lineart.pth Lineart線稿
control_v11p_sd15_lineart.yaml  
control_v11p_sd15_mlsd.pth MLSD直線
control_v11p_sd15_mlsd.yaml  
control_v11p_sd15_normalbae.pth NormalMap法線貼圖
control_v11p_sd15_normalbae.yaml  
control_v11p_sd15_openpose.pth OpenPose姿勢
control_v11p_sd15_openpose.yaml  
control_v11p_sd15_scribble.pth Scribble䓍圖
control_v11p_sd15_scribble.yaml  
control_v11p_sd15_seg.pth Segmentation語義分割
control_v11p_sd15_seg.yaml  
control_v11p_sd15_softedge.pth SoftEdge軟邊緣
control_v11p_sd15_softedge.yaml  
control_v11p_sd15s2_lineart_anime.pth Lineart anime動圖線稿
control_v11p_sd15s2_lineart_anime.yaml  

 

『單精度模型』

https://huggingface.co/comfyanonymous/ControlNet-v1-1_fp16_safetensors/tree/main

下載『ControlNet』單精度模型.

control_lora_rank128_v11e_sd15_ip2p_fp16.safetensors
control_lora_rank128_v11e_sd15_shuffle_fp16.safetensors
control_lora_rank128_v11f1e_sd15_tile_fp16.safetensors
control_lora_rank128_v11f1p_sd15_depth_fp16.safetensors
control_lora_rank128_v11p_sd15_canny_fp16.safetensors
control_lora_rank128_v11p_sd15_inpaint_fp16.safetensors
control_lora_rank128_v11p_sd15_lineart_fp16.safetensors
control_lora_rank128_v11p_sd15_mlsd_fp16.safetensors
control_lora_rank128_v11p_sd15_normalbae_fp16.safetensors
control_lora_rank128_v11p_sd15_openpose_fp16.safetensors
control_lora_rank128_v11p_sd15_scribble_fp16.safetensors
control_lora_rank128_v11p_sd15_seg_fp16.safetensors
control_lora_rank128_v11p_sd15_softedge_fp16.safetensors
control_lora_rank128_v11p_sd15s2_lineart_anime_fp16.safetensors
control_v11e_sd15_ip2p_fp16.safetensors
control_v11e_sd15_shuffle_fp16.safetensors
control_v11f1e_sd15_tile_fp16.safetensors
control_v11f1p_sd15_depth_fp16.safetensors
control_v11p_sd15_canny_fp16.safetensors
control_v11p_sd15_inpaint_fp16.safetensors
control_v11p_sd15_lineart_fp16.safetensors
control_v11p_sd15_mlsd_fp16.safetensors
control_v11p_sd15_normalbae_fp16.safetensors
control_v11p_sd15_normalbae_fp16.safetensors
control_v11p_sd15_openpose_fp16.safetensors
control_v11p_sd15_scribble_fp16.safetensors
control_v11p_sd15_seg_fp16.safetensors
control_v11p_sd15_softedge_fp16.safetensors
control_v11p_sd15s2_lineart_anime_fp16.safetensors
control_v11u_sd15_tile_fp16.safetensors

 

下载支持SDXL1.0-ControlNet模型

https://huggingface.co/lllyasviel/sd_control_collection/tree/main

下載『ControlNet』SDXL1.0模型

https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/diffusers_xl_canny_full.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/diffusers_xl_depth_full.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/ioclab_sd15_recolor.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/ip-adapter_sd15.pth?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/ip-adapter_sd15_plus.pth?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/ip-adapter_xl.pth?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_blur.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_blur_anime.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_blur_anime_beta.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_canny.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_canny_anime.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_depth.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_depth_anime.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_openpose_anime.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_openpose_anime_v2.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/kohya_controllllite_xl_scribble_anime.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sai_xl_canny_128lora.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sai_xl_canny_256lora.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sai_xl_depth_128lora.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sai_xl_depth_256lora.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sai_xl_recolor_128lora.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sai_xl_recolor_256lora.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sai_xl_sketch_128lora.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sai_xl_sketch_256lora.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sargezt_xl_depth.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sargezt_xl_depth_faid_vidit.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sargezt_xl_depth_zeed.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/sargezt_xl_softedge.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_diffusers_xl_canny.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_diffusers_xl_depth_midas.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_diffusers_xl_depth_zoe.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_diffusers_xl_lineart.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_diffusers_xl_openpose.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_diffusers_xl_sketch.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_xl_canny.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_xl_openpose.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/t2i-adapter_xl_sketch.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/thibaud_xl_openpose.safetensors?download=true
https://huggingface.co/lllyasviel/sd_control_collection/resolve/main/thibaud_xl_openpose_256lora.safetensors?download=true

 

將下載『.pth模型』『.yaml描述』『.safetensors模型』复制至models檔䅁夾

『C:\stable-diffusion-webui\extensions\sd-webui-controlnet\models』

模型標記 模型版本 品質 SD版本 預處理 文檔擴展名
control v11-1.1版 e實驗品 sd15 ip2p .pth模型
  v11f1修正版1 p正品 sd21   .yaml描述
    u半成品     .safetensors模型

 

下载VAE模型

https://huggingface.co/stabilityai/sdxl-vae
sdxl_vae.safetensors

擺係

C:\stable-diffusion-webui\models\VAE

 

  1. 撳『Settings』->『Stable Diffusion』
  2. 『Random number generator source.亂數生成源』揀『CPU』.
  3. 撳『Settings』->『Sampler parameters』
  4. 勾『SGM noise multiplier』將初始雜訊與官方SDXL實現相配-僅適用於再現影像.
  5. 撳『Settings』->『Compatibility』
  6. 勾『Do not make DPM++ SDE deterministic across different batch sizes.』保留 DPM++SDE采样器在不同批量之间结果差异.
  7. 撳『Apply settings』應用設定.
  8. 撳『Reload UI』重置圖形界面.

 

 

係『txt2img』『img2img』下側『ControlNet』

Enable使能 勾選後撳『ControlNet』先啟用.
Low VRAM低顯存 顯存細過4GB,勾選
Pixel Perfect完美像素 自動匹配解像,實現最佳效果
Allow Preview 允許預覽
Effective Region Mask有效區遮擋  
Upload independent control image上傳獨立控制影畫  
Preprocessor預處理  
Model模型  
Control Weight權重 ControlNet對影像影響值, 權重值設0.6~1.1
Starting Control Step 開始介入時機,默認0,叢開始影響影像.
Ending Control Step 結束介入時機,默認1,對影像影響至結束
Annotator resolution 影像解像
Canny-Low threshold 值越低越細致
Canny-High threshold 值越高越粗糙

 

Control類型  
all 冚辦闌
Canny 硬邊緣
Depth 深度
IP-Adapter 圖生圖
Inpaint 局部重繪
Instant-ID  
InstructP2P 指導圖生圖
Lineart 線稿
MLSD 直線
NormalMAP 法線貼圖
OpenPose 姿勢
Recolor 重新上色
Reference 引用
Revision 修正
Scribble 涂鴉
Segmentation 語義分割
Shuffle  
SoftEdge  
SparseCTRL  
T2I-Adapter 文生圖
Tile 平鋪

 

 

NETGEAR® GS116EV2千兆交換機

NETGEAR® GS116EV2千兆交換機
NETGEAR® GS116EV2千兆交換機
NETGEAR® GS116EV2千兆交換機
NETGEAR® GS116EV2千兆交換機
NETGEAR® GS116EV2千兆交換機
NETGEAR® GS116EV2千兆交換機
NETGEAR® GS116EV2千兆交換機
NETGEAR® GS116EV2千兆交換機
CAT8
CAT8

中古『NETGEAR® GS108』得8網口,諗住買16口『NETGEAR® GS116EV2』.两百幾紋.

『NETGEAR』網口左右各壹眼LED燈.左燈著『100m/bps』带寬,右燈著『10m/bps』带寬, 左右燈著『1000m/bps』带寬.

電腦網卡左燈著係『通電』燈,右燈係信號指示燈.

點知『GS116EV2』有壹個網口得『100m/bps』带寬,可熊係網線造成,重新夾CAT8頭.也可能另壹邊網卡『100m/bps』带寬造成,『JBL-L75MS』係『100m/bps』带寬.

 

 

蒞電著機

『AC Power Loss』『Power On』蒞電著機
『AC Power Loss』『Power On』蒞電著機

仲係『pentium Ⅱ』年代,『INTEL原廠』底板識插電著機, 砌『NAS』『Router』係斷電後『蒞電著機』. 以保障『網络』.

  1. 著機撳『del』鍵, 进入『BIOS』.
  2. 『Advanced』->『Wake Up Function』->『AC Power Loss』
  3. 揀『Power On』蒞電著機.
  4. 揀『Last State』恢复電前状態.

 

JBL-L75MS總合音樂系統

JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統

 

AUX3.5MM
AUX3.5MM
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統
JBL-L75MS總合音樂系統

本蒞諗住買『惠威M-80W』,聽講質量麻麻一直冇落手.

睇中『JBL-L75MS』, 兩個5.25寸低音, 兩個1寸高音, 壹個4寸中音. 總合係單壹箱內.搞特價4798果斷落手.

順風寄蒞,三重紙箱, 『音箱』長790MM摆吾入書架.

附件有『電池』『摇控』『勾』『指南書』『電線』. 冇畀『3.5MM音頻線』, 好在支持『RJ45網線』『WIFI』『USB線』『藍牙』

 

『藍牙』連線

  1. 首先撳『音箱』頂『中間䭈』, 至『藍牙』燈閃
  2. 撳『中間制』3秒吾放
  3. 依加先著『藍牙』,連『JBL-L75ms』.

 

『AUX3.5MM』音箱線

Windows10藍牙連線-吾知係咪藍牙驅動造成,間歇冇聲斷聲,後蒞買两頭3.5MM插頭連線.

 

『WLAN』網口

插網線後,通過手機電腦連線『192.168.1.5』,有可能係其它ip,登錄『音箱』後台. 可以連『wifi』.

 

『USB』口

插USB線冇反應,事因佢插USB磁碟.

  1. 將古仔錄入USB磁碟.
  2. 撳搖控『雲』鍵
  3. 通過『手機』『電腦』連線『http://192.168.1.5/webclient/』
  4. 撳『USB』擇古仔.
  5. 閂網頁後音箱依然播放.
  6. 撳搖控『Play/Pause』鍵

 

 

連『WIFI』

插網線後,通過手機電腦連線『192.168.1.5』

  1. 撳『Network Settings』
  2. 撳『Start scan』
  3. 勾『SSID』-wifi名
  4. 填『Password』密碼
  5. 撳『Configure』儲存

 

 

『SFX』聲場增強

摇控『SFX』鍵-加强室內立體聲寬廣聲場,冇效果.

 

『接地』

有獨立接地口,閉環接地線,屋企接地係邊?

 

『低音』BASS CONTOUR

『低音調節』撥『-3DB』加重低音輸出. 聽人聲吾使撥.

 

 

 

 

 

 

 

 

 

ATX火牛20PIN轉24PIN

ATX火牛20PIN轉24PIN
ATX火牛20PIN轉24PIN
ATX火牛20PIN轉24PIN
ATX火牛20PIN轉24PIN
ATX火牛20PIN轉24PIN
ATX火牛20PIN轉24PIN
ATX火牛20PIN轉24PIN
ATX火牛20PIN轉24PIN

有舊『ATX火牛』230W, 諗住用係『B450-ITX』配『RYZEN5-1500X』得60W岩岩够. 但係舊『ATX火牛』20pin. 冇左4pin插係『B450-ITX』照樣著機.多出4pin分别係『3.3v』『5V』『12V』『地』. 理論蒞講通過係飛線增加『4PIN』.網有20PIN轉24PIN線,直頭吾著機,好彩冇燒底板.

 

益衡SFX模組750W火牛ENP-8175

益衡SFX模組750W火牛ENP-8175
益衡SFX模組750W火牛ENP-8175
益衡SFX模組750W火牛ENP-8175
益衡SFX模組750W火牛ENP-8175
益衡SFX模組750W火牛ENP-8175
益衡SFX模組750W火牛ENP-8175
益衡SFX模組750W火牛ENP-8175
益衡SFX模組750W火牛ENP-8175
24PIN
24PIN

新買ITX機箱諗住用翻『益衡FLEX-600W火牛』, 點知装得『atx』同『sfx』火牛, 唯有買『益衡SFX火牛』總功率750瓦,『SFX』同係為『itx』細機箱設計, 方體更适合係細機箱.

配線齊但係主板24PIN偏短,後蒞買30CM長24PIN駁線.且功耗下火牛風轉减小噪聲.

㸃知雜牌『X99-itx』掉失『M.2-SSD』, 以為係火牛引起.又再買『EVGA SFX 650W』㸃知仲衰. 後蒞换左amphenol-sata線先搞掂.

 

Stable Diffusion網絡共享

Stable Diffusion網絡共享
Stable Diffusion網絡共享
Stable Diffusion網絡共享
Stable Diffusion網絡共享
Stable Diffusion網絡共享
Stable Diffusion網絡共享
Stable Diffusion網絡共享
Stable Diffusion網絡共享

壹臺『Stable Diffusion』電腦,可以有多塊『NVIDIA-GPU顯卡』,發熱噪聲犀利, 唯有擺係機房仔,係內網用『手機』『平板』『電腦』訪問『Stable Diffusion』.

  1. 編缉『webui-user.bat』
C:\stable-diffusion-webui\webui-user.bat
  1. 對『bat』添加『–listen』参數.
set COMMANDLINE_ARGS=–listen
  1. 𢴇行『webui-user.bat』 ip地埗『http://0.0.0.0:7860』
  2. 『http://0.0.0.0』指本機ip地埗
  3. 進入『命令行模式CMD
  4. 用『ipconfig』睇ipv4地埗係『http://192.168.1.8』, 台台機吾同.
  5. 『http://192.168.1.8:7860』訪問『Stable Diffusion』

 

係win10仲要防火牆加網埠監聽.

  1. 『控制台』->『windows defender防火牆』->『進皆設定』
  2. 『輸入規則』->『新增規則』
  3. 勾『連接埠』
  4. 勾『TCP(T) 』
  5. 勾『特定本機連接埠』填『7860』
  6. 勾『允許連線』
  7. 勾『網域(D)』『私人(P)』『公用(U)』
  8. 『名稱』填『Stable Diffusion』

AFUDOS

AFUDOS.EXE
AFUDOS.EXE

更新『AMI-BIOS』有『AFUWIN』同埋『AFUDOS』, 但係『AFUWIN』吾支緩『win10』, 得翻『AFUDOS』 .

  1. 用『Rufus』制作『MS-DOS』引導『USB磁碟』.
  2. 將『EXE』同埋『BIOS.BIN』复制入USB磁碟.
  3. 登入BIOS以『USB磁碟』引導進入『MS-DOS』.
  4. 以『EXE BIOS.BIN /P』更新BIOS.
  5. 更新BIOS過程,切勿停電或重啟電腦,導致BIOS寫神,未能BOOT機.
示例
AFUDOS.EXE BIOS.BIN /0 導出BIOS
AFUDOS.EXE BIOS.BIN /P 寫入MAIN BIOS
AFUDOS.EXE BIOS.BIN /B 寫入啟動块Boot Block
AFUDOS.EXE BIOS.BIN /santa 强制寫BIOS
AFUDOS.EXE F BIOS.BIN 强制寫BIOS

 

Rufus-USB開機磁碟

Rufus-USB開機磁碟
Rufus-USB開機磁碟

華南X99-F8D Plus』開機蓝屏『TeeDriverW8x64.sys』, 可禁節能模式『CPU C3/C6』修复,但系冇左『睡眠模式』.諗住試更新BIOS修复.但系雜牌主板『Q-FLASH』冇『BIOS』更新程式.更新『AMI-BIOS』用『AFUDOS.EXE』,係Win10冇DOS啟動磁碟,利用『Rufus』制『MS-DOS』開機磁碟. 同『Etcher』壹樣, 但係『Rufus』內含『MS-DOS』同『FreeDOS』映像.

 

登入『http://rufus.ie』下載『rufus-4.5.exe』.

  1. 『開機模式』揀『MS-DOS』
  2. 『資料分割配置』揀『MS-DOS』
  3. 『目标系統』揀『BIOS(uefi-CSM)』
  4. 撳『執行』
  5. 复制『exe』『bios.bin』入usb磁碟
  6. 重啟撳『DELETE』入『BIOS』.
  7. 撳『USB開機磁碟』入『MS-DOS』.
  8. 輸『exe bios.bin』撳『ENTER』, 更新『BIOS』.

 

http://rufus.ie
https://github.com/pbatard/rufus/releases/download/v4.5/rufus-4.5.exe

 

Sound Forge聲音處理程式

Sound Forge聲音處理程式
Sound Forge聲音處理程式

諗住剪日語五辻聲带片頭,係學電腦初年『andre LaMothe』講過『Sound Forge』易入門,且聲音處理佢至掂.拖入原始聲音檔

  1. 用滑鼠拖選聲带片頭
  2. 撳『EDIT』->『CUT』
  3. 撳『File』->『Save As』
  4. 『存檔類型揀』揀『MP3 Audio(*.mp3)』
  5. 撳『Save』存為

Stable Diffusion模型下載

Stable Diffusion模型下載『基礎模型』
Stable Diffusion模型下載『基礎模型』

當睇到下面信息『Stable Diffusion』已装掂,但係缺『基礎模型』.

No checkpoints found. When searching for checkpoints, looked at:
– file C:\stable-diffusion-webui\model.ckpt
– directory C:\stable-diffusion-webui\models\Stable-diffusion
Can’t run without a checkpoint. Find and place a .ckpt file into any of those locations. The program will exit.

先去『civitai.com』下載模型

https://civitai.com/
https://huggingface.co/

係『Stable Diffusion』左上角揀基礎模型.擴展名『.safetensors』『.ckpt』, 大細係6GB~4GB之間. 『基礎模型』吾可叠加.

『基礎模型』擺係指定檔案夾.

Model模型 檔案夾位置
Checkpoint『.ckpt』 C:\stable-diffusion-webui\models\Stable-diffusion
.safetensors C:\stable-diffusion-webui\models\Stable-diffusion

『基礎模型』添加封面,圖檔名與模型名壹致,同『基礎模型』模型擺係壹起,之後撳『refresh page』刷新.

基礎模型 model.safetensors
封面圖 model.png

 

Stable Diffusion-下載安裝

Stable Diffusion下載安裝
Stable Diffusion下載安裝
Stable Diffusion下載安裝
Stable Diffusion下載安裝
Stable Diffusion下載安裝
Stable Diffusion下載安裝

Stable Diffusion』開源AI划畫畵程式. 輕易係網络下載,部署係電腦行.

https://github.com/AUTOMATIC1111/stable-diffusion-webui

『提示詞』畀『Clip』解讀, 『Diffusion』逐步生成圖像.

『提示詞』->『Clip』->『Diffusion』->『VAE』->『畵』

 

硬件要求

  1. NVIDIA RTX孖2080Ti-組NVLink.
  2. 固態磁碟吾細於20gb

 

部署運行環境.

  1. Python下載安装, 必需裝『Python 3.10.6
  2. git下載安装
  3. PyTorch下載安裝
  4. gfpgan
  5. Clip
  6. open_clip
  7. httpx
  8. transformers』模型分詞器.
  9. torchmetrics
  10. open-clip-torch
  11. v1-5-pruned-emaonly.safetensors
  12. Stable Diffusion模型下載

 

部署Stable Diffusion

  1. 撳『Win+r』填cmd
  2. 碟符『c:』撳『enter』
  3. 撳『.』入『c:』碟根
  4. 『GIT』克隆『Stable Diffusion』, 填下面克隆碼.
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
  1. 等待克隆结束, 出現100%-done
  2. 吾对下載『stable-diffusion-webui-1.0.0-pre.zip』版本過舊.
  3. 复制『exe』路徑,『Stable Diffusion』自動复制python. 非『Python 3.10.6』唔匹配.
“C:\Program Files\Python310\python.exe”
  1. 以記事本编輯『C:\stable-diffusion-webui\webui-user.bat』
  2. 编輯『webui-user.bat』
@echo off
set PYTHON=”C:\Program Files\Python310\python.exe”
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=–xformers
call webui.bat
  1. 刪『C:\stable-diffusion-webui\venv』資料夾.
  2. 執行『C:\stable-diffusion-webui\webui-user.bat』.
  3. 非『Python 3.10.6』唔匹配.
ERROR:Could not find a version that satisfies the requirement torch
ERROR:NO matching distribution found for torch
  1. 檢查最新版pip時出錯.
WARNING:There was an error checking the latest version of pip.
  1. 手動升級pip至最新版.
python -m pip install –upgrade pip
C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install –upgrade pip
  1. PyTorch未稳到gpu
RuntimeError: Torch is not able to use GPU; add –skip-torch-cude-test to COMMANDLINE_ARGS variable to disable this check
  1. 跳過gpu檢測, 編輯『webui-user.bat』.
set COMMANDLINE_ARGS=–xformers –skip-torch-cuda-test
  1. 未有裝gfpgan
RuntimeError: Couldn’t install gfpgan.
  1. 未有裝Clip
RuntimeError: Couldn’t install clip.
  1. 未有裝open_clip
RuntimeError: Couldn’t install open_clip.
  1. 未有裝『transformers』模型分詞器.
OSError: Can’t load tokenizer for ‘openai/clip-vit-large-patch14’. If you were trying to load it from ‘https://huggingface.co/models’, make sure you don’t have a local directory with the same name. Otherwise, make sure ‘openai/clip-vit-large-patch14’ is the correct path to a directory containing all relevant files for a CLIPTokenizer tokenizer.
  1. 未有裝httpx
TypeError: AsyncConnectionPool.__init__() got an unexpected keyword argument ‘socket_options’
  1. 未有裝torchmetrics
ImportError: cannot import name ‘_compare_version’ from ‘torchmetrics.utilities.imports’ (C:\stable-diffusion-webui\venv\lib\site-packages\torchmetrics\utilities\imports.py)
  1. 『Stable Diffusion』冇自带模型.需自行下載.
Downloading: “https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.safetensors” to C:\stable-diffusion-webui\models\Stable-diffusion\v1-5-pruned-emaonly.safetensors
  1. 若中斷可刪『venv』重构
C:\stable-diffusion-webui\venv
  1. 當妳睇到『http://127.0.0.1:7860』網頁,証明掂左, 『Stable Diffusion』奉行『輵』『殼』分离哲學. 『http://127.0.0.1:7860』係『殼』, 『殼』崩潰吾會會影影響『輵』.
Running on local URL:  http://127.0.0.1:7860

 

 

open-clip-torch下載安裝

open-clip-torch下載安裝
open-clip-torch下載安裝

安裝『Stable Diffusion』時未有安裝『open-clip-torch』

changing setting sd_model_checkpoint to v1-5-pruned-emaonly.safetensors [6ce0161689]: AttributeError

Traceback (most recent call last):

AttributeError: ‘NoneType’ object has no attribute ‘lowvram’
  1. 進入『命令行模式CMD
  2. 執行下列安裝指令
pip install open-clip-torch==2.20.0
C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install open-clip-torch==2.20.0

 

v1-5-pruned-emaonly.safetensors下載安裝

v1-5-pruned-emaonly.safetensors下載安裝
v1-5-pruned-emaonly.safetensors下載安裝

『Stable Diffusion』冇自带模型,需自行下載,當妳睇到下面信息,下載『v1-5-pruned-emaonly.safetensors』, 之后擺係『C:\stable-diffusion-webui\models\Stable-diffusion\』資料夾.

Downloading: “https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.safetensors” to C:\stable-diffusion-webui\models\Stable-diffusion\v1-5-pruned-emaonly.safetensors

 

https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.safetensors Sour
C:\stable-diffusion-webui\models\Stable-diffusion\v1-5-pruned-emaonly.safetensors dest

 

transformers更新安裝

更新transformers模型分詞器
更新transformers模型分詞器
安裝transformers模型分詞器.
安裝transformers模型分詞器.

當妳『Stable Diffusion』睇到下面信息,未有裝『transformers』模型分詞器.或版本舊.

OSError: Can’t load tokenizer for ‘openai/clip-vit-large-patch14’. If you were trying to load it from ‘https://huggingface.co/models’, make sure you don’t have a local directory with the same name. Otherwise, make sure ‘openai/clip-vit-large-patch14’ is the correct path to a directory containing all relevant files for a CLIPTokenizer tokenizer.
  1. 進入『命令行模式CMD
  2. 裝『transformers』模型分詞器.
pip install transformers
C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install transformers
  1. 更新『transformers』 模型分詞器
pip install –upgrade transformers
C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install –upgrade transformers

 

 

torchmetrics下載安裝

torchmetrics下載安裝
torchmetrics下載安裝

安裝『Stable Diffusion』時未有裝『torchmetrics』.

ImportError: cannot import name ‘_compare_version’ from ‘torchmetrics.utilities.imports’ (C:\stable-diffusion-webui\venv\lib\site-packages\torchmetrics\utilities\imports.py)

進入『命令行模式CMD

查版本號

pip show torchmetrics

缷載

pip uninstall torchmetrics

下載0.11.4版本

C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install torchmetrics==0.11.4

 

httpx下載安裝

httpx下載安裝
httpx下載安裝

安裝『Stable Diffusion』時報錯

TypeError: AsyncConnectionPool.__init__() got an unexpected keyword argument ‘socket_options’
  1. 進入『命令行模式CMD
  2. 執行下列安裝指令
C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install httpx==0.24.1 -force-reinstall
python.exe -m pip install httpx==0.24.1 -force-reinstall

 

 

 

OpenCLIP下載安裝

OpenCLIP下載安裝
OpenCLIP下載安裝

安裝『Stable Diffusion』時未裝『open_clip』. 其實亦係『clip

RuntimeError: Couldn’t install open_clip.

進入『open_clip

https://github.com/mlfoundations/open_clip

或者下載『open_clip』落『C:』碟

git clone https://github.com/openai/open_clip.git

下載『open_clip-main.zip』後解壓本地安裝

https://codeload.github.com/mlfoundations/open_clip/zip/refs/heads/main

复制『C:\open_clip』到『C:\stable-diffusion-webui\venv\Scripts』

C:\open_clip Sour
C:\stable-diffusion-webui\venv\Scripts dest

進入『命令行模式CMD

CD去『CLIP』檔䅁夾, 作為本地路徑

cd C:\stable-diffusion-webui\venv\Scripts\open_clip

执行下列安裝指令

C:\stable-diffusion-webui\venv\Scripts\python.exe setup.py build install

 

常試通過pip指令安裝

pip install open_clip_torch

 

NVIDIA RTX孖2080Ti-組NVLink

NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX孖2080Ti-組NVLink
NVIDIA RTX 2080Ti NVLink Nvidia-smi
NVIDIA RTX 2080Ti NVLink Nvidia-smi
552.22-desktop-win10-win11-64bit-international-nsd-dch-whql
552.22-desktop-win10-win11-64bit-international-nsd-dch-whql
NVLinkTest
NVLinkTest

諗住買3090Ti點知連成萬,孖2080Ti送NVLink先陸千有找.

登入NVIDIA官網下載嘉時至新驅動

https://www.nvidia.com/Download/index.aspx?lang=en-us

 

NVIDIA Driver Downloads
NVIDIA Driver Downloads
Product Type GeForce
Product Series GeForce RTX 40 Series
Product GeForce RTX 4090 Ti
Operating System Windows 10 64-bit
Download Type NVIDIA Studio Driver

撳Search下載驅動

https://us.download.nvidia.com/Windows/552.22/552.22-desktop-win10-win11-64bit-international-nsd-dch-whql.exe
  1. 登入『命令列介面cmd』.
  2. 撳『nvidia-smi
  3. 睇到孖『NVIDIA GeForce RTX 2080 Ti』

 

新顯卡NVLINK金手指有封膜,撕左插入NVLINK桥即掂.冇使搞BIOS.

  1. 撳『NVIDIA控制面板』
  2. 撳『3D設定』->『設定SLI,Surround,PhysX』->『SLI設定』
  3. 勾『最大3D效能』

 

下載『NVLinkTestCUDA11』測試NVLINK桥造總線带寛

https://www.pugetsystems.com/support/guides/how-to-enable-and-test-nvidia-nvlink-on-quadro-and-geforce-rtx-cards-in-windows-10-1266/
https://puget.systems/go/NVLinkTestCUDA11

孖『NVIDIA GeForce RTX 2080 Ti』都插係PCIEx16,鋪頭送『GeForce NVLINK』桥造總線带寛得『48.08GB/S』, 可能要『Quadro Nvlink』先有『100GB/S』带寛.

Clip下載安裝

Clip下載安裝
Clip下載安裝
Clip下載安裝
Clip下載安裝

clip』建构圖像文字之間連系模型,安裝『Stable Diffusion』時未有安裝『clip』.

RuntimeError: Couldn’t install clip.

進入『clip

https://github.com/openai/clip/

下載『clip』落『C:』碟

git clone https://github.com/openai/CLIP.git

或者下載『CLIP-main.zip』後解壓

https://codeload.github.com/openai/CLIP/zip/refs/heads/main

复制『C:\CLIP』到『C:\stable-diffusion-webui\venv\Scripts』

C:\CLIP Sour
C:\stable-diffusion-webui\venv\Scripts dest

進入『命令行模式CMD

CD去『CLIP』檔䅁夾, 作為本地路徑

cd C:\stable-diffusion-webui\venv\Scripts\CLIP

执行下列安裝指令

C:\stable-diffusion-webui\venv\Scripts\python.exe setup.py build install

 

GFPGAN下載安裝

gfpgan下載安裝
gfpgan下載安裝

安裝『Stable Diffusion』時未有安裝『gfpgan』人樣修复.

RuntimeError: Couldn’t install gfpgan.

進入『GFPGAN

https://github.com/TencentARC/GFPGAN

下載『GFPGAN』落『C:』碟

git clone https://github.com/TencentARC/GFPGAN.git

复制『C:\GFPGAN』到『C:\stable-diffusion-webui\venv\Scripts』

C:\GFPGAN Sour
C:\stable-diffusion-webui\venv\Scripts dest

進入『命令行模式CMD

CD去『GFPGAN』檔䅁夾, 作為本地路徑

cd C:\stable-diffusion-webui\venv\Scripts\GFPGAN

执行下列安裝指令

C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install basicsr
C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install facexlib
C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install -r requirements.txt
C:\stable-diffusion-webui\venv\Scripts\python.exe setup.py develop
C:\stable-diffusion-webui\venv\Scripts\python.exe -m pip install realesrgan

 

PyTorch下載安裝

PyTorch下載安裝
PyTorch下載安裝
PyTorch下載安裝
PyTorch下載安裝

『Torch』基於神經網络人工智慧輵, 『PyTorch』係『Python』版本

首先确認NVIDIA顯卡支持CUDA版本. 下載最新顯卡驅動『552.22-desktop-win10-win11-64bit-international-nsd-dch-whql.exe』

 

網络安装『PyTorch

  1. 進『命令行模式CMD
pip3 install torch torchvision torchaudio –index-url https://download.pytorch.org/whl/cu121

 

本地安装『PyTorch

  1. 進『命令行模式CMD
  2. 行『NVIDIA-SMI.exe
  3. 确認『torch版』+『cuda版』+『python版』+『win/linux版』
  4. 部機『torch-2.3.0』+『cuda-12.4』+『python-3.10.6』+ 『Win-x64』
  5. 版本配對『cp=python』,『cu<=cuda』
https://download.pytorch.org/whl/torch/
  1. 直接将『.whl』下載落蒞直接本地安裝『torch-2.3.0+cu121-cp310-cp310-win_amd64.whl
https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp310-cp310-win_amd64.whl#sha256=002027d18a9c054f08fe9cf7a729e041229e783e065a71349015dcccc9a7137e
  1. 將『.whl』摆係『D:』碟.
  2. 管現員身份進入命令行模式cmd
  3. 『pip install whl “d:\torch-2.3.0+cu121-cp310-cp310-win_amd64.whl”』
  4. 檢查最新版pip時出錯.
WARNING:There was an error checking the latest version of pip.
  1. 管現員身份進入命令行模式cmd
Defaulting to user installation because normal site-packages is not writeable
  1. 手動升級pip至最新版. 以管理員身份𢴇行.
python -m pip install –upgrade pip

測試『Pytorch』返回true,表示可調用GPU-CUDA指令, 進入『Pytho3.10』.

import torch
print(torch.__version__)
torch.cuda.is_available()

 

缷載tcrch

Pip uninstall torch
Pip uninstall torchaudio torchvision
Pip uninstall torch-geometric torch-scatter torch-sparse torch-cluster torch-spline-conv

 

https://pytorch.org/get-started/locally/
https://pytorch.org/get-started/previous-versions/

 

NVIDIA TESLA P40

NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40
NVIDIA TESLA P40 GPU REGEDIT
NVIDIA TESLA P40 GPU REGEDIT
NVIDIA TESLA P40 GPU
NVIDIA TESLA P40 GPU
NVIDIA TESLA P40 GPUZ
NVIDIA TESLA P40 GPUZ
NVIDIA TESLA P40 NVIDIA-SMI
NVIDIA TESLA P40 NVIDIA-SMI
NVIDIA TESLA P40 NVIDIA GPU
NVIDIA TESLA P40 NVIDIA GPU
NVIDIA TESLA P40 NVIDIA GPU
NVIDIA TESLA P40 NVIDIA GPU

睇人AI繪畫,諗住買NVIDIA顯卡,中古RTX3060都要兩千幾,

可能係機房大批淘汰,Tesla P40-24GB係網大量焦拋售,柒百伍包郵,成色麻麻.配NVIDIA-8pin專用供電線,睇佢散熱槽,應該係風道式散熱. 係屎窟裝涡輪風扇, 點知電流大噪䡰大,再加30%降壓線壓低風.

 

使能PCIE-Above 4G

  1. 著機撳DEL鍵,BIOS
  2. ENABLED PCIE-Above 4G

 

驅動下載

  1. 登入https://www.nvidia.com/Download/index.aspx?lang=en-us
填NVIDIA Driver Downloads
NVIDIA Driver Downloads
Product Type Data Center Tesla
Product Series P-Series
Product Tesla P40
Operating System Windows 10 64-bit
  1. 撳Search
  2. 下載『33-data-center-tesla-desktop-win10-win11-64bit-dch-international.exe
  3. 重裝『Quadro K6000』驅動會自動裝埋『Tesla P40』
  4. 登入『命令行界面cmd』.
  5. 撳『nvidia-smi
  6. 分別係『Tesla P40』『Quadro K6000

 

『Tesla P40』裝驅動 默認係『TCC計算模式』, 需改為『WDDM圖形模式』.

  1. 撳『Win+r』鍵,著『exe』
  2. 左側展開
Computer \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}
  1. 展開左側
  DriverDesc
0000 NVIDIA Tesla P40
0001 NVIDIA Quadro K6000
  1. 修改『0000』-『NVIDIA Tesla P40』
NAME TYPE VALUE
AdapterType REG_DWORD 1  – DELETE
FeatureScore REG_DWORD 0Xcf->0Xd1
GridLicensedFeatures REG_DWORD 7   (强制開啟GRID圖形模式)
EnableMsHybrid REG_DWORD 1
  1. 修改『0001』-『NVIDIA Quadro K6000
NAME TYPE VALUE
EnableMsHybrid REG_DWORD 2
  1. 重啟電腦
  2. 登入『命令行界面cmd』.
  3. 撳『ctrl+alt+del』鍵, 入『工作管理員』
  4. 撳『效能』,睇到『GPU0-NVIDIA Tesla P40』同埋『GPU0-NVIDIA Quadro K6000』. 『掂』
  5. 撳『nvidia-smi
  6. 『NVIDIA Tesla P40』改為『WDDM圖形模式』
  7. 進入『GPU-Z』
  8. 下面框框冚辦闌打勾勾

 

圖形設定指定-GPU: NVIDIA Tesla P40

  1. 撳『設定』
  2. 撳『系统』->『顯示器』->『圖形設定』
  3. 『硬體加速GPU排程』撳『開啟』
  4. 揀『傅统型應用程式』
  5. 撳『瀏覧』揀『.EXE』
  6. 撳『選項』
  7. 勾『GPU: NVIDIA Tesla P40』

 

NVIDIA GPU指定『Tesla P40』

  1. 入『NVIDIA控制面板』
  2. 撳『3D設定』->『管理3D設定』
  3. 『廣域設定』
  4. 『CUDA-GPU』揀『Tesla P40』
  5. 『OpenGL呈現GPU』揀『Tesla P40』

 

 

 

nvidia-smi

nvidia-smi
nvidia-smi

『nvidia-smi.exe』, 係nvidia公司開發蒞睇gpu. 基於命令行界面, 而非圖形界面. 可能考慮兼容同稳定.随nvidia顯卡驅動安裝自動复制,路徑如下.

C:\Windows\System32\nvidia-smi.exe
  1. 撳『win+r』, 填cmd, 登入『命令行界面』.
  2. 撳『nvidia-smi.exe』
講解
Nvidia-smi 程式版本號
Driver version 顯卡驅動版本號
CUDA Version CUDA至高支援版本號
GPU 顯卡編號, 0開如始編址,
FAN 風扇轉速(0~100%),冇風扇(N/A)
NAME 顯卡型號
Temp GPU温度,0C ~ 100C
Perf 性能, 至高p0級~至低p12級
Pwr: Usage/Cap 顯卡能耗,
『usage』
使用率,『Cap』能耗牆
Bus-ID 顯卡總線地埗
Disp.A 圖像顯示輸出,OFF閂, ON著
Memory-Usage 顯存使用率
GPU-Util GPU使用率
Compute M. 計算模式DEFAULT/EXCLUSIVE_PROCESS/PROHIBITED
ECC 顯存校驗糾錯

 

CUDA下載安装

CUDA下載安装
CUDA下載安装

CUDA係NVIDIA為GPU并行運算而開發,用C語言調用GPU-CUDA指令集進行大規模并行運行.

虽然上世紀以經有『INTEL-SEE』并行運算指令集,但係『NVIDIA-CUDA』青出於蓝.

『PyTorch』暫時至高支持『CUDA 12.1』.

登入『CUDA官網』, 下載『CUDA Toolkit 12.1.1

 

https://developer.nvidia.com/cuda-toolkit-archive/

 

gitHub攻略

git下載安裝
git下載安裝
git下載安裝
git下載安裝
git下載安裝
git下載安裝

github

gitHub攻略

git系統等於『檔案伺服』外加『版本管理』,

『Linux』安裝git

通過SSH登入

ssh   username@ubuntu

root@ubuntu’s password: 填密碼. 冇字符顯示, 撳Enter鍵.

安裝git架撑

sudo apt update
sudo apt install git
sudo apt update git

下載『Quectel_MHI』

sudo git clone https://github.com/ChaingTsung/Quectel_MHI/

『OpenWRT』安装『git』從缺小http傳輸支

git: ‘remote-https’ is not a git command. See ‘git –help’.

安装『git-http』修复

sudo apt install git-http
sudo apt install curl
sudo apt install libcurl4

 

git  –version 版本號

 

 

『windows10』下載祗安裝『Git-2.45.0-64-bit.exe』,家時最新2.45.0版.

  1. 連入『https://github.com/』官網
  2. 撳Download->Windows
  3. 下載最新版
  4. 執行『Git-2.45.0-64-bit.exe
  5. 走勾『only show new options』只顯示新選項,撳『next』
Additional icons on the Desktop 桌面捷徑
Windows Explorer integration Git Bash Here 右鍵菜單
Windows Explorer integration Git GUI Here 右鍵菜單
Git LFS (Large File Support) 支援大檔䅁
Associate .git* configuration files with the default text edito 配置檔䅁.git關聯edito
Associate .sh files to be run with Bash 關聯.sh檔䅁
Check daily for Git for Windows updates 日日檢查更新
Add a Git Bash Profile to Windows Terminal 將Git Bash設定檔新增到Windows終端
Scalar(Git add-on to manage large-scale repositories) 管理大型儲存庫

 

注册GitHub賬戶

  1. 登入『https://github.com/』右上角撳 『signup
賬戶信息  
EMAIL電郵 電子郵箱, 用蒞收驗證電郵.
Username 字母+字符 混合, 唯壹未被利用.
PASSWORD密碼 字母+數字+字符混合
  1. 撳『Create account』創建賬戶
  2. 驗證機器人, 對比圖形. 防此自動註冊機.
  3. 收驗證電郵. 點擊連接,激活GitHub賬戶

 

下載GitHub卓面版『GitHubDesktopSetup-x64.exe』

Python下載安裝

Python下載安裝
Python下載安裝
Python下載安装
Python下載安装
Python下載安装
Python下載安装
Python下載安裝
Python下載安裝
Python下載安裝
Python下載安裝

Python』其實係『虛擬機』, 先裝『.py』源碼編譯為字節碼『.pyc』. 『Python虛擬機』再執行『Python字節碼』. 同『java』壹樣.

登入『Python』官網『https://www.python.org/』.

  1. Stable Diffusion需下載10.6版係『python-3.10.6-amd64.exe
  2. 勾『Use admin privileges when installing py.exe』管理帳號安装程式
  3. 勾『Add python.exe to PATH』将路徑加入『環境變量』
  4. 撳『Customize installation』定制安装.
  5. 『Optional features』選項
Documentation 文檔
Pip (必揀)下載和管理python包
Tcl/tk and IDLE 裝IDLE包
Python test suite 裝測試包
Py launcher For all users(requires admin privileges) 裝‘py’啟動程式
  1. 『Advanced Optionsa』高级選項
Install python 3.12 for all users 冚辦闌帳號裝python程式
Associate files with python(requires the ‘py’ launcher) 關聯‘py’文檔
Create shortcuts for installed applications 制作python捷徑檔
Add Python to environment variables 將Python路徑添加到環境變量
Precompile standard library 預編譯標準庫
Download debugging symbols 下載調試符號
Download debug binaries(requires VS 2017 or later) 下載調試庫
  1. 『環境變量』->『系統變量』->『Path』
  2. 撳『新增』分别加入.
C:\Users\bookc\AppData\Roaming\Python\Python310\
C:\Users\bookc\AppData\Roaming\Python\Python310\Scripts\
C:\Users\bookc\AppData\Roaming\Python\Python310\site-packages\
C:\Program Files\Python310\Scripts\
C:\Program Files\Python310\

 

檢查最新版pip時出錯.

WARNING:There was an error checking the latest version of pip.

需手動升級pip至最新版.

python -m pip install –upgrade pip

 

https://www.python.org/
https://www.python.org/downloads/windows/
https://www.python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe

 

 

B450-ITX

B450-ITX-RGBA
B450-ITX
B450-ITX
B450-ITX
B450-ITX
B450-ITX
B450-ITX
B450-ITX
B450-ITX
B450-ITX-RGBA
B450-ITX-RGBA
B450-ITX-RGBA
B450-ITX-RGBA
B450-ITX-RGBA
B450-ITX-RGBA
B450-ITX-RGBA
B450-ITX-RGBA
B450-ITX-RGBA
B450-ITX-RGBA

買雜牌『B450-ITX』配『RYZEN5-1500X』砌臺ITX,摆係老竇屋企睇片.點知『BE200』WIFI吾認識. 早期版本,篮牙要更新BIOS.

壹年後……

平時冇點用,拎翻蒞諗住插支咪試下,壹插塊主板烧左,前后寄翻去3次,先肯换塊新RGBA版本,前後各壹條m.2磁碟,插4pin小喇叭著機BOOT.

以雜牌蒞講都算好,保养3年,壹年後烧左换新. 祗係記憶體吾兼容,間隙輕機. AID64記憶體測試報錯.舊版本返宜兼容記憶體.唯有降低頻率加大時序.

用『Ryzen DRAM Calculator』睇時序配置.

記憶體 默認值 修定後
MEM FREQUENCY(Mhz) 頻率 2400 2133
主時序配置    
Tcl 15 20
Trcdrd 15 20
Trcdwr 15 20
Trp 15 20
Tras 35 38
副時序配置    
Trc 0  
Trrds 4  
Trrdl 6  
Tfaw 23  
Twtrs 3  

休眠喚醒後顯示器黑屏,要撳『power』鍵重啟.BIOS 已UPADAE.『Win10/Linux』皆係.

B450-ITX RGBA版
m.2磁碟 2
BOOT-4pin 1
rgba燈 2
4pin風扇 2
3pin風扇 2
DEBUG 1

 

Intel Wi-Fi 7 BE200

Intel Wi-Fi 7 BE200
Intel Wi-Fi 7 BE200
Intel Wi-Fi 7 BE200
Intel Wi-Fi 7 BE200
Intel Wi-Fi 7 BE200
Intel Wi-Fi 7 BE200

之前係老竇屋企砌臺ITX電腦愛蒞睇片,『BE200』新出買蒞試試, 點知係係『b450-itx』可以認藍牙,唔認WIFI.反而係『x99-itx』藍牙WIFI都認.

唯有『AX210』配『b450-itx』, 『BE200』配『x99-itx』.

下載最新Intel WiFi驅動.

https://downloadmirror.intel.com/812774/WiFi-23.20.0-Driver64-Win10-Win11.exe
https://downloadmirror.intel.com/812775/WiFi-23.20.0-Driver64-Win10-Win11.zip
https://downloadmirror.intel.com/794069/BT-23.10.0-64UWD-Win10-Win11.exe
https://downloadmirror.intel.com/794708/BT-23.10.0-64UWD-Win10-Win11.zip

 

UTF8/BIG5/Shift-JIS/EUC-KR/GB2312判定

UTF8/BIG5/Shift-JIS/EUC-KR/GB2312判定
UTF8/BIG5/Shift-JIS/EUC-KR/GB2312判定

係電腦發展初時定義左套『ASCII碼』,得128字符,英文加數字用單字節BYTE. 後蒞各國皆自定『字符編碼』,『Shift-JIS/EUC-KR/BIG5/GB2312』皆占两字節WORD,结果係編碼重叠.所以先有亂碼.

Low 8bit Height 8bit
ASCII-128 0 ~ 0x7F N/A
BIG5漢字 0xA1 ~ 0xF9 0x40 ~ 0x7E

0xA1 ~ 0xFE

SHIFT-JIS日字 0x81~0x9f

0xe0~0xef

0x40~0x7e

0x80~0xfc

EUC-KR韓字 0xA1~0xFE 0xA1~0xFE
GB2312中字 0xA1 ~ 0xF7 0xA1 ~ 0xFE
GBK中字 0x81 ~ 0xFE 0x40 ~ 0xFE

『UTF-8』係Unicode『萬國碼』變體,首byte前缀標記字符長度.前缀0長度1, 前缀110長度2, 前缀1110長度3.以此类推.尾随byte前缀皆標記01.

『UTF-8』bin 長度
bin:0xxxxxxx 1
bin:110xxxxx 10xxxxxx 2
bin:1110xxxx 10xxxxxx 10xxxxxx 3
bin:11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 4
bin:111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 5
bin:1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 6

UTF-8判定

if ((utf8[0] & 0x80) == 0x00)

return 1;

值小於0x80的ASCII字元
if ((utf8[0] & 0xE0) == 0xC0  &&

(utf8[1] & 0xC0) == 0x80)

return 2;

2字節UTF-8字符
if ((utf8[0] & 0xF0) == 0xE0 &&

(utf8[1] & 0xC0) == 0x80 &&

(utf8[2] & 0xC0) == 0x80)

return 3;

3字節UTF-8字符
if ((utf8[0] & 0xF8) == 0xF0 &&

(utf8[1] & 0xC0) == 0x80 &&

(utf8[2] & 0xC0) == 0x80 &&

(utf8[3] & 0xC0) == 0x80)

return 4;

4字節UTF-8字符
if ((utf8[0] & 0xFC) == 0xF8 &&

(utf8[1] & 0xC0) == 0x80 &&

(utf8[2] & 0xC0) == 0x80 &&

(utf8[3] & 0xC0) == 0x80 &&

(utf8[4] & 0xC0) == 0x80)

return 5;

5字節UTF-8字符
if ((utf8[0] & 0xFE) == 0xFC &&

(utf8[1] & 0xC0) == 0x80 &&

(utf8[2] & 0xC0) == 0x80 &&

(utf8[3] & 0xC0) == 0x80 &&

(utf8[4] & 0xC0) == 0x80 &&

(utf8[5] & 0xC0) == 0x80)

return 6;

6字节UTF-8字符

值小於0x80係ASCII字符集

if ((string[0] & 0x80) == 0x00)

return 1;

BIG5漢字符集編碼范圍

if ((string[0] >= 0xA1 && string[0] <= 0xF9) &&

(string[1] >= 0x40 && string[1] <= 0x7E ||

string[1] >= 0xA1 && string[1] <= 0xFE) )

return 2;

SHIFT-JIS日字符集編碼范圍

if ((string[0] >= 0x81 && string[0] <= 0xF9 ||

string[0] >= 0xe0 && string[0] <= 0xef) &&

(string[1] >= 0x40 && string[1] <= 0x7E ||

string[1] >= 0xA1 && string[1] <= 0xFE) )

return 2;

EUC-KR韓字符集編碼范圍

if ((string[0] >= 0xA1 && string[0] <= 0xFE) &&

(string[1] >= 0xA1 && string[1] <= 0xFE))

return 2;

GB2312中字符集編碼范圍

if ((string[0] >= 0xA1 && string[0] <= 0xF7) &&

(string[1] >= 0XA1 && string[1] <= 0XFE) )

return 2;

GBK中字符集編碼范圍

if ((string[0] >= 0x81 && string[0] <= 0xFE) &&

(string[1] >= 0XA0 && string[1] <= 0XFE) )

return 2;

 

UNICODE-UTF8轉換

UNICODE-UTF8轉換
UNICODE-UTF8轉換

係電腦發展初時.定義左套『ASCII碼』,得128字符,英文加數字用單字節BYTE. 後蒞各國皆自定『字符編碼』,『BIG5/GB2312』皆占两字節WORD,结果係編碼重叠.所以先有亂碼.

UNICODE『萬國碼』,各國各自有獨立編碼段,吾重叠,同『ASCII碼』兼容.

『UNICODE』係設計之初每字符占『2 BYTE』即『USC2』字符集. 但係『2 BYTE』够支持65535字符.所以後蒞有『USC4』占『4 BYTE』.

係同壹字符串USC2同USC4會混合出現.

但係『ASCII碼』只需單字節『1 BYTE』. 所以發明左『UTF-8』以節約地方.

『UTF-8』同『UNICODE』按照下表互為轉换.

Unicode『USC2』字符集HEX 『UTF-8』bin
0x0000~0x007F 0xxxxxxx
0x0080~0x07FF 110xxxxx 10xxxxxx
0x0800~0xFFFF 1110xxxx 10xxxxxx 10xxxxxx

為左係同壹字符串『USC2』同『USC4』混合出現.係『USC4』字符『低16bit』同『高16bit』分別加前缀標記.

『低16bit』加『0xD800』,『高16bit』加『0xDC00』,再加壹區域0x10000.

前缀標記『0xD800』『0xDC00』各占6bit,各净低10bit加埋有『20bit』.够支持 『1048576』字符

USC4-低16bit前缀標記 0xD800 BIN:110110 00000 00000
USC4-高16bit前缀標記 0xDC00 BIN:110111 00000 00000

 

USC4 前缀標記 USC4=前缀標記+字符
低16bit 0xD800 BIN:110110 00000 00000 + BIN:xxxxxxxxxx
高16bit 0xDC00 BIN:110111 00000 00000 + BIN:xxxxxxxxxx

utf8 轉 usc4

首字節 value = utf8[sour] & (0xFF >> (bytes + 1));

++sour;

尾随字節 for (int i = 1; i < bytes; ++i) {

value = value << 6;

value = value | (utf8[sour] & 0x3f);// 提低6bit

++sour;

}

减壹區域 value = value – 0x10000
低16bit unicode[dest] = 0xD800 | ((value >> 10) & 0x3ff );
高16bit unicode[dest+1] = 0xDC00 | ((value) & 0x3ff);

dest = dest + 2;

utf8 轉 usc2

首字節 value = utf8[sour] & (0xFF >> (bytes + 1));

++sour;

尾随字節 for (int i = 1; i < bytes; ++i) {

value = value << 6;

value = value | (utf8[sour] & 0x3f);

++sour;

}

反轉字節 v = (value >> 24) & 0xFF;

unicode[dest] = v;

v = (value >> 16) & 0xFF;

if (v != 0) {

unicode[dest] = (unicode[dest] << 8) + v;

++dest;

}

反轉字節 v = (value >> 8) & 0xFF;

unicode[dest] = v;

v = value & 0xFF;

if (v != 0) {

unicode[dest] = (unicode[dest] << 8) + v;

++dest;

}

Usc4轉utf8

提取字符 value = (unicode[sour] – 0xD800) << 10 | (unicode[sour + 1] – 0xDC00);
加壹區域 value = value + 0x10000;

Usc2轉utf8

提取字符 value = unicode[sour];
首字節 utf8[dest] = (0xFF << (8 – bytes)) | (value >> ((bytes – 1) * 6));

++dest;

尾随字節 for (int i = 1; i < bytes; ++i) {

utf8[dest] = 0x80 | (value >> ((bytes – i – 1) * 6) & 0x3F);

++dest;

}

++sour;

『UTF-8』首byte,前缀標記字符長度. 前缀0長度1, 前缀110長度2, 前缀1110長度3. 以此类推.尾随byte前缀皆標記01.

『UTF-8』bin 長度
bin:0xxxxxxx 1
bin:110xxxxx 10xxxxxx 2
bin:1110xxxx 10xxxxxx 10xxxxxx 3
bin:11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 4
bin:111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 5
bin:1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 6

按首BIT符號,計算UTF8字符長度,返回0非UFT8字符.

『UTF-8』字符
if ((utf8[0] & 0x80) == 0x00)

return 1;

0xxxxxxx
if ((utf8[0] & 0xE0) == 0xC0  &&

(utf8[1] & 0xC0) == 0x80)

return 2;

110xxxxx 10xxxxxx
if ((utf8[0] & 0xF0) == 0xE0 &&

(utf8[1] & 0xC0) == 0x80 &&

(utf8[2] & 0xC0) == 0x80)

return 3;

1110xxxx

10xxxxxx

10xxxxxx

if ((utf8[0] & 0xF8) == 0xF0 &&

(utf8[1] & 0xC0) == 0x80 &&

(utf8[2] & 0xC0) == 0x80 &&

(utf8[3] & 0xC0) == 0x80)

return 4;

11110xxx

10xxxxxx

10xxxxxx

10xxxxxx

if ((utf8[0] & 0xFC) == 0xF8 &&

(utf8[1] & 0xC0) == 0x80 &&

(utf8[2] & 0xC0) == 0x80 &&

(utf8[3] & 0xC0) == 0x80 &&

(utf8[4] & 0xC0) == 0x80)

return 5;

111110xx

10xxxxxx

10xxxxxx

10xxxxxx

10xxxxxx

if ((utf8[0] & 0xFE) == 0xFC &&

(utf8[1] & 0xC0) == 0x80 &&

(utf8[2] & 0xC0) == 0x80 &&

(utf8[3] & 0xC0) == 0x80 &&

(utf8[4] & 0xC0) == 0x80 &&

(utf8[5] & 0xC0) == 0x80)

return 6;

1111110x

10xxxxxx

10xxxxxx

10xxxxxx

10xxxxxx

10xxxxxx

unicode轉utf8 , ASCII碼相等.

 int UnicodeToUTF8(char * utf8, const wchar_t * unicode)

{

int unicodeLength = 0;

int bytes;

int dest, sour;

DWORD value;

unicodeLength = Unicode_Length(unicode) ;

sour = dest = 0;

while (sour < unicodeLength)

{

bytes = 1;

if (unicode[sour] >= 0xD800 && unicode[sour + 1] >= 0xDC00)

bytes = 4;

else

if (unicode[sour] >= 0x00 && unicode[sour] <= 0x7F)

bytes = 1;

else

if (unicode[sour] >= 0x80 && unicode[sour] <= 0x7FF)

bytes = 2;

else

if (unicode[sour] >= 0x800 && unicode[sour] <= 0xFFFF)

bytes = 3;

else

if (((unicode[sour + 1] << 16) | unicode[sour]) >= 0x10000 &&

((unicode[sour + 1] << 16) | unicode[sour]) <= 0x1FFFFF)

bytes = 4;

else

if (((unicode[sour + 1] << 16) | unicode[sour]) >= 0x200000 &&

((unicode[sour + 1] << 16) | unicode[sour]) <= 0x3FFFFFF)

bytes = 5;

else

if (((unicode[sour + 1] << 16) | unicode[sour]) >= 0x4000000 &&

((unicode[sour + 1] << 16) | unicode[sour]) <= 0x7FFFFFFF)

bytes = 6;

else

if (((unicode[sour + 1] << 16) | unicode[sour]) >= 0x80000000)

bytes = 7;

 

if (bytes == 1)

{

utf8[dest] = unicode[sour];

++dest;

++sour;

}

else

if (unicode[sour] >= 0xD800 && unicode[sour + 1] >= 0xDC00)

{

value = (unicode[sour] – 0xD800) << 10   |  (unicode[sour + 1] – 0xDC00);

value = value + 0x10000;

utf8[dest] = (0xFF << (8 – bytes)) | (value >> ((bytes – 1) * 6));

++dest;

for (int i = 1; i < bytes; ++i) {

utf8[dest] = 0x80 | (value >> ((bytes – i – 1) * 6) & 0x3F);

++dest;

}

sour = sour + 2;

}

else

if (bytes == 2 || bytes == 3)

{

value = unicode[sour];

utf8[dest] = (0xFF << (8 – bytes)) | (value >> ((bytes – 1) * 6));

++dest;

for (int i = 1; i < bytes; ++i) {

utf8[dest] = 0x80 | (value >> ((bytes – i – 1) * 6) & 0x3F);

++dest;

}

++sour;

}

else

if (bytes >= 4)

{

value = (unicode[sour + 1] << 16) | unicode[sour];

utf8[dest] = (0xFF << (8 – bytes)) | (value >> ((bytes – 1) * 6));

++dest;

for (int i = 1; i < bytes; ++i) {

utf8[dest] = 0x80 | (value >> ((bytes – i – 1) * 6) & 0x3F);

++dest;

}

sour = sour + 2;

}

}

utf8[dest] = NULL;

return dest;

}

utf8 轉 unicode

 int UTF8ToUnicode(wchar_t * unicode, const char* utf8)

{

int utf8Length;

int sour, dest;

int bytes;

dest = sour = 0;

DWORD value;

BYTE v;

utf8Length = strlen(utf8);

while (sour < utf8Length)

{

if ((utf8[sour] & 0x80) == 0x00)

bytes = 1;

else

if ((utf8[sour] & 0xE0) == 0xC0)

bytes = 2;

else

if ((utf8[sour] & 0xF0) == 0xE0)

bytes = 3;

else

if ((utf8[sour] & 0xF8) == 0xF0)

bytes = 4;

else

if ((utf8[sour] & 0xFC) == 0xF8)

bytes = 5;

else

if ((utf8[sour] & 0xFE) == 0xFC)

bytes = 6;

else

bytes = 7;

if (bytes == 1)

{

unicode[dest] = utf8[sour];

++dest;

++sour;

}

else

if (bytes == 2 || bytes == 3)

{

value = utf8[sour] & (0xFF >> (bytes + 1));

++sour;

for (int i = 1; i < bytes; ++i) {

value = value << 6;

value = value | (utf8[sour] & 0x3f);

++sour;

}

 

v = (value >> 24) & 0xFF;

unicode[dest] = v;

v = (value >> 16) & 0xFF;

if (v != 0) {

unicode[dest] = (unicode[dest] << 8) + v;

++dest;

}

 

v = (value >> 8) & 0xFF;

unicode[dest] = v;

v = value & 0xFF;

if (v != 0) {

unicode[dest] = (unicode[dest] << 8) + v;

++dest;

}

}

else

if (bytes >= 4 )

{

value = utf8[sour] & (0xFF >> (bytes + 1));

++sour;

for (int i = 1; i < bytes; ++i) {

value = value << 6;

value = value | (utf8[sour] & 0x3f);

++sour;

}

value = value – 0x10000;

unicode[dest] = 0xD800 | ((value >> 10) & 0x3ff );

unicode[dest+1] = 0xDC00 | ((value) & 0x3ff);

dest = dest + 2;

}

}

 

unicode[dest] = NULL;

return dest;

}

 

Visual Studio 2022-設定UTF8編碼

Visual Studio 2022-設定UTF8編碼
Visual Studio 2022-設定UTF8編碼

『Android Studio』默認utf8編碼. 而『Visual Studio』按『地區設定』,轉本地字符編碼.

要强轉utf8可以係字加『u8』前缀

char utf8[MAX_CHAR] = u8″abcdef屌㞗𡳞杘屄”;

加『u8』前缀後,代碼移稙『Android Studio』繁鎖.可以加編譯詣令.

#pragma execution_character_set(“utf-8”)

适宜字符寫死係代碼. 若将字符保存係外部文檔,存為utf8即軟代碼.唔使諗編碼.

要强轉unicode係字加『L』前缀.USC2同USC4混埋.

wchar_t  unicode[MAX_CHAR] = L”屌㞗𡳞杘屄”;

 

Windows Hello臉部

Windows Hello臉部
Windows Hello臉部
Windows Hello臉部
Windows Hello臉部
Windows Hello臉部
Windows Hello臉部
Windows Hello臉部
Windows Hello臉部
Windows Hello臉部
Windows Hello臉部

『Kensington指紋』冇拉拉神左,睇到『Windows Hello臉部』相機模块,集成RGB&IR.Microsoft認証Win10自帶驅動. 分别係『Integrated Camera』『Integrated IR Camera』.打印相機殼,配两粒磁鐵,吸係屏上則.

發热量大,短時間臉容識別就得.

  1. 撳『設定』
  2. 撳『帳戶』
  3. 撳『登入選項』->『Windows Hello臉部』

 

經緯度座標『度分秒』轉换

經緯度座標度分秒轉换
經緯度座標度分秒轉换

經緯度座標有叄種格式,『度分秒』『度分』『度』.

『度分秒』等於『時分秒』, 『1度=60分=3600秒』『1分=60秒』

經緯度座標  
度分秒DMS DDD°MM’SS”
度分DM DDD°MM.MMM’
度D DDD.DDDDD°

 

度分秒 轉换
分轉度 除60
秒轉度 除3600
秒轉分 除60
度轉分 度小數乘60
分轉秒 分小數乘60

 

『度分秒』轉『度』

例『35°41′37.5″』即係『35度41分37.5秒』
41分轉度= 41/60
37.5秒轉度=37.5/3600
35 + 41/60 + 37.5/3600=35.69375度
void DMS_TO_DD(float D,float M,float S,double * DD)

{

*DD = D + M/60.0f + S/3600.0f;

}

 

『度分』轉『度』

例『35°41.625』即係『35度41.625分』
41.625分轉度= 41/60
35 + 41.625/60 =35.69375度
void DM_TO_DD(float D, float M, double* DD)

{

*DD = D + M / 60.0f; // 除60

}

 

『度』轉『度分』

例『35.6937632°』即係『35度41.625792分』
『0.6937632°』度轉分  0.6937632*60=41.625792′
35 + 0.6937632*60=『35°41.625792’』=『35度41.625792分』
void DD_TO_DM(double DD,int * D,float * M)

{

*D = (int)DD; // 度取整

*M = (DD – *D) * 60; // 度小數乘60

}

 

『度』轉『度分秒』

例『35.6937632°』度即係『35度, 41分, 37.54秒』
取度小數『0.6937632°』度轉分  0.6937632°*60=41.625792′
取分小數『0.625792’』分轉秒   0.625792’*60=37.54752″
35°+ 0.6937632°*60 + 0.625792’*60=『35°41′37.5″』=『35度, 41分, 37.54秒』
void DD_TO_DMS(double DD, float* D, float* M, float* S)

{

float MM;

*D = (int)DD; // 度取整

MM = (DD – *D) * 60; // 度小數乘60

*M = (int)MM;// 分

*S = (*M – MM) * 60;// 分小數乘60

}

 

1日 360度
1度 60分=3600秒
1分 60秒

 

Windows10象筋拖放

Windows10象筋拖放
Windows10象筋拖放

係Windows拖拽或者縮放窗口, 會造成窗體閃爍, 啟用象筋拖放, 即係非實時拖放,可避免窗體閃爍.

進入像筋拖放
SystemParametersInfo(SPI_SETDRAGFULLWINDOWS, true, &drag_full_windows, NULL);

 

退出像筋拖放
SystemParametersInfo(SPI_SETDRAGFULLWINDOWS, false, &drag_full_windows, NULL);

通過監聽『WM_ENTERSIZEMOVE』進入拖拽, 『WM_EXITSIZEMOVE』退出像筋拖拽, 實施像筋象筋拖放

LRESULT CALLBACK WindowProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam){
    if (msg == WM_ENTERSIZEMOVE)

SystemParametersInfo(SPI_SETDRAGFULLWINDOWS, true, &drag_full_windows, NULL);// 進入像筋拖放

else

    if (msg == WM_EXITSIZEMOVE)

SystemParametersInfo(SPI_SETDRAGFULLWINDOWS, false, &drag_full_windows, NULL);// 退出像筋拖放

return(DefWindowProc(hWnd, msg, wParam, lParam));

}

 

WD BLACK AN1500 打孖插PC300-1TB

WD BLACK AN1500

WD BLACK AN1500 PC300 NVMe SK Hynix 1TB*2 CrystalDiskMark
WD BLACK AN1500 PC300 NVMe SK Hynix 1TB*2 CrystalDiskMark

WD BLACK AN1500 PC300 NVMe SK Hynix 1TB*2 CrystalDiskInfo

PC300 NVMe SK Hynix 1TB
PC300 NVMe SK Hynix 1TB
PC300 NVMe SK Hynix 1TB
PC300 NVMe SK Hynix 1TB
PC300 NVMe SK Hynix 1TB
PC300 NVMe SK Hynix 1TB
PC300 NVMe SK Hynix 1TB
PC300 NVMe SK Hynix 1TB
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500
WD BLACK AN1500

WD BLACK AN1500原配两條SN730仲有ARGB燈,有人拆出蒞䶒賣殼.睇中佢自動组建Raid0,讀寫至高達『6500MB/S』,諗住買翻『SN730-1TB』, 睇到『PC300-1TB』特價,仲係『MLC SSD』. 1TB仲係1024GB.

打孖插入『PC300-1TB』自建Raid0. 温度高達65℃. 讀『3800 MB/S』,寫『2194MB/S』. 比『SN730』慢.

WD BLACK AN1500-Raid0 PC300 NVMe SK Hynix 1TB*2
CrystalDiskMark讀 2800 MB/S
CrystalDiskMark寫 2194MB/S
CrystalDiskInfo 69℃.
MLC SSD SK Hynix H2702T8C0B3A

 

WD AN1500
上行 6500MB/S
下行 6500MB/S
總線 PCIe Gen3*4 SSD

 

 

Visual Studio編譯『zlib-1.2.13.tar.gz』

CMake ZLIB
CMake ZLIB
CMake ZLIB
CMake ZLIB
Visual Studio編譯『zlib-1.2.13.tar.gz』
Visual Studio編譯『zlib-1.2.13.tar.gz』
Visual Studio編譯『zlib-1.2.13.tar.gz』
Visual Studio編譯『zlib-1.2.13.tar.gz』

ZLIB』係開源『壓縮』同『解壓』程式庫, 支持『DEFLATE』冇損壓縮算法,混合『LZ77算法』同『霍夫曼編碼』.

『Visual studio』冇內置『ZLIB』,下載『zlib-1.2.13.tar.gz』再編譯.

  1. 下载『ZLIB
http://www.zlib.net/
http://www.zlib.net/zlib-1.2.13.tar.gz
  1. 安装『CMake』帮『zlib-1.2.13.tar.gz』生成Visual studio工程.
  2. 解壓『zlib-1.2.13.tar.gz』到『C:\Program Files (x86)\zlib-1.2.13』
  3. 以管理員身份執行『cmake-gui.exe』.
  4. 『Where is the source code:』填『C:\Program Files (x86)\zlib-1.2.13』
  5. 『Where to build the binaries:』填『C:/Program Files (x86)/zlib-1.2.13/build』, 資料夾『build』要架自新建.
  6. 勾『Grouped』
  7. 勾『Grouped』
  8. 撳『Configure』
  9. 『Specify the generator for this project』揀『Visual Studio 17 2022』
  10. 『Optional platform for generator(if empty, generator uses:x64)』揀『x64』.
  11. 撳『Finish』
  12. 撳『Generate』
  13. 撳『Open Project』開啟Visual studio工程
  14. 『INSTALL』撳右鍵, 『設定為啟動專案』.
  15. 撳『F7』鍵, 分別『Debug』/『Release』建置工程,編譯後生成
路徑 版本
C:\Program Files (x86)\zlib-1.2.13\build\Debug Debug
C:\Program Files (x86)\zlib-1.2.13\build\Release Release
  1. 生成
Debug調試版 Release發行版  
zlibstaticd.lib zlibstatic.lib 静態庫, 唔使dll
zlibd.lib zlib.lib 動態庫, 要dll
zlibd.dll zlib.dll 動態連结
  1. 『Visual studio』識复制『ZLIB』頭文檔去『C:\Program Files\zlib』
C:\Program Files\zlib\include\zconf.h Zlib-API
C:\Program Files\zlib\include\zlib.h  
  1. 係工程包含『ZLIB』頭文檔
#include <zlib.h> Zlib-api
#include <zconf.h>  
  1. 係工程包含静態庫
#if _DEBUG  
#pragma comment(lib, “..\\ZLIB\\zlibstaticd.lib”)

#else

 
#pragma comment(lib, “..\\ZLIB\\zlibstatic.lib”)

#endif

 

 

CMake安裝

CMake安裝
CMake安裝
CMake版本
CMake版本

『CMake』愛蒞生成makefile或project文件, 畀Visual studio編譯代碼.

登入『CMake官網』下載『cmake-3.27.7-windows-x86_64.msi』安装包.

  1. 運行『cmake-3.27.7-windows-x86_64.msi
  2. 勾『I accept the terms in License Agreement』撳『Next』
  3. 勾『Add CMake to system PATH for all users』撳『Next』
  4. 『Install Cmake to:』填『C:\Program Files\CMake\』或填英文路徑.撳『Next』
  5. 撳『Install』安装

 

驗証CMake安装

  1. 撳『win+r』填 进入命令行模式.
  2. 填『cmake -version』撳enter鍵
  3. 顯示cmake版本『cmake version 3.27.7』.
https://cmake.org/
https://cmake.org/download/
cmake-3.28.0-rc3-windows-x86_64.msi
cmake-3.27.7-windows-x86_64.msi

 

USB2.0 壹拆肆 FE2.1

USB2.0 壹拆肆 FE2.1
USB2.0 壹拆肆 FE2.1
USB2.0 壹拆肆 FE2.1
USB2.0 壹拆肆 FE2.1
USB2.0 壹拆肆 FE2.1
USB2.0 壹拆肆 FE2.1
USB2.0 壹拆肆 FE2.1
USB2.0 壹拆肆 FE2.1

上次『USB3.0壹拆貳』插『SD讀卡機』冇反應,改買臺彎汤銘TERMINUS-FE2.1芯片,『USB2.0 壹拆肆』.聽講兼容冚辦闌USB2.0機體.

冇定位窿, 3D打印磁吸底座,吸係機槓壁.配線够長.

部『SD讀卡機』係USB3.0-19PIN,要轉9PIN.好彩識認.

華南X99-F8D Plus

華南X99-F8D Plus
華南X99-F8D Plus
華南X99-F8D Plus
華南X99-F8D Plus

華南X99-F8D Plus

X570冇定時輕機,睇翻佢本天書,要用『1R8/2R8-DDR4』記憶體,買两條32GB成千幾紋,索性買雜牌X99玩,開機慢到以為吾著. 壹分鐘先睇到bios logo

  1. 『PWM-4PIN』得两個岩岩够两粒其它冚辦闌係『3PIN』.
  2. 两『USB2.0-9PIN』, 壹『USB3.0-19PIN』.唔够使緊.
  3. 仲有TeeDriverW8x64.sys蓝屏
  4. 唔係EATX窿位,要整過主板腳撑
  5. 两條2支援22110規格,插槽底座起碼高左4mm.可能詅住畀你『两面散熱』.

 

 

配置如下

  1. EATX機槓W100
  2. Intel XEON E5-2637V4 3.50GHZ*2
  3. SAMSUNG 64GB 4DR4 PC4-2400T
  4. 台達火牛GM1300
  5. Seagate XM1440 960Gb
  6. PC-FAN 14025
  7. PC-FAN 23030
  8. PC-FAN 4pin PWM集線磁吸底座
  9. USB 3.1一分二磁吸底座

 

 

Intel XEON E5-2637V4 3.50GHZ

Intel XEON E5-2637V4 3.50GHZ
Intel XEON E5-2637V4 3.50GHZ
Intel XEON E5-2637V4 3.50GHZ
Intel XEON E5-2637V4 3.50GHZ
Intel XEON E5-2637V4 3.50GHZ
Intel XEON E5-2637V4 3.50GHZ
Intel XEON E5-2637V4 3.50GHZ
Intel XEON E5-2637V4 3.50GHZ

買左雜牌『X99-F8D PLUS』, 睇岩『E5-2637 V4』支持雙U,頻率至高.『基頻3.5GHZ』畀『E5-1630V4』低200HZ.

用CPU-Z測單線程相若. 多線程跑分接近壹倍. 可能同雙CPU有關.

INTEL XEON E5-2637V4 E5-1630V4 E5-2630LV3
CPU-Z單線程 462.4 470.7 233.2
CPU-Z多線程 4368.2 2350.2 2136.7
主頻 3.5GHZ 3.7GHZ 1.8GHZ
核心 4核 4核 8核
線程 8線程 8線程 16線程
TDW 140W 140W 55W

 

EATX機槓-W100

EATX機槓-W100
EATX機槓-W100

買左雜牌『x99-EATX』,舊式ATX機槓要拆左光驅位支架.冇臺鉆拆拉釘驚拆爛.索性新買EATX機槓W100,分左右腔.10條PCIE槽位,有主板要11條PCIE槽位.

左腔裝主板同風扇,為左装『23030風扇』要移有機玻璃去門板外側.

右腔得86mm寬,装3.5寸機體同埋atx火牛都掹水,早知買W200吾使搞甘耐.

  1. 5寸機體支架
  2. 火牛支架
  3. PC-FAN 14025
  4. PC-FAN 23030 BNFENIX電腦風扇
  5. PC-FAN 4pin PWM集線磁吸底座
  6. USB 3.1一分二磁吸底座
  7. 門磁吸
  8. 主板腳撑

 

3D打印-火牛延伸支架

3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架
3D打印-火牛延伸支架

『W100機槓』將ATX火牛移去右腔,好似細機箱甘,愛蒞装風扇,右腔得86MM寬,要打棟放ATX火牛,剷埋右門『加强撑』先岩岩够位.早知買『W200機槓』唔使甘煩. 收屘買60*30鋁磁鐵攝住火牛.

3D打印-3.5寸機體支架

3.5寸面板支架
3.5寸面板支架
3.5寸面板支架
3.5寸面板支架
3.5寸面板支架
3.5寸面板支架
手提DVD-ROM支架
手提DVD-ROM支架
手提DVD-ROM支架
手提DVD-ROM支架
手提DVD-ROM支架
手提DVD-ROM支架
SD讀卡機支架
SD讀卡機支架

SD讀卡機支架
SD讀卡機支架

新買eatx機槓W100分左右腔,左腔裝主板,右腔裝3.5寸機體.

  1. 5寸面板支架
  2. 5寸磁碟支架
  3. 手提DVD-ROM支架
  4. SD讀卡機支架
3.25寸支架 尺碼
DISK-width 101.60mm
DVD-width 103mm
length 147mm
Dest-width 113.5

 

PC-FAN 4pin-PWM拆分

PC-FAN 4pin-PWM壹分辻
PC-FAN 4pin-PWM壹分辻
PC-FAN 4pin-PWM壹分辻
PC-FAN 4pin-PWM壹分辻
PC-FAN 4pin-PWM壹分辻
PC-FAN 4pin-PWM壹分辻
PC-FAN 4pin-PWM
PC-FAN 4pin-PWM

雜牌eatx主板得两個4pin-pwm供電,岩岩够畀两粒CPU.『EATX機槓』裝得落8把『140風扇』加9把『200風扇』.要靠『PC-FAN 4pin集線』,占主板壹個4pin供電接温控調速線,拆分成辻『4pin-pwm』.得插赤色『4pin』扇速傳畀主板.

装肆粒磁石係底座,吸附機身壁.

USB3.0 GEN1拆分

USB3.0 GEN1拆分
USB3.0 GEN1拆分
USB3.0 GEN1拆分
USB3.0 GEN1拆分
USB3.0 GEN1拆分
USB3.0 GEN1拆分
USB3.0 GEN1拆分
USB3.0 GEN1拆分
USB3.0 GEN1拆分
USB3.0 GEN1拆分

新買雜牌x99-eatx, 得壹個『USB3.0-19PIN』两個『USB2.0-9PIN』.

機箱占两個『USB3.0-19PIN』,WIFI藍牙壹個『USB2.0-9PIN』,SD讀卡機『USB3.0-19PIN』. 得求助『USB3.0-19PIN』拆分雙『USB3.0-19PIN』. 速率保持5Gbps.意外發現支持『USB2.0-9PIN』拆分雙『USB3.0-19PIN』, 速率得翻480Mbps.

用两粒磁石摄係機槓壁.比用雙面膠合适.

Windows10-TeeDriverW8x64.sys蓝屏

TeeDriverW8x64.sys
TeeDriverW8x64.sys

雜牌x99-eatx係登入Win10間謁會Te

Windows10-TeeDriverW8x64.sys蓝屏
Windows10-TeeDriverW8x64.sys蓝屏

eDriverW8x64.sys蓝屏. 心諗雜牌都係信唔過.

『TeeDriverW8x64.sys』係『Intel(R) Management Engine Interface』英特爾®管理引擎介面驅動程式.

『剷TeeDriverW8x64.sys』

  1. 撳『WIN+PAUSE BREAK』鍵
  2. 撳『裝置管理員』
  3. 右鍵撳『Intel(R) Management Engine Interface』
  4. 撳『解除安装装置』
  5. 勾『刪除此裝置驅動程式軟體』
  6. 撳『解除安装』

PC-FAN 23030 BNFENIX 機槓風扇

PC-FAN 23030 BNFENIX 機槓風扇
PC-FAN 23030 BNFENIX 機槓風扇
PC-FAN 23030 BNFENIX 機槓風扇
PC-FAN 23030 BNFENIX 機槓風扇
PC-FAN 23030 BNFENIX 機槓風扇
PC-FAN 23030 BNFENIX 機槓風扇
PC-FAN 23030 BNFENIX 機槓風扇
PC-FAN 23030 BNFENIX 機槓風扇

新EATX機槓裝9把『200風扇』. BNFENIX-3PIN白色『230風扇』,為左装係『200扇位』削去两側. 9扇葉設計,扇速慢得800轉.9把『230風扇』要風扇集線器.

230扇葉大易斷扇軸,冇适合鐵網保謢扇葉.

PC-FAN 23030 數值
尺碼 230*30mm
電壓 12V
電流 0.18A
Materials PBT
Speed(R.P.M.) 700~900轉/分
噪聲 20(dB-A)
25MM
窿徑 4MM

 

PC-FAN 14025

PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025
PC-FAN 14025

新EATX機槓,可装8把『140風扇』加9把『200風扇』.支援PWM-4PIN白色『140風扇』,設計上為左装係『120扇位』削去肆角.為左裝『140䕶網』補番肆角.電壓12V,冇標電流.扇速慢静音,7扇葉設計,大扇葉風量大. 其中之壹時轉時吾轉.8把『140風扇』需PWM集線.

PC-FAN 數據
電壓 12V
12025風扇 窿距105*105MM
14025風扇 窿距124.5*124.5MM
25MM
窿徑 4MM

 

X99-EATX SOCKET2011-纯銅散熱風扇

X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇
X99-EATX SOCKET2011-纯銅散熱風扇

X99-EATX愛两正方SOCKET-2011散熱. 唔諗買『熱導管散熱』.學上次咁買两拆機銅散熱,正方『90mm*90mm』, 配两『AVC-9025-12V-0.13A』.風扇底座用3D打印. 尺寸太大ABS容易收縮變形.