// 繁體中文翻譯
window.LANG_ZHT = {
  // 通用
  common: {
    save: "設 置",
    cancel: "取消",
    confirm: "確定",
    loading: "載入中...",
    success: "成功",
    failed: "失敗",
    delete: "刪除",
    edit: "編輯",
    add: "新增",
    enable: "啟用",
    disable: "禁用",
    enabled: "啟用",
    disabled: "禁用",
    yes: "是",
    no: "否",
    on: "開",
    off: "關",
    apply: "套用",
    reset: "重設",
    refresh: "重新整理",
    close: "關閉",
    back: "返回",
    next: "下一步",
    previous: "上一步",
    submit: "提交",
    action: "操作",
    chinese: "中文",
    traditionalChinese: "繁體中文",
    english: "English",
    spanish: "西班牙語",
    japanese: "日本語",
    korean: "한국어",
    german: "Deutsch",
    french: "Français",
    portuguese: "Português",
    russian: "Русский",
    italian: "Italiano",
    turkish: "Türkçe",
    continue: "繼 續",
    copy: "複製",
    copied: "已複製"
  },

  preview: {
    flvRequired: "請開啟FLV流。",
    flvOrHlsRequired: "請至少開啟FLV或者HLS一種直播流。",
    hlsUnsupportedEnableFlv: "目前瀏覽器不支援HLS預覽，請開啟FLV流。"
  },

  play: {
    mainFlvRequired: "需要啟用主碼流 FLV 流",
    browserFlvUnsupported: "目前瀏覽器不支援 FLV 播放，請使用 Chrome / Edge / Firefox 等現代瀏覽器"
  },

  // 頁面標題
  title: {
    encoder: "H265/H264編碼器",
    status: "狀態顯示",
    mainStream: "主碼流",
    subStream1: "次碼流1",
    subStream2: "次碼流2",
    subStream3: "次碼流3",
    videoSettings: "視訊設定",
    audioSettings: "音訊設定",
    advancedSettings: "進階設定",
    osdMain: "OSD設定 - 主碼流",
    osdSub1: "OSD設定 - 次碼流1",
    osdSub2: "OSD設定 - 次碼流2",
    osdSub3: "OSD設定 - 次碼流3",
    logoUpload: "LOGO上傳",
    network: "網路設定",
    record: "錄影設定",
    gb28181: "GB28181",
    wifi: "WIFI設定",
    password: "密碼設定",
    serial: "透傳設定",
    update: "更新和備份",
    reboot: "重新啟動裝置",
    timedReboot: "定時重啟",
    factoryReset: "恢復原廠設定",
    recordFiles: "錄影檔案",
    netTest: "網路測試",
    recordSet: "錄影設定",
    alirtcTokenPage: "AliRTC Token"
  },

  // 選單
  menu: {
    status: "狀態顯示",
    encoder: "編碼設定",
    mainStream: "主碼流",
    subStream1: "次碼流1",
    subStream2: "次碼流2",
    subStream3: "次碼流3",
    videoSettings: "視訊設定",
    audioSettings: "音訊設定",
    advancedSettings: "進階設定",
    osd: "OSD設定",
    logoUpload: "LOGO上傳",
    system: "系統設定",
    scheduleRecord: "排程錄影",
    network: "網路設定",
    record: "錄影設定",
    gb28181: "GB28181",
    wifi: "WIFI設定",
    password: "密碼設定",
    serial: "透傳設定",
    update: "更新和備份",
    reboot: "重新啟動裝置",
    timedReboot: "定時重啟",
    factoryReset: "恢復原廠設定"
  },

  // 狀態頁面
  status: {
    // 裝置狀態
    deviceStatus: "裝置狀態",
    runningTime: "執行時間：",
    runtimeDayWithTime: "{0}天 {1}",
    deviceTime: "裝置時間：",
    syncTime: "（同步時間到裝置）",
    cpuUsage: "CPU佔用率：",
    cpuTemp: "CPU結溫：",
    memoryUsage: "記憶體佔用率：",
    encPpsUsage: "編碼資源佔用率：",
    memoryWarning: "（開機一分鐘後，如果記憶體佔用太大，請關閉一些HLS流或調低位元率）",
    cpuWarning: "（如果CPU持續佔用85%以上，請關閉一些流或者調低次碼流解析度）",
    networkStatus: "網路狀態：",
    inputVideo: "輸入視訊：",
    vgaAutoAdjust: "（VGA自動調節）",
    capturedFrames: "已擷取的視訊幀數：",
    lostFrames: "丟失的視訊幀數：",
    audioSampleRate: "輸入音訊取樣率：",
    capturedAudioFrames: "已擷取的音訊幀數：",
    packetsSent: "已傳送的網路封包：",
    netTestLink: "（網路測試及系統日誌）",
    packetsDropped: "已丟棄的網路封包：",
    canAccessInternet: "可存取外網",
    canAccessInternetIP: "可存取外網IP",
    lanOnly: "區域網路",
    localNetwork: "本地網路",

    // 錄影狀態
    recordStatus: "錄影狀態",
    recordType: "錄影類型：",
    diskStatus: "磁碟狀態：",
    diskNotExist: "不存在",
    mountStatus: "掛載狀態：",
    notMounted: "未掛載",
    mounted: "已掛載",
    totalSpace: "總磁碟空間：",
    freeSpace: "可用磁碟空間：",
    recordingStatus: "錄影狀態：",
    diskFull: "磁碟滿",
    diskSlow: "磁碟速度太慢",
    recordFileList: "錄影檔案列表",
    notRecording: "未錄影",
    recording: "正在錄影",
    recordingNoVideo: "（沒有視訊輸入的情況下可能不會儲存檔案）",
    startRecord: "（開始錄影）",
    stopRecord: "（停止錄影）",
    usbTfCard: "U盤/TF卡",

    // DHCP狀態
    dhcpStatus: "DHCP狀態",
    ip: "IP：",
    subnetMask: "子網路遮罩：",
    gateway: "閘道器：",

    // WIFI狀態
    wifiStatus: "WIFI狀態",
    wifiDisabled: "WIFI：禁用",
    wifiState: "WIFI 狀態：",
    wifiSSID: "WIFI SSID：",
    wifiIP: "WIFI IP：",
    wifiMAC: "WIFI MAC：",
    wifiRSSI: "WIFI 強度(RSSI)：",
    wifiFreq: "WIFI 頻率：",
    wifiConnected: "已連線",
    wifiDisconnected: "已斷開",
    wifiConnecting: "正在連線（如果長時間連接不上，請檢查WIFI設定）",

    timeHour: "小時",
    timeMinute: "分",
    timeSecond: "秒",

    // 碼流
    mainStream: "主碼流",
    subStream1: "次碼流1",
    subStream2: "次碼流2",
    subStream3: "次碼流3",
    streamDisabled: "已禁用（編碼資源不足時，該次碼流會被自動關閉）",
    codecType: "編碼類型：",
    encodeResolution: "編碼解析度：",
    videoBitrate: "視訊位元率：",
    realTimeBitrate: "即時位元率：",
    realTimeFps: "即時幀率：",
    videoEncoded: "視訊已編碼：",
    reconnect: "（重新連線）",
	    previewWebRTC: "預覽視訊（WebRTC）",
	    previewHTML5: "預覽視訊（HTML5）",

    // URL相關
    disabled: "禁用",
    connected: "已連線",
    disconnected: "未連線",
    bufferPackets: "緩衝封包數",
    bufferPacketsLabel: "緩衝封包數：",
    pushSpeed: "推送速度",
    pushSpeedLabel: "推送速度：",
    pushed: "已推送",
    pushedLabel: "已推送：",
    memoryUsed: "記憶體佔用",
    memoryUsedLabel: "記憶體佔用：",
    cacheFiles: "快取檔案數",
    cacheFilesLabel: "快取檔案數：",
    multicastUrl: "群播 URL：",
    mjpgUrl: "MJPG流位址：",
    jpgUrl: "JPG流位址：",
    tsUrl: "TS流位址：",
    flvUrl: "FLV流位址：",
    hlsTsUrl: "HLS TS流位址：",
    hlsMp4Url: "HLS MP4流位址：",
    mp4Url: "MP4流位址：",
    rtspUrl: "RTSP流位址：",
    rtmpUrl: "RTMP流位址：",
    srtListenerUrl: "SRT Listener 位址：",
    webrtcP2pUrl: "WebRTC P2P流位址：",
    rtmpPushUrlAny: "RTMP(S)/RTSP發佈位址{0}：",
    rtmpPushUrlAny0: "RTMP(S)/RTSP發佈位址0：",
    rtmpPushUrlAny1: "RTMP(S)/RTSP發佈位址1：",
    rtmpPushUrlAny2: "RTMP(S)/RTSP發佈位址2：",
    rtmpPushUrl: "RTMP(S)發佈位址{0}：",
    rtspPushUrl: "RTSP發佈位址{0}：",
    srtCallerUrl: "SRT Caller 位址：",
    hlsPushUrl: "HLS PUSH URL：",
    icecastPushUrl: "ICECAST PUSH URL：",
    shoutcastPushUrl: "Shoutcast PUSH URL：",
    whipLabel: "WHIP：",
    viewers: "觀看人數",
    viewersLabel: "觀看人數：",

    // TRTC狀態
    trtcRoomId: "TRTC房間號：",
    inRoom: "在房間中",
    notInRoom: "未進房間",
    initializingServer: "正在初始化伺服器連線",
    serverDisconnected: "伺服器連線斷開",
    connectingServer: "正在連線伺服器",
    serverConnected: "已連線上伺服器",
    networkUnknown: "網路狀態未知",
    networkExcellent: "網路非常好",
    networkGood: "網路比較好",
    networkNormal: "網路一般",
    networkPoor: "網路較差",
    networkBad: "網路很差",
    networkNotMeet: "網路不滿足TRTC的最低要求",
    errorCode: "錯誤代碼",
    errorCodeLabel: "錯誤代碼：",
    trtcError1: "通用錯誤，可根據日誌檔案排查問題",
    trtcError100: "業務層邏輯錯誤：非法呼叫",
    trtcError101: "業務層邏輯錯誤：非法參數",
    trtcError102: "當前無法讀取，請重試",
    trtcError103: "無法連線網路",
    trtcError200: "進房失敗",
    trtcError201: "進房參數 user_sig 無效",
    trtcError202: "進房參數 房間號格式錯誤",
    trtcError203: "進房參數 sdk_app_id 無效",
    trtcError204: "服務不可用 請檢查:套餐包剩餘分鐘數是否大於0,騰訊雲帳號是否欠費",
    trtcError205: "當前使用者被伺服器踢出房間",

    // WHIP狀態
    whipInitializing: "正在初始化",
    whipConnected: "已連線",
    whipDisconnected: "未連線",
    whipUnknown: "未知狀態",
    alirtcLabel: "AliRTC：",
    alirtcConnecting: "正在連線",
    alirtcConnected: "已連線",
    alirtcDisconnected: "未連線",
    alirtcUnknown: "未知狀態",
    alirtcRoomId: "AliRTC房間號：",
    alirtcRoomIdLabel: "房間號：",
    alirtcUserIdLabel: "使用者ID：",
    alirtcUserNameLabel: "使用者名稱：",
    alirtcVideoBitrateLabel: "視訊：",
    alirtcAudioBitrateLabel: "音訊：",
    alirtcRttLabel: "RTT：",

    // GB28181
    gb28181: "GB28181：",
    gb28181Online: "線上",
    gb28181Offline: "離線"
  },

  // 重啟頁面
  reboot: {
    title: "重新啟動裝置",
    description: "點擊此按鈕將使編碼器重新啟動。",
    button: "重 啟",
    success: "重啟成功！",
    failed: "重啟失敗！",
    confirm: "確定要重新啟動裝置嗎？"
  },

  // 恢復原廠設定頁面
  reset: {
    title: "恢復原廠設定",
    description: "點擊此按鈕將使編碼器的所有設定恢復到出廠時的預設狀態。",
    button: "重 置",
    success: "恢復原廠設定成功，系統會自動重啟，請稍後！",
    failed: "恢復原廠設定失敗！",
    confirm: "確定恢復到原廠設定？"
  },

  // 定時重啟頁面
  scheduleRecord: {
    title: "排程錄影",
    allDay: "全天",
    timeRange: "指定時段",
    segment: "時段",
    to: "至",
    monday: "一",
    tuesday: "二",
    wednesday: "三",
    thursday: "四",
    friday: "五",
    saturday: "六",
    sunday: "日",
    nextDay: "(次日)",
    hint: "每個時段可設為 全天 或 指定時段，並各自選擇生效星期；指定時段中結束時間早於開始時間表示跨夜（錄到次日，按開始日的星期判定）。請先在網路設定中校準裝置時間(NTP)，否則計劃不會觸發。",
    saveSuccess: "設定成功！",
    saveFailed: "設定失敗！",
    invalidTime: "時間填寫錯誤！",
    needWeekday: "請至少選擇一天！",
  },
  timedReboot: {
    title: "定時重啟",
    enable: "定時重啟",
    enableLabel: "定時重啟：",
    timeLabel: "定時時間：",
    enabled: "啟用",
    disabled: "禁用",
    time: "重啟時間",
    weekdays: "重啟日期",
    everyday: "每天",
    monday: "週一",
    tuesday: "週二",
    wednesday: "週三",
    thursday: "週四",
    friday: "週五",
    saturday: "週六",
    sunday: "週日",
    save: "設定",
    saveSuccess: "設定成功！",
    saveFailed: "設定失敗！",
    invalidTime: "定時時間填寫錯誤！"
  },

  // 網路測試頁面
  netTest: {
    title: "網路測試及系統日誌",
    command: "指令：",
    run: "執行",
    address: "位址：",
    result: "執行結果：",
    invalidAddr: "請輸入有效的位址！"
  },

  // 錄影檔案頁面
  recordFiles: {
    title: "檔案列表",
    fileName: "檔案名稱",
    time: "時間",
    fileSize: "檔案大小",
    action: "操作",
    delete: "刪除",
    confirmDelete: "確定要刪除",
    deleteSuccess: "刪除指令傳送成功！",
    deleteFailed: "刪除失敗！",
    noFiles: "暫無錄影檔案",
    loadError: "載入失敗"
  },

  // 密碼設定頁面
  password: {
    title: "密碼設定",
    oldPassword: "原密碼",
    oldPasswordLabel: "原密碼：",
    newPassword: "新密碼",
    newPasswordLabel: "新密碼：",
    confirmPassword: "確認新密碼",
    confirmPasswordLabel: "確認新密碼：",
    save: "設 置",
    success: "設定成功！",
    failed: "密碼設定失敗，請檢查原密碼是否輸入正確！",
    mismatch: "新密碼輸入不一致！",
    empty: "密碼不能為空！"
  },

  // 編碼設定通用（僅實際使用的鍵）
  encoding: {
    sameAsInput: "與輸入解析度相同",
    mp3Required: "請將音訊編碼設定為MP3！",
    choosePrimaryColor: "選擇主色調",
    toggleTheme: "切換主題"
  },

  // OSD設定
  osd: {
    title: "OSD設定",
    mainStream: "主碼流 OSD",
    subStream1: "次碼流1 OSD",
    subStream2: "次碼流2 OSD",
    subStream3: "次碼流3 OSD",
    alpha: "透明度",
    alphaLabel: "透明度：",
    alphaRange: "[0-255]",
    alphaError: "透明度應是0-255間的整數！",
    region: "區域",
    regionLabel: "區域：",
    region1: "區域一",
    region2: "區域二",
    region3: "區域三",
    region4: "區域四",
    type: "類型",
    typeLabel: "類型：",
    typeText: "文字",
    typeImage: "圖片",
    typeScroll: "滾動文字",
    typeTime: "時間",
    typeAudioStatus: "音頻狀態",
    typeVolumeMeter: "音量條",
    typeMosaic: "馬賽克",
    position: "位置",
    positionLabel: "位置：",
    speed: "速度",
    speedLabel: "速度：",
    xLabel: "X：",
    yLabel: "Y：",
    textLabel: "文字：",
    fontSize: "字型大小",
    fontSizeLabel: "字型大小：",
    fontSizeRange: "[8-72]",
    backgroundColor: "背景顏色",
    backgroundLabel: "背景顏色：",
    sizeLabel: "大小（寬×高）：",
    sizeHint: "[像素]",
    blkSizeLabel: "區塊大小：",
    sizeError: "{0}：大小（寬×高）需為有效正整數",
    bgTransparent: "透明色",
    bgWhite: "白色",
    bgBlack: "黑色",
    fontColor: "字型顏色",
    fontColorLabel: "字型顏色：",
    pickColor: "選取顏色",
    closeColor: "關閉",
    logoLabel: "LOGO：",
    success: "設定成功！",
    failed: "設定失敗！",
    xRangeError: "{0}X的值應是0-{1}間的整數！",
    yRangeError: "{0}Y的值應是0-{1}間的整數！",
    textEmpty: "{0}文字不能為空！",
    fontSizeError: "{0}字型大小應是8-72間的整數！",
    speedRangeError: "{0}速度的值應是0-30間的整數！",
    positionRangeError: "{0}位置值應是0-{1}間的整數！",
    selectLogo: "請為{0}選擇LOGO！",
    webrtcPreview: "視訊預覽"
  },

  // LOGO上傳
  logo: {
    title: "LOGO 上傳",
    logoLabel: "LOGO：",
    upload: "上 傳",
    hint: "請上傳小於 500KB 的圖片，支援 PNG / JPG / BMP 三種格式（需要透明請用帶 alpha 的 PNG 或 32 位 BMP）。",
    hint2: "檔名須為 logo1 / logo2 / logo3 / logo4，副檔名支援 .png / .jpg / .jpeg / .bmp。",
    hint3: "例如 logo1.png、logo1.jpg、logo1.jpeg、logo1.bmp",
    noFileSelected: "請選擇上傳檔案！",
    invalidFile: "請按要求上傳圖片！",
    uploadSuccess: "上傳成功！",
    uploadFailed: "上傳失敗！",
    imageSizeExceeded: "圖片檔案大小超出限制！",
    imageResolutionExceeded: "圖片檔案解析度超出限制！",
    storageInsufficient: "升級檔案太大，儲存空間不足！",
    listTitle: "已上傳 LOGO",
    refresh: "重新整理",
    preview: "預覽",
    logoFile: "LOGO 檔案",
    fileType: "類型",
    fileSize: "大小",
    operation: "操作",
    loading: "載入中...",
    emptyList: "暫無已上傳的 LOGO",
    loadListFailed: "讀取 LOGO 列表失敗",
    confirmDelete: "確定刪除 {0}？\n會同時刪除同名 PNG/BMP 檔案，如果該 LOGO 正在使用，對應圖片 OSD 會被清空。",
    deleteSuccess: "刪除成功！",
    deleteFailed: "刪除失敗！"
  },

  // WIFI設定
  wifi: {
    title: "WIFI設定",
    mode: "模式",
    ap: "熱點模式",
    sta: "用戶端模式",
    ssid: "SSID",
    password: "密碼",
    security: "加密方式",
    channel: "頻道",
    scan: "掃描",
    connect: "連線",
    disconnect: "斷開",
    status: "狀態",
    connected: "已連線",
    disconnected: "未連線",
    signalStrength: "訊號強度",
    basicSettings: "基本設定",
    wifiModule: "Wifi 模組：",
    wifiMode: "Wifi 模式：",
    staMode: "STA模式",
    apMode: "AP模式",
    mainConfig: "WIFI主配置",
    backupConfig1: "WIFI備用配置1",
    backupConfig2: "WIFI備用配置2",
    apModeSettings: "AP模式",
    wifiList: "Wifi 列表：",
    wifiEssid: "Wifi Essid：",
    wifiPassword: "Wifi 密碼：",
    wifiDhcp: "Wifi DHCP：",
    wifiIp: "Wifi IP：",
    wifiNetmask: "Wifi 子網路遮罩：",
    wifiGateway: "Wifi 預設閘道器：",
    backupEnable1: "備用配置1：",
    backupEnable2: "備用配置2：",
    wifiBand: "Wifi 頻段：",
    wifiChannel: "Wifi 頻道：",
    refresh: "重新整理",
    success: "設定成功！",
    failed: "設定失敗！",
    mainConfigEmpty: "WIFI主配置中的{0}不能為空！",
    mainConfigInvalid: "WIFI主配置中的{0}格式不正確！",
    backupConfigEmpty: "WIFI{0}中的{1}不能為空！",
    backupConfigInvalid: "WIFI{0}中的{1}格式不正確！",
    ipAddr: "IP位址",
    netmask: "子網路遮罩",
    gateway: "預設閘道器",
    essidEmpty: "WiFi名稱不能為空！",
    passwordTooShort: "WiFi密碼至少8位！"
  },


  // 更新和備份
  updateBackup: {
    title: "系統升級",
    uploadTitle: "上傳韌體和配置",
    backupTitle: "備份韌體和配置",
    systemVersion: "系統版本",
    systemVersionLabel: "系統版本：",
    hardware: "硬體",
    hardwareLabel: "硬體：",
    selectFile: "選擇檔案",
    selectFileLabel: "選擇檔案：",
    uploadHint: "上傳檔案名稱為 up.rar 或 box.ini",
    uploadWarning: "請勿多人同時上傳，上傳過程請勿斷電",
    upload: "上 傳",
    backupFirmware: "備份韌體",
    backupConfig: "備份配置",
    noFileSelected: "請選擇上傳檔案！",
    uploadSuccess: "上傳成功，請重新啟動系統！",
    uploadFailed: "上傳失敗！",
    kernelUpdating: "後台會花幾分鐘時間更新核心，期間請勿斷電；完成後裝置會自動重啟，不用手動重啟。",
    kernelUpdatingBin: "後台會花幾分鐘時間更新核心，期間請勿斷電；完成後裝置會自動重啟，不用手動重啟！",
    imageSizeExceeded: "圖片檔案大小超出限制！",
    imageResolutionExceeded: "圖片檔案解析度超出限制！",
    storageInsufficient: "升級檔案太大，儲存空間不足！"
  },

  // 透傳設定
  serial: {
    title: "透傳設定",
    frpTitle: "FRP用戶端設定",
    serialTitle: "序列埠透傳",
    enable: "啟用",
    disable: "禁用",
    enableLabel: "啟用：",
    serverAddr: "伺服器位址",
    serverAddrLabel: "伺服器位址：",
    serverPort: "伺服器連接埠",
    serverPortLabel: "伺服器連接埠：",
    serverToken: "伺服器Token",
    serverTokenLabel: "伺服器Token：",
    channel: "透傳",
    channel1: "通道 1",
    channel2: "通道 2",
    channel3: "通道 3",
    channel4: "通道 4",
    protocolLabel: "協定：",
    localPort: "本地連接埠",
    localPortLabel: "本地連接埠：",
    remotePort: "映射連接埠",
    remotePortLabel: "映射連接埠：",
    serialMode: "序列埠工作模式",
    serialModeLabel: "工作模式：",
    server: "伺服器",
    client: "用戶端",
    baudRate: "序列埠鮑率",
    baudRateLabel: "鮑率：",
    listenPort: "監聽連接埠",
    listenPortLabel: "監聽連接埠：",
    save: "設 置",
    success: "設定成功，請重新啟動裝置！",
    failed: "設定失敗！",
    emptyError: "設定內容不能為空！",
    remoteAddrError: "對端伺服器位址無效（請填寫合法的 IP 或主機名）！",
    portRangeError: "TCP監聽連接埠的值應是1-65535間的整數！",
    frpAddrEmpty: "內網穿透伺服器位址的值不能為空！",
    frpPortError: "內網穿透伺服器連接埠的值應是1-65535間的整數！"
  },

  // 進階設定
  advanced: {
    title: "進階設定",
    // 分區標題
    videoInput: "視訊輸入",
    avTransmission: "音視訊傳輸",
    recordSettings: "錄影設定",
    hlsSettings: "HLS設定",
    networkTransmission: "串流傳輸設定",
    serviceSettings: "服務設定",
    logSettings: "日誌設定",
    encoderParams: "編碼參數",
    imageEnhancement: "影像增強",
    autoRestart: "自動重啟",
    // 視訊輸入
    edidSelect: "EDID選擇：",
    colorGamut: "色域：",
    colorRange: "顏色範圍：",
    interlaceMode: "交錯處理方式：",
    noSignal: "無訊號：",
    vgaAutoAdjust: "VGA啟動後自動調節一次：",
    interlaceWeaving: "兩場合併為一幀(Weaving)",
    interlaceBottom: "只保留底場",
    interlaceTop: "只保留頂場",
    interlaceBobbing: "場轉幀(Bobbing)",
    noSignalHide: "不顯示",
    noSignalImage: "顯示圖片",
    noSignalColor: "顯示單色",
    noVideoRestartStream: "無訊號重啟串流：",
    // 音視訊傳輸
    videoOnly: "僅傳輸視訊：",
    audioOnly: "僅傳輸音訊：",
    avSync: "視音訊同步：",
    audioDelay: "音訊延遲(ms)：",
    syncAuto: "自動",
    syncResample: "重新取樣",
    audioDelayHint: "負值表示音訊更早，正值表示音訊更晚，一般只用於修正視音訊同步。",
    // 錄影設定
    recordType: "錄影類型：",
    cycleRecord: "循環錄影：",
    diskOverwriteOldest: "滿盤自動刪除最舊：",
    noRecordNoSig: "無信號不錄影：",
    recordSplitTime: "錄影分片時間(秒)：",
    // HLS設定
    hlsSplitTime: "HLS切片時間(秒)：",
    hlsBufferNum: "HLS切片數：",
    hlsIndexUri: "HLS全域索引位址：",
    // 網路傳輸
    tsMuxer: "TS打包方式：",
    netDropThreshold: "網路丟包門檻值：",
    tsOnce: "TS單次發包數：",
    rtspPackType: "RTSP封裝類型：",
    multicastType: "群播類型：",
    enableSap: "啟用SAP：",
    mtuSize: "MTU Size：",
    udpTtl: "UDP TTL：",
    udpSockBuf: "UDP SOCKET_BUF_SIZE：",
    rtpH264PacketMode: "RTP H264封包方式：",
    packetizeByAccessUnit: "packetize_by_access_unit",
    packetizeByNalu: "packetize_by_nalu",
    vlcCompat: "VLC相容",
    ffmpegCompat: "FFMPEG相容",
    esStream: "ES流",
    tsStream: "TS流",
    // 服務設定
    tsRtspAuth: "TS/RTSP流需要驗證密碼：",
    httpNoAuth: "網頁存取無需密碼：",
    netCheck: "網路狀態檢測：",
    telnetService: "Telnet服務：",
    sshService: "SSH服務：",
    sambaService: "Samba服務：",
    onvifService: "Onvif服務：",
    onvifLocation: "Onvif位置：",
    onvifMode: "Onvif模式：",
    onvifModeLegacy: "Legacy XML（HTTP/ONVIF 共用連接埠）",
    onvifModeProfileST: "Profile S/T（獨立 ONVIF 連接埠）",
    onvifModeProfileSCompat: "Profile S 海康相容（獨立 ONVIF 連接埠）",
    rtspDefaultStream: "RTSP預設碼流：",
    vmixCompat: "Vmix相容：",
    telnetLan: "區域網路啟用",
    // 日誌設定
    localLog: "本地日誌服務：",
    trtcLogLevel: "TRTC SDK日誌級別：",
    alirtcLogLevel: "AliRTC SDK日誌級別：",
    sdkLogDebug: "Debug",
    sdkLogInfo: "Info",
    sdkLogWarning: "Warning",
    sdkLogError: "Error",
    sdkLogFatal: "Fatal",
    sdkLogNone: "None",
    lokiAddr: "Loki日誌伺服器位址：",
    lokiPort: "Loki日誌伺服器連接埠：",
    // 編碼器參數
    sliceSplit: "SLICE分割：",
    sliceBytes: "SLICE位元組：",
    minQp: "MIN_QP：",
    maxQp: "MAX_QP：",
    debreath: "去呼吸效應：",
    sar: "SAR：",
    cbrOnlyHint: "僅在\"碼率控制模式\"選擇 CBR 時生效",
    // 影像增強
    contrastEnhance: "對比度增強：",
    sharpnessEnhance: "銳利度增強：",
    lumaSfStrength: "亮度靜態去噪強度：",
    lumaTfStrength: "亮度動態去噪強度：",
    chromaSfStrength: "色度靜態去噪強度：",
    chromaTfStrength: "色度動態去噪強度：",
    // 自動重啟
    kickAllOnChange: "輸入改變自動斷開使用者：",
    noVideoReboot: "無視訊自動重啟：",
    noAudioReboot: "無音訊自動重啟：",
    // 按鈕
    save: "設 置",
    // 訊息
    success: "設定成功，請重新啟動裝置！",
    failed: "設定失敗！",
    emptyError: "設定內容不能為空！",
    netDropError: "網路丟包門檻值應是50-50000間的整數！",
    tsOnceError: "TS單次發包數的值應是1-128間的整數！",
    sliceError: "SLICE位元組的值應是128-65535間的整數！",
    minQpError: "MIN_QP的值應是1-35間的整數！",
    maxQpError: "MAX_QP的值應是大於MIN_QP且小於等於50的整數！",
    udpTtlError: "UDP TTL的值應是1-254間的整數!",
    contrastError: "對比度增強的值應是0-63間的整數！",
    sharpnessError: "銳利度增強的值應是0-16間的整數！",
    lumaSfError: "亮度靜態去噪強度的值應是0-255間的整數！",
    lumaTfError: "亮度動態去噪強度的值應是0-63間的整數！",
    chromaSfError: "色度靜態去噪強度的值應是0-255間的整數！",
    chromaTfError: "色度動態去噪強度的值應是0-32間的整數！",
    hlsSplitError: "HLS切片時間的值應該是3-20間的整數!",
    hlsBufferError: "HLS切片數的值應該是3-20間的整數!",
    hlsUriError: "HLS全域索引位址的值格式錯誤!",
    udpSockBufError: "UDP SOCKET_BUF_SIZE的值應該是0-20971520間的整數!",
    mtuError: "MTU Size的值應該是500-1500間的整數!",
    audioCacheError: "音訊延遲的值應該是-2000-2000間的整數!",
    recordSplitError: "錄影分片時間的值應該是60-7200間的整數!",
    lokiPortError: "Loki 日誌伺服器連接埠的範圍是1-65535"
  },

  // 音訊編碼設定
  audioEnc: {
    blkInput: "輸入",
    blkEncode: "編碼",
    blkVolume: "音量",
    blkVolumeNote: "手動固定增益",
    blkAgc: "自動增益",
    blkAgcNote: "自動把忽大忽小聲音拉到目標值",
    blkDenoise: "降噪",
    blkDenoiseNote: "抑制背景噪音，佔用CPU較大，一般不開",
    mute: "靜音",
    gain0: "0 dB（不變）",
    title: "音訊設定",
    // 標籤頁
    tabAudio: "音訊設定",
    tabOnvif: "ONVIF音訊",
    // 提示
    tipAudio: "不要將數位音量增益設定得過高，否則可能會導致失真或引入雜訊。<br>在大多數情況下，增益設為 0 即可。<br>請透過前端音量來調節整體的聲音大小。",
    tipVolVsAgc: "<b>音量增益 vs 自動增益（AGC）</b><br>音量增益是手動設定的固定增益：正值放大、負值衰減，不隨輸入訊號變化，適合輸入電平穩定可預期的場景。<br>自動增益（AGC）會根據輸入訊號的即時強弱自動調整增益，使輸出穩定在目標電平附近，讓忽大忽小的聲音變得平穩。<br>開啟 AGC 後，建議將音量增益保持為 0 dB。讓 AGC 獨立控制電平，避免疊加控制。",
    tipAgcLevel: "<b>AGC 目標電平（dBFS）</b><br>用於設定最終電平參考。目標越接近 0dBFS，輸出越響，但留給瞬時峰值的餘量越小，越容易削頂失真。<br>• -18 dBFS（推薦）：響度與餘量的平衡點，適合大多數場景。<br>• -12 dBFS：輸出最響，適合直播等需要高音量的場合；但峰值餘量僅 12 dB，突發大聲容易觸頂失真。<br>• -20 ~ -24 dBFS：適合人聲、現場演出等峰值起伏較大的輸入。<br>• -30 ~ -42 dBFS：適合高增益麥克風輸入、或環境噪聲較大的場景。",
    tipOnvif: "如果要對接 NVR，RTSP流使用G711編碼請設定為 啟用且重新取樣為8K",
    // 音訊設定
    audioInput: "音訊輸入：",
    sampleRate: "編碼取樣率：",
    codec: "編碼方法：",
    channel: "左右聲道：",
    bitrate: "編碼位元率：",
    digitalGain: "數位音量增益：",
    analogGain: "類比音量增益：",
    denoise: "降噪：",
    denoiseStrength: "降噪強度(dB)：",
    agc: "自動增益控制：",
    agcLevel: "AGC目標電平(dBFS)：",
    pteG711: "PTE流使用G711編碼：",
    // 音訊輸入選項
    inputDigital: "數位",
    inputAnalog: "類比",
    inputMixed: "混合",
    // 取樣率選項
    sampleSameAsInput: "與輸入取樣率相同",
    // ONVIF音訊
    rtspG711: "RTSP流使用G711編碼：",
    rtspG711Resample: "啟用且重新取樣為8k",
    g711Codec: "G711編碼：",
    // 按鈕和訊息
    save: "設 置",
    success: "設定成功！",
    failed: "設定失敗！",
    emptyError: "設定內容不能為空！",
    bitrateError: "編碼位元率的值應是{0}-{1}間的整數！",
    gainError: "數位音量增益的值應是-50~50間的整數！",
    denoiseError: "降噪強度的值應是1~100間的整數！",
    agcLevelError: "AGC目標電平應在 -42 ~ -12 dBFS 之間！",
    analogVolEmpty: "類比音量增益不能為空！",
    analogVolError: "類比音量增益的值應是{0}~{1}間的整數！"
  },

  // 錄影設定頁面
  recordSet: {
    title: "錄影設定",
    // 卡片標題
    statusTitle: "錄影狀態",
    settingsTitle: "錄影設定",
    // 狀態
    recordType: "錄影類型：",
    diskStatus: "磁碟狀態：",
    currentAddr: "目前位址：",
    mountDevice: "掛載裝置：",
    mountStatus: "掛載狀態：",
    totalSpace: "總磁碟空間：",
    freeSpace: "可用磁碟空間：",
    recordStatus: "錄影狀態：",
    recordFiles: "錄影檔案：",
    fileList: "檔案列表",
    // 磁碟狀態
    diskNotExist: "不存在",
    diskFull: "磁碟滿",
    diskSlow: "磁碟速度太慢",
    mounted: "已掛載",
    unmounted: "未掛載",
    notRecording: "未錄影",
    recording: "正在錄影",
    noVideoWarning: "（無視訊輸入時可能無法儲存檔案）",
    // 操作連結
    startRecord: "(開始錄影)",
    stopRecord: "(停止錄影)",
    mountDisk: "(掛載裝置)",
    unmountDisk: "(卸載裝置)",
    deleteAll: "(刪除所有錄影)",
    // 設定
    storageType: "儲存方式：",
    partition: "儲存分區：",
    partitionInfo: "分區資訊：",
    diskInfo: "磁碟資訊：",
    formatDisk: "（重新分區格式化磁碟）",
    exampleAddr: "範例位址：",
    storageAddr: "儲存位址：",
    username: "使用者名稱：",
    password: "密碼：",
    // 儲存類型選項
    storageDisabled: "禁用",
    storageUsb: "U盤/TF卡",
    storageNfs: "NFS",
    storageSamba: "SAMBA/CIFS",
    // 格式化彈窗
    formatTitle: "磁碟資訊",
    formatDevice: "裝置：",
    formatType: "類型：",
    formatModel: "名稱：",
    formatRemovable: "可移動磁碟：",
    formatPartTable: "分區表類型：",
    formatCapacity: "磁碟容量：",
    formatPartitions: "分區資訊",
    formatPartition: "分區",
    formatAvailable: "(可用)",
    formatTotal: "(總量)",
    formatConfirm: "是否繼續格式化磁碟操作？",
    formatDanger: "危險操作：格式化會重新分區，所有分區資料都會丟失，確定繼續操作？",
    formatContinue: "繼 續",
    formatCancel: "取 消",
    formatConfirmBtn: "確 定",
    formatting: "格式化中...",
    // 按鈕和訊息
    save: "設 置",
    yes: "是",
    no: "否",
    success: "設定成功！",
    failed: "設定失敗！",
    formatSuccess: "格式化成功！",
    formatFailed: "格式化失敗！",
    deleteSuccess: "刪除指令傳送成功！",
    deleteFailed: "刪除失敗！",
    confirmDeleteAll: "確定要刪除所有錄影檔案嗎？",
    recordingWarning: "正在錄影中，如需卸載磁碟，請先停止錄影",
    diskMountedWarning: "磁碟已掛載，如需格式化請先卸載",
    diskMountedSettingWarning: "磁碟已掛載，不可修改設定，如需修改應先卸載磁碟",
    storageLockedHint: "掛載中不可修改，請先卸載磁碟",
    partitionNotExist: "分區不存在，不可設定",
    partitionRemoved: "(已拔出)",
    unpartitioned: "(未分割)",
    unpartitionedHint: "磁碟尚未分割，請先重新分割格式化磁碟",
    // 位址驗證
    addrEmpty: "儲存位址不能為空！",
    addrNfsFormat: "儲存位址格式錯誤，必須包含':'分隔符號",
    addrIpError: "儲存位址的IP格式不正確",
    addrPathSlash: "儲存位址的路徑必須以'/'開頭",
    addrPathInvalid: "儲存位址的路徑包含非法字元",
    addrSambaStart: "儲存位址必須以'\\\\'開頭",
    addrSambaFormat: "儲存位址無效，必須包含IP位址和路徑，且用'\\'分隔",
    addrPathEmpty: "儲存位址的路徑不能為空",
    addrPathChars: "儲存位址的路徑包含非法字元，只允許字母、數字、底線和橫槓",
    // 磁碟容量資訊 "{可用}/{總量}"
    diskSizeInfo: "{0}(可用)/{1}(總量)"
  },

  // GB28181設定
  gb28181: {
    title: "GB28181設定",
    basicSettings: "基本設定",
    heartbeatSettings: "心跳設定",
    sipServerSettings: "SIP伺服器設定",
    authSettings: "認證設定",
    enable: "啟用：",
    disabled: "禁用",
    enabled: "啟用",
    localSipPort: "本地SIP連接埠：",
    videoChannelId: "視訊通道編碼ID：",
    streamSelect: "28181碼流選擇：",
    mainStream: "主碼流",
    subStream1: "次碼流1",
    subStream2: "次碼流2",
    subStream3: "次碼流3",
    regExpiry: "註冊有效期：",
    heartbeatCycle: "心跳週期：",
    maxHeartbeatTimeout: "最大心跳逾時次數：",
    sipServerId: "SIP伺服器ID：",
    sipServerDomain: "SIP伺服器域：",
    sipServerAddr: "SIP伺服器位址：",
    sipServerPort: "SIP伺服連接埠：",
    sipUserId: "SIP使用者認證ID：",
    sipPassword: "SIP認證密碼：",
    emptyError: "設定內容不能為空！",
    localPortError: "本地SIP連接埠的值應是1-65535間的整數！",
    serverPortError: "SIP伺服器連接埠的值應是1-65535間的整數！",
    regExpiryError: "註冊有效期的值應是100-100000間的整數！",
    heartbeatError: "心跳週期的值應是5-3600間的整數！",
    maxTimeoutError: "最大心跳逾時次數的值應是3-255間的整數！",
    success: "設定成功！",
    failed: "設定失敗！"
  },
  // 視訊源設定
  videoSource: {
    title: "視訊源設定",
    videoInput: "視訊輸入設定",
    brightAdjust: "輸入亮度調節",
    videoOutput: "視訊輸出設定",
    inputFormat: "視訊輸入格式：",
    yuv422: "YUV422",
    yuv420: "YUV420(支援旋轉)",
    rotation: "畫面旋轉角度：",
    flipMirror: "畫面翻轉鏡像：",
    flipDisable: "禁用",
    mirror: "鏡像",
    flip: "翻轉",
    flipAndMirror: "鏡像和翻轉",
    cropEnable: "視訊源裁切：",
    cropLeft: "左上角開始裁切點(Left)：",
    cropTop: "左上角開始裁切點(Top)：",
    cropWidth: "裁切後寬度(Width)：",
    cropHeight: "裁切後高度(Height)：",
    colorMode: "輸入顏色模式：",
    unknown: "未知",
    brightEnable: "亮度調節：",
    gain: "增益：",
    gainHint: "[10-1000],預設100",
    offset: "偏移量：",
    offsetHint: "[0-100],預設0",
    note: "說明：",
    brightNote1: "1.亮度=(原亮度*增益/100)+偏移量",
    brightNote2: "2.亮度調節僅在輸入顏色模式為RGB時有效",
    outputRes: "視訊輸出解析度：",
    auto: "自動",
    cscEnable: "CSC調節：",
    luminance: "亮度：",
    contrast: "對比度：",
    hue: "色度：",
    saturation: "飽和度：",
    cscHint: "[0-100],預設50",
    rotateHint: "僅當 視訊輸入格式選擇 YUV420 的時候才支援旋轉。",
    emptyError: "設定內容不能為空！",
    gainError: "增益的值應是10-1000間的整數！",
    offsetError: "偏移量的值應是0-100間的整數！",
    leftError: "Left的值應是0-{0}間的整數！",
    topError: "Top的值應是0-{0}間的整數！",
    widthError: "Width的值應是400-{0}間的整數！",
    heightError: "Height的值應是400-{0}間的整數！",
    luminanceError: "亮度的值應是0-100間的整數！",
    contrastError: "對比度的值應是0-100間的整數！",
    hueError: "色度的值應是0-100間的整數！",
    saturationError: "飽和度的值應是0-100間的整數！",
    success: "設定成功！",
    failed: "設定失敗！"
  },
  // 網路設定
  network: {
    title: "網路設定",
    ipv4Title: "IPv4設定",
    ipv6Status: "IPv6狀態",
    ipv6Title: "IPv6設定",
    ipv6TypeGlobal: "全域位址",
    ipv6TypeLinkLocal: "鏈路本地位址",
    ipv6TypeUniqueLocal: "本地位址",
    ipv6TypeMulticast: "群播位址",
    ipv6TypeGeneric: "IP位址",
    ipv6StatusGateway: "閘道器",
    dnsTitle: "DNS設定",
    ntpTitle: "NTP設定",
    portTitle: "連接埠設定",
    httpsTitle: "HTTPS設定",
    hostnameTitle: "HOSTNAME設定",
    dhcp: "DHCP：",
    dhcpHint: "開啟DHCP後，可以用ONVIF相容的搜尋工具找到裝置。",
    ipAddr: "IP位址：",
    netmask: "子網路遮罩：",
    gateway: "有線閘道器：",
    macAddr: "MAC位址：",
    defaultGateway: "預設閘道器：",
    lanFirst: "有線優先",
    wifiFirst: "WIFI優先",
    g4First: "4G/5G優先",
    ipv6Mode: "模式設定：",
    ipv6Disable: "禁用",
    ipv6Auto: "自動配置",
    ipv6Manual: "手動配置",
    ipv6Addr: "IPv6 位址：",
    ipv6Prefix: "IPv6 子網路前綴長度：",
    ipv6Gateway: "IPv6 預設閘道器：",
    dns1: "DNS1：",
    dns2: "DNS2：",
    ntpSync: "NTP同步：",
    ntpServer: "伺服器：",
    timezone: "時區：",
    httpPort1: "HTTP連接埠1：",
    httpPort2: "HTTP連接埠2：",
    rtspPort1: "RTSP連接埠1：",
    rtspPort2: "RTSP連接埠2：",
    onvifPort: "ONVIF連接埠：",
    sadpProtocol: "SADP連接埠：",
    httpsService: "HTTPS服務：",
    httpsPort1: "HTTPS連接埠1：",
    httpsPort2: "HTTPS連接埠2：",
    httpsPrivatePass: "HTTPS私鑰密碼：",
    socks5Title: "SOCKS5代理",
    socks5Enable: "SOCKS5代理：",
    socks5Host: "代理地址：",
    socks5Port: "代理連接埠：",
    socks5User: "使用者名稱：",
    socks5Pass: "密碼：",
    socks5AuthHint: "（驗證為選填，使用者名稱和密碼需同時填寫）",
    privatePassHint: "(如果私鑰沒有密碼則為空)",
    uploadCert: "上傳憑證檔案：",
    uploadCertHint: "(上傳檔案名稱為 private.key 或者 public.crt，請勿多人同時上傳，上傳過程請勿斷電)",
    uploadBtn: "上傳憑證",
    deleteCert: "刪除憑證",
    hostname: "HOSTNAME：",
    mdnsService: "mDNS服務：",
    mdnsAddr: "mDNS存取位址：",
    portRange: "[1-65535]",
    prefixRange: "[0-128]",
    emptyError: "設定內容不能為空！",
    ipError: "IP位址格式不正確！",
    netmaskError: "子網路遮罩格式不正確！",
    gatewayError: "預設閘道器格式不正確！",
    dns1Error: "首選DNS格式不正確！",
    dns2Error: "備用DNS格式不正確！",
    macError: "MAC位址格式不正確！",
    ipv6Error: "IPv6位址格式不正確！",
    ipv6PrefixError: "IPv6子網前綴長度不正確（1-128）！",
    ipv6GatewayError: "IPv6預設閘道格式不正確！",
    httpPort1Error: "HTTP連接埠1的值應是1-65535間的整數！",
    httpPort2Error: "HTTP連接埠2的值應是1-65535間的整數！",
    rtspPort1Error: "RTSP連接埠1的值應是1-65535間的整數！",
    rtspPort2Error: "RTSP連接埠2的值應是1-65535間的整數！",
    httpsPort1Error: "HTTPS連接埠1的值應是1-65535間的整數！",
    httpsPort2Error: "HTTPS連接埠2的值應是1-65535間的整數！",
    onvifPortError: "ONVIF連接埠的值應是1-65535間的整數！",
    sadpPortError: "SADP連接埠的值應是1-65535間的整數！",
    httpBothDisableError: "HTTP連接埠1和連接埠2不能同時禁用！",
    httpsBothDisableError: "HTTPS啟用時，連接埠1和連接埠2不能同時禁用！",
    socks5HostError: "SOCKS5代理地址格式不正確！",
    socks5PortError: "SOCKS5代理連接埠的值應是1-65535間的整數！",
    socks5AuthPairError: "SOCKS5使用者名稱和密碼必須同時填寫或同時留空！",
    socks5AuthLengthError: "SOCKS5使用者名稱和密碼長度不能超過255！",
    ntpEmptyError: "NTP伺服器不能為空！",
    ntpFormatError: "NTP伺服器位址錯誤！",
    hostnameEmptyError: "HOSTNAME不能為空！",
    hostnameFormatError: "HOSTNAME 設定錯誤！\n \n1、HOSTNAME長度不能超過63個字元！\n2、只能使用英文字母(a~z,不區分大小寫)、數字(0~9)、連接符(-)以及底線(_)！\n3、'-' 和'_'不能連續出現、不能單獨出現，也不能放在開頭和結尾！",
    deleteCertConfirm: "確定要刪除使用者上傳的HTTPS憑證嗎？",
    selectFile: "請選擇上傳檔案！",
    uploadSuccess: "上傳成功！",
    uploadFailed: "上傳失敗！",
    fileSizeError: "圖片檔案大小超出限制！",
    fileResError: "圖片檔案解析度超出限制！",
    spaceError: "升級檔案太大，儲存空間不足！",
    deleteSuccess: "刪除成功！",
    deleteFailed: "刪除失敗！",
    successReboot: "設定成功，請重新啟動裝置！",
    failed: "設定失敗！"
  },

  // 輸出設定頁面（碼流設定）
  output: {
    // 標籤頁名稱
    tabs: {
      encode: "編碼設定",
      ts: "TS/群播設定",
      rtsp: "RTSP設定",
      rtmp: "RTMP設定",
      srt: "SRT設定",
      webrtc: "WebRTC設定",
      trtc: "TRTC設定",
      alirtc: "AliRTC設定",
      hls: "HLS設定",
      other: "MP4/FLV/其他設定"
    },

    // 編碼設定
    encode: {
      codecType: "編碼類型：",
      frameRate: "編碼幀率：",
      sameAsInput: "與輸入幀率相同",
      auto: "自動",
      customFrameRate: "自訂幀率",
      customFrameRateLabel: "自訂幀率：",
      gopInterval: "關鍵幀間隔(幀)：",
      bitrate: "位元率(kbit)：",
      qualityRange: "畫質範圍：",
      qualityStrict: "嚴格（高）",
      qualityTight: "較嚴（較高~高）",
      qualityNormal: "普通（中~高）",
      qualityLoose: "較鬆（較低~高）",
      qualityWide: "寬鬆（低~高）",
      mjpegQuality: "MJPEG品質：",
      outputResolution: "編碼後解析度：",
      h264Profile: "H.264級別：",
      bitrateControl: "碼流控制：",
      // 提示文字
      tipCodec: "H.265的視訊效果好於H.264，如果解碼端支援H.265，儘量使用H.265",
      tipVbr: "VBR的情況下，位元率受\"畫質範圍\"調節；畫質範圍鉗位QP值；<br>如果選擇 \"較高~高\" 或者 \"高\"，會導致很高的實際位元率，設定的位元率無意義；<br>只有當畫質範圍為 \"較低~高\" 的情況下，位元率才有參考意義；",
      tipCbr: "\"Strong CBR\" 用於對接CATV系統，保證TS的碼率穩定，如果選擇\"Strong CBR\"，1080P情況下，位元率一般不要低於5000kbit/s，建議8000kbit/s",
      tipGop: "假設輸入視訊幀率為 n，n 的常見值為 60，50，30， 25；<br>關鍵幀間隔一般可以設定為  n * 2，常見值為 120，100，60，50；<br>編碼幀率如果選擇自動，那麼 n大於30的時候，編碼幀率為 n / 2，否則 編碼幀率為 n"
    },

    // TS/群播設定
    ts: {
      tsUri: "TS流位址：",
      multicastIp: "群播IP：",
      multicastPort: "群播連接埠：",
      sapName: "群播SAP名：",
      tsVideoPid: "TS視訊PID：",
      tsAudioPid: "TS音訊PID：",
      tsTransportStreamId: "TS Transport Stream ID：",
      tsOriginalNetworkId: "TS Original Network ID：",
      tsPmtStartPid: "TS PMT Start PID：",
      tsStartPid: "TS Start PID：",
      tsTablesVersion: "TS Tables Version：",
      tsServiceId: "TS Service ID：",
      tsServiceName: "TS Service Name：",
      tsProviderName: "TS Provider Name：",
      tsPcrPeriod: "TS PCR Period(ms)：",
      conformSystemB: "Conform to System B (DVB)：",
      tsNullPacket: "TS空包：",
      noInsert: "不插入",
      insert12: "插入（1.2x）",
      insert13: "插入（1.3x）",
      insert15: "插入（1.5x）",
      insert20: "插入（2x）",
      insert25: "插入（2.5x）",
      tsTdt: "TS TDT：",
      // 提示文字
      tipMulticast: "群播位址也可以填入 廣播 單播位址，系統會自動識別。",
      tipVlc: "如果VLC無法播放群播，請檢查電腦是否有多塊網路卡，切換到其他網路卡測試。",
      tipSap: "群播SAP名，可以在支援的裝置查看，比如VLC的播放列表->本地網路。",
      tipAdvanced: "TS 的 進階設定，一般不用調節。",
      tipIptv: "當對接IPTV系統的時候，TS空包建議調整到 1.3x，裝置會自動插入空包，保證碼率穩定；<br>此設定僅對\"Strong CBR\" 模式有效。"
    },

    // RTSP設定
    rtsp: {
      rtspUri: "RTSP流位址：",
      enableMulticast: "啟用(群播)",
      enableTcpOnly: "啟用(僅TCP)",
      multicastIp: "RTSP群播IP：",
      multicastPort: "RTSP群播連接埠：",
      // 提示文字
      tipEnable: "如果選擇 啟用，那麼 實際傳輸用UDP還是TCP是由用戶端決定的，比如VLC中可以勾選 \"RTP over RTSP(TCP)\" 設定走TCP。",
      tipTcpOnly: "選擇 啟用(僅TCP) ， 那麼 裝置會強制使用TCP方式。",
      tipUdp: "UDP 方式在某些網路環境下因為網路問題偶爾丟包，如果用戶都支援，建議都設為TCP方式。",
      tipMulticast: "選擇 啟用(群播) 方式，那麼 RTSP 群播連接埠，從設定的 \"RTSP群播連接埠\" 開始，會連續佔用4個。"
    },

    // RTMP設定
    rtmp: {
      rtmpUri: "RTMP流位址：",
      publishUri0: "RTMP(S)/RTSP發佈位址0：",
      publishUri1: "RTMP(S)/RTSP發佈位址1：",
      publishUri2: "RTMP(S)/RTSP發佈位址2：",
      mode: "RTMP 推流模式：",
      modeStandard: "Standard (Enhanced RTMP)",
      modeLegacy: "Legacy (CodecID 12)",
      // 提示文字
      tipPublish: "發佈位址0~2，為推流位址，可以推送到 其他區域網路或者公網的 RTMP/RTSP 伺服器，支援H.265/H.264推流。",
      tipBuiltin: "本裝置內建一個RTMP伺服器，支援H.264/H.265 拉流；<br>RTMP流位址，如果 設定為\"/live/0\"，Potplayer可以開啟 http://裝置IP/live/0 來播放視訊。",
      tipMode: "RTMP 推流模式，僅對 H.265 有效，同時影響 FLV 流；"
    },

    // SRT設定
    srt: {
      listenerUri: "SRT Listener 位址：",
      callerUri: "SRT Caller 位址：",
      // 提示文字
      tipListener: "SRT Listener 模式，為本地監聽一個連接埠，播放器可以拉取流進行播放。<br>比如填寫為 srt:// 0.0.0.0:9000 ；<br>那麼VLC可以開啟 \"srt://裝置IP:9000\" 進行播放。<br>新增streamid的範例：<br>srt://0.0.0.0:9000?streamid=channel100<br>新增密碼的範例，注意，密碼最小為10位：<br>srt://0.0.0.0:9000?passphrase=0123456789<br>新增streamid和密碼的範例：<br>srt://0.0.0.0:9000?streamid=channel100&passphrase=0123456789",
      tipCaller: "SRT Caller 模式，為把流推給其他伺服器，比如：<br>srt://live.example.com:9000?streamid=channel100&latency=120&maxbw=8000000\"",
      tipParams: "本裝置支援如下SRT參數，具體意義參見SRT協定：<br>streamid - 流標識符，用於多路復用<br>passphrase - 加密密碼，SRT要求密碼長度為10-79字元<br>pbkeylen - 加密金鑰長度：16（AES-128）、24（AES-192）、32（AES-256）<br>latency - 延遲設定，單位毫秒（20-8000ms）<br>maxbw - 最大頻寬限制，單位bytes/sec<br>rcvbuf - 接收緩衝區大小<br>sndbuf - 傳送緩衝區大小<br>ipttl - IP TTL值<br>conntimeo - 連線逾時時間（毫秒）"
    },

    // WebRTC設定
    webrtc: {
      previewTitle: "網頁預覽",
      previewNote: "（狀態頁低延遲預覽）",
      whipTitle: "WHIP 推流",
      whipNote: "（推到伺服器，可多人觀看）",
      p2pTitle: "P2P 遠端直連",
      p2pNote: "（跨外網穿透，可少量人遠端觀看）",
      optional: "可留空",
      preview: "網頁預覽",
      whipServer: "推流位址",
      whipToken: "Bearer 權杖",
      p2pServer: "信令伺服器位址",
      p2pUuid: "裝置 UUID",
      p2pToken: "P2P 授權令牌：",
      p2pAuthToken: "授權權杖",
      regenerate: "重新產生",
      // 提示文字
      tipPreview: "主流瀏覽器的 WebRTC 預覽，視訊支援 H.264編碼，音訊支援 Opus G.711 編碼。<br>音訊設定為Opus可以獲得更好的效果，如果音訊沒有設定為Opus，則預設G.711 8K。",
      tipWhip: "WHIP 推流可以對接標準WHIP伺服器，具體位址請拷貝伺服器給出的位址。<br>Bearer 令牌 可以為空。",
      tipP2p: "P2P 伺服器 啟用之後，觀看位址見狀態頁面<br>P2P 授權令牌 可以為空。",
      tipP2pNote: "複雜內網環境，P2P 可能連不通。"
    },

    // TRTC設定
    trtc: {
      roomId: "TRTC 房間號：",
      userId: "TRTC 使用者名稱：",
      roomKey: "TRTC 房間Key：",
      userSig: "TRTC UserSig：",
      sdkAppId: "TRTC SDKAppID：",
      roomIdType: "TRTC 房間號類型：",
      roomIdNumber: "數字",
      roomIdString: "字串",
      // 供模板使用的簡短列舉名
      number: "數字",
      string: "字串",
      // 提示文字
      tipTrtc: "給騰訊TRTC伺服器推流，具體位址請拷貝伺服器給出的位址。<br>騰訊TRTC伺服器暫時只支援 H.264。"
    },

    alirtc: {
      roomId: "AliRTC 房間號：",
      userId: "AliRTC 使用者ID：",
      userName: "AliRTC 使用者名稱：",
      region: "AliRTC 區域：",
      token: "AliRTC Token：",
      tipAliRtc: "給阿里雲 RTC 伺服器推流，支援H.265/H.264。<br>可以直接填寫服務方提供的 Token，或者點擊AliRTC Token在獨立頁面中透過AppID/AppKey 生成 Token。<br>如果 Token 為空，裝置啟動時會嘗試用獨立頁面裡保存的 AppID/AppKey 自動生成。<br>房間號、使用者ID、使用者名稱變更後，可能需要重新生成 token。"
    },


    alirtcTokenPage: {
      title: "AliRTC Token",
      roomId: "AliRTC 房間號：",
      userId: "AliRTC 使用者ID：",
      userName: "AliRTC 使用者名稱：",
      appId: "AliRTC AppID：",
      appKey: "AliRTC AppKey：",
      token: "AliRTC Token：",
      generate: "生成並保存 Token",
      appFieldsRequired: "AliRTC AppID、AppKey 不能為空！",
      identityRequired: "請先在目前碼流輸出設定裡填寫 AliRTC 房間號、使用者ID、使用者名稱！",
      generateSuccess: "AliRTC token 已生成並保存！",
      generateFailed: "AliRTC token 生成失敗！",
      unavailable: "目前裝置不支援 AliRTC。"
    },

    // HLS設定
    hls: {
      hlsTsUri: "HLS TS流位址：",
      hlsMp4Uri: "HLS MP4流位址：",
      hlsPushUri: "HLS PUSH URL：",
      hlsPushUrl: "HLS PUSH URL：",
      // 提示文字
      tipHls: "HLS TS / 和 HLS MP4 開啟之後，本裝置會根據進階設定中的，切片時間和切片數，在記憶體中緩衝資料。<br>一般切片時間和切片數都設為3，可以減少記憶體佔用。",
      tipPush: "HLS 發佈位址，用於推流給 youtube 等伺服器。"
    },

    // MP4/FLV/其他設定
    other: {
      mp4Uri: "MP4流位址：",
      flvUri: "FLV流位址：",
      icecastUri: "ICECAST PUSH URL：",
      icecastPushUrl: "ICECAST PUSH URL：",
      shoutcastUri: "Shoutcast PUSH URL：",
      shoutcastPushUrl: "Shoutcast PUSH URL：",
      // 提示文字
      tipMp4: "MP4 流啟用之後，可以直接在瀏覽器中開啟播放。<br>FLV流，本裝置支援H.265/H.264，但是VLC等播放器暫時只支援H.264。<br>ICECAST/Shoutcast  僅支援MP3，支援推流給音訊伺服器。",
      tipShoutcast: "Shoutcast 支援 v1 和 v2 版本；<br>範例如下:<br>http://password@shoutcast_server:8000<br>http://password@shoutcast_server:8000?sid=100<br>http://password@shoutcast_server:8000?icy-name=Stream&icy-genre=Pop<br>具體格式為：<br>http://密碼@伺服器IP:監聽連接埠[?參數...] 格式；使用者名稱可省略（預設 source）。<br>連接埠填伺服器\"監聽連接埠\"，裝置會自動用來源連接埠（監聽連接埠+1）連線。<br>本軟體支援如下參數：<br>sid：Shoutcast v2 流 ID（不填預設 1）。<br>icy-name：流名稱（可選）。<br>icy-genre：流類型/風格（可選）。<br>icy-url：官網/頁面位址（可選）。<br>icy-pub：是否公開，0/1（可選）。"
    },

    // 通用
    common: {
      save: "設 置",
      disabled: "禁用",
      enabled: "啟用"
    },

    // 錯誤和成功訊息
    messages: {
      success: "設定成功！",
      failed: "設定失敗！",
      emptyError: "設定內容不能為空！",
      trtcH264Only: "TRTC啟用時，僅支援H.264類型編碼，已同時修改",
      alirtcIdentityRequired: "啟用 AliRTC 時，房間號、使用者ID、使用者名稱不能為空！",
      mp3Required: "請將音訊設定的編碼方式設定為MP3!",
      // 編碼驗證
      frameRateError: "編碼幀率的值應是5-60間的整數！",
      gopError: "關鍵幀間隔(幀)的值應是5-300間的整數！",
      mjpegQualityError: "MJPEG品質的值應是10-99間的整數！",
      hlsBitrateWarning: "當位元率不在32~8000範圍內時，HLS TS流/HLS MP4流/HLS PUSH流不可用，已為您同時禁用",
      trtcCodecWarning: "編碼類型不是H.264時，TRTC功能不可用，已為您禁用",
      hlsBitrateError: "編碼位元率不在32~8000範圍內，HLS TS流/HLS MP4流/HLS PUSH流不可啟用",
      // SRT驗證
      srtListenerPortError: "SRT Listener 位址應是在1-65535內的整數！",
      srtListenerFormatError: "SRT Listener 位址格式不正確！",
      srtCallerFormatError: "SRT Caller 位址格式不正確！",
      srtPasswordLengthError: "SRT加密密碼長度在10-32之間！",
      srtLatencyError: "SRT Latency的值應該是1-10000間的整數!",
      srtBandwidthError: "SRT bandwidth的值應該是0-102400間的整數!",
      // RTMP驗證
      rtmpFormatError: "RTMP(S)/RTSP發佈位址必須以rtmp://、rtmps://或rtsp://開頭",
      // HLS驗證
      hlsFormatError: "HLS發佈位址格式不正確！",
      // RTSP驗證
      rtspMulticastIpError: "RTSP群播IP格式不正確！",
      rtspMulticastPortError: "RTSP群播連接埠應是在1-65535內的整數！",
      // TS驗證
      multicastIpError: "群播IP格式不正確！",
      multicastPortError: "群播連接埠應是在1-65535內的整數！",
      tsTransportIdError: "TS Transport Stream ID的值應是1-65535間的整數！",
      tsNetworkIdError: "TS Original Network ID的值應是1-65535間的整數！",
      tsPmtPidError: "TS PMT Start PID的值應是32-8186間的整數！",
      tsStartPidError: "TS Start PID的值應是32-3840間的整數！",
      tsPidConflict: "TS Start PID和 TS PMT Start PID的值不能相同！",
      tsVersionError: "TS Tables Version的值應是0-31間的整數！",
      tsServiceIdError: "TS Service ID的值應該是1-65535間的整數!",
      tsVideoPidError: "TS視訊PID的值應是16-8190間的整數！",
      tsAudioPidError: "TS音訊PID的值應是16-8190間的整數！",
      tsPcrPeriodError: "TS PCR週期應是0-100間的整數（0=自動）！",
      tsVideoPidConflict: "TS視訊PID和TS音訊PID的值必須不一樣！",
      tsAudioPmtConflict: "TS音訊PID和TS PMT Start PID的值必須不一樣！",
      tsVideoPmtConflict: "TS視訊PID和TS PMT Start PID的值必須不一樣！",
      // 其他驗證
      icecastFormatError: "icecast發佈位址格式不正確！",
      shoutcastFormatError: "shoutcast發佈位址格式不正確！"
    }
  }
};
