├── .github └── workflows │ └── build.yml ├── .gitignore ├── Makefile ├── README.md ├── debian ├── changelog ├── compat ├── control ├── copyright ├── install ├── postinst ├── rules └── source │ └── format ├── generate_desktop_files ├── hypnotix.pot ├── makepot ├── po ├── hypnotix-am.po ├── hypnotix-ar.po ├── hypnotix-ast.po ├── hypnotix-be.po ├── hypnotix-bg.po ├── hypnotix-br.po ├── hypnotix-ca.po ├── hypnotix-cs.po ├── hypnotix-cy.po ├── hypnotix-da.po ├── hypnotix-de.po ├── hypnotix-el.po ├── hypnotix-en_CA.po ├── hypnotix-en_GB.po ├── hypnotix-eo.po ├── hypnotix-es.po ├── hypnotix-et.po ├── hypnotix-eu.po ├── hypnotix-fa.po ├── hypnotix-fi.po ├── hypnotix-fr.po ├── hypnotix-fr_CA.po ├── hypnotix-he.po ├── hypnotix-hi.po ├── hypnotix-hr.po ├── hypnotix-hu.po ├── hypnotix-ia.po ├── hypnotix-id.po ├── hypnotix-ie.po ├── hypnotix-is.po ├── hypnotix-it.po ├── hypnotix-ja.po ├── hypnotix-kab.po ├── hypnotix-kn.po ├── hypnotix-ko.po ├── hypnotix-la.po ├── hypnotix-lt.po ├── hypnotix-nb.po ├── hypnotix-nl.po ├── hypnotix-oc.po ├── hypnotix-pl.po ├── hypnotix-pt.po ├── hypnotix-pt_BR.po ├── hypnotix-ro.po ├── hypnotix-ru.po ├── hypnotix-rue.po ├── hypnotix-sk.po ├── hypnotix-sl.po ├── hypnotix-sq.po ├── hypnotix-sr.po ├── hypnotix-sr@latin.po ├── hypnotix-sv.po ├── hypnotix-te.po ├── hypnotix-th.po ├── hypnotix-tr.po ├── hypnotix-uk.po ├── hypnotix-uz.po ├── hypnotix-vi.po ├── hypnotix-zh_CN.po └── hypnotix-zh_TW.po ├── test └── usr ├── bin └── hypnotix ├── lib └── hypnotix │ ├── common.py │ ├── hypnotix.py │ ├── mpv.py │ └── xtream.py └── share ├── applications └── hypnotix.desktop ├── glib-2.0 └── schemas │ └── org.x.hypnotix.gschema.xml ├── hypnotix ├── countries.list ├── generic_tv_logo.png ├── hypnotix.css ├── hypnotix.ui ├── pictures │ ├── badges │ │ ├── de.svg │ │ ├── en.svg │ │ ├── es.svg │ │ ├── fr.svg │ │ ├── it.svg │ │ ├── movies.svg │ │ ├── music.svg │ │ └── news.svg │ ├── movies.svg │ ├── series.svg │ └── tv.svg └── shortcuts.ui └── icons └── hicolor └── scalable └── apps └── hypnotix.svg /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: Build 2 | 3 | on: 4 | push: 5 | branches: 6 | - master 7 | pull_request: 8 | branches: 9 | - master 10 | workflow_dispatch: 11 | 12 | jobs: 13 | build: 14 | uses: linuxmint/github-actions/.github/workflows/do-builds.yml@master 15 | with: 16 | commit_id: master 17 | ############################## Comma separated list - like 'linuxmint/xapp, linuxmint/cinnamon-desktop' 18 | dependencies: linuxmint/xapp 19 | ############################## 20 | 21 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | debian/hypnotix 2 | debian/*debhelper* 3 | debian/files 4 | debian/hypnotix.substvars 5 | usr/share/locale 6 | usr/share/hypnotix/hypnotix.ui~ -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | all: buildmo 2 | 3 | buildmo: 4 | @echo "Building the mo files" 5 | # WARNING: the second sed below will only works correctly with the languages that don't contain "-" 6 | for file in `ls po/*.po`; do \ 7 | lang=`echo $$file | sed 's@po/@@' | sed 's/\.po//' | sed 's/hypnotix-//'`; \ 8 | install -d usr/share/locale/$$lang/LC_MESSAGES/; \ 9 | msgfmt -o usr/share/locale/$$lang/LC_MESSAGES/hypnotix.mo $$file; \ 10 | done \ 11 | 12 | clean: 13 | rm -rf usr/share/locale 14 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Hypnotix 2 | ![build](https://github.com/linuxmint/hypnotix/actions/workflows/build.yml/badge.svg) 3 | 4 | Hypnotix is an IPTV streaming application with support for live TV, movies and series. 5 | 6 | ![shadow](https://user-images.githubusercontent.com/1138515/99553152-b8bac780-29b5-11eb-9d75-8756ed7581b6.png) 7 | 8 | It can support multiple IPTV providers of the following types: 9 | 10 | - M3U URL 11 | - Xtream API 12 | - Local M3U playlist 13 | 14 | # License 15 | 16 | - Code: GPLv3 17 | - Flags: https://github.com/linuxmint/flags 18 | - Icons on the landing page: CC BY-ND 2.0 19 | 20 | # Requirements 21 | 22 | - libxapp 2.6+ 23 | - libmpv 24 | - python3-imdbpy (for Older Mint and Debian releases get it from https://packages.ubuntu.com/focal/all/python3-imdbpy/download) 25 | - circle-flags (https://github.com/linuxmint/circle-flags) 26 | 27 | # TV Channels and media content 28 | 29 | Hypnotix does not provide content or TV channels, it is a player application which streams from IPTV providers. 30 | 31 | By default, Hypnotix is configured with one IPTV provider called Free-TV: https://github.com/Free-TV/IPTV. 32 | 33 | This provider was chosen because it satisfied the following criterias: 34 | 35 | - It only includes free, legal, publicly available content 36 | - It groups TV channels by countries 37 | - It doesn't include adult content 38 | 39 | Issues relating to TV channels and media content should be addressed directly to the relevant provider. 40 | 41 | Note: Feel free to remove Free-TV from Hypnotix if you don't use it, or add any other provider you may have access to or local M3U playlists. 42 | 43 | # Wayland compatibility 44 | 45 | If you're using Wayland go the Hypnotix preferences and add the following to the list of MPV options: 46 | 47 | `vo=x11` 48 | 49 | Run Hypnotix with: 50 | 51 | `GDK_BACKEND=x11 hypnotix` 52 | -------------------------------------------------------------------------------- /debian/changelog: -------------------------------------------------------------------------------- 1 | hypnotix (4.9) xia; urgency=medium 2 | 3 | * l10n: Update translations 4 | 5 | -- Clement Lefebvre Mon, 06 Jan 2025 14:02:14 +0000 6 | 7 | hypnotix (4.8) xia; urgency=medium 8 | 9 | [ Lakshmi Narayanan ] 10 | * Fix for Issue #348 - Xstream config erroring out on load (#359) 11 | 12 | -- Clement Lefebvre Fri, 06 Dec 2024 11:29:10 +0000 13 | 14 | hypnotix (4.7) xia; urgency=medium 15 | 16 | [ Dmitriy Yefremov ] 17 | * Fix encoding for m3u links (#339). (#340) 18 | 19 | [ moloz23 ] 20 | * issue 342 - fix Romania flag (#345) 21 | 22 | [ Kemal Oktay ] 23 | * Installation and operation on Debian 12 is successful (#337) 24 | 25 | [ web1n ] 26 | * Set subtitle when navigating to landing page (#341) 27 | 28 | [ Samuel ] 29 | * Use `$XDG_CACHE_HOME` if defined (#355) 30 | 31 | [ Clement Lefebvre ] 32 | * l10n: Update translations 33 | * l10n: Update files 34 | 35 | -- Clement Lefebvre Thu, 05 Dec 2024 10:40:18 +0000 36 | 37 | hypnotix (4.6) wilma; urgency=medium 38 | 39 | * l10n: Update translations 40 | * l10n: Update files 41 | 42 | -- Clement Lefebvre Sun, 21 Jul 2024 10:31:13 +0100 43 | 44 | hypnotix (4.5) wilma; urgency=medium 45 | 46 | * l10n: Update translations 47 | * l10n: Update files 48 | 49 | -- Clement Lefebvre Tue, 18 Jun 2024 19:30:10 +0100 50 | 51 | hypnotix (4.4) wilma; urgency=medium 52 | 53 | [ Ame-chan-angel ] 54 | * Fix loadfile for mpv v0.38.0 (#332) 55 | 56 | -- Clement Lefebvre Wed, 05 Jun 2024 14:17:56 +0100 57 | 58 | hypnotix (4.3) virginia; urgency=medium 59 | 60 | * l10n: Update translations 61 | 62 | -- Clement Lefebvre Thu, 04 Jan 2024 16:38:06 +0000 63 | 64 | hypnotix (4.2) virginia; urgency=medium 65 | 66 | [ Michael Webster ] 67 | * Use filled and unfilled star icons for favorites. 68 | 69 | -- Clement Lefebvre Wed, 06 Dec 2023 12:16:39 +0000 70 | 71 | hypnotix (4.1) virginia; urgency=medium 72 | 73 | * l10n: Update translations 74 | 75 | -- Clement Lefebvre Sun, 03 Dec 2023 14:58:52 +0000 76 | 77 | hypnotix (4.0) virginia; urgency=medium 78 | 79 | [ Clement Lefebvre ] 80 | * README: Add dep on circle-flags 81 | * UI: Use a symbolic icon for stream information menu item 82 | * UI: Refresh interface 83 | * yt-dlp: Add the ability to switch to a local version and update it 84 | * launcher: Use $HOME instead of ~ 85 | * Add .gitignore 86 | * Add the ability to set channels as favorite 87 | * Fix back button when no provider is selected 88 | * Fix favorites after browsing films/VOD 89 | * Fix indentation 90 | * Fix error when provider is None 91 | * Favorites: Fix navigation issues in niche cases 92 | * Add the ability to create custom channels 93 | * l10n: Update POT 94 | 95 | [ TVKaista ] 96 | * Fix flag of Macau (#307) 97 | 98 | [ DYefremov ] 99 | * forced utf-8 enabled for playlist read/write (#298) 100 | * Fix: URL label enlarges (#297) 101 | 102 | [ Clement Lefebvre ] 103 | * Fix headerbar subtitle in channels page 104 | 105 | -- Clement Lefebvre Wed, 29 Nov 2023 14:04:36 +0000 106 | 107 | hypnotix (3.7) faye; urgency=medium 108 | 109 | * Get flags from circles-flags-svg 110 | * Depend on yt-dlp 111 | 112 | -- Clement Lefebvre Thu, 21 Sep 2023 14:29:39 +0100 113 | 114 | hypnotix (3.6) faye; urgency=medium 115 | 116 | [ cute-sakura ] 117 | * debian/control: add libmpv2 (#287) 118 | * debian/control: recommend yt-dlp (#288) 119 | 120 | [ Niclas Thall ] 121 | * fix: ensure word is in the list (#290) 122 | 123 | -- Clement Lefebvre Sun, 20 Aug 2023 15:16:32 +0200 124 | 125 | hypnotix (3.5) victoria; urgency=medium 126 | 127 | * l10n: Update translations 128 | 129 | -- Clement Lefebvre Fri, 07 Jul 2023 16:57:04 +0200 130 | 131 | hypnotix (3.4) vera; urgency=medium 132 | 133 | [ Clement Lefebvre ] 134 | * l10n: Update POT 135 | 136 | [ Michael Webster ] 137 | * Update xapp version in README, use real release version in debian/ control. 138 | 139 | [ Clement Lefebvre ] 140 | * l10n: Update translations 141 | * l10n: Update files 142 | 143 | -- Clement Lefebvre Thu, 08 Jun 2023 11:39:40 +0100 144 | 145 | hypnotix (3.3) victoria; urgency=medium 146 | 147 | [ Bruno Cabral ] 148 | * Lint changes (#251) 149 | 150 | [ DYefremov ] 151 | * Added shortcuts support to zap through channels (#232) 152 | 153 | [ Peter Dave Hello ] 154 | * Add zh_TW Traditional Chinese locale (#275) 155 | 156 | [ Clement Lefebvre ] 157 | * Dark mode: Delegate to libxapp 158 | * gsettings: Remove prefer-dark-mode 159 | * Fix dark mode support 160 | * l10n: Update POT 161 | 162 | [ Michael Webster ] 163 | * Add xapp to workflow. 164 | 165 | -- Clement Lefebvre Mon, 05 Jun 2023 13:44:28 +0100 166 | 167 | hypnotix (3.2) vera; urgency=medium 168 | 169 | [ DYefremov ] 170 | * fixed work with API ver. 2 (#254) 171 | 172 | -- Clement Lefebvre Fri, 06 Jan 2023 16:36:05 +0000 173 | 174 | hypnotix (3.1) vanessa; urgency=medium 175 | 176 | * l10n: Update translations 177 | 178 | -- Clement Lefebvre Fri, 02 Dec 2022 17:26:23 +0000 179 | 180 | hypnotix (3.0) vera; urgency=medium 181 | 182 | [ Michael Webster ] 183 | * Add github workflow. 184 | 185 | [ woxcab ] 186 | * Fix error when the Content-Length header is missing (#241) 187 | 188 | [ Dmitriy Yefremov ] 189 | * Fixed disabling osc via MPV options (#240) (#242) 190 | 191 | [ fire-hawk-86 ] 192 | * Update common.py (#244) 193 | 194 | [ atzlinux ] 195 | * d/control: Depends: add python3-requests 196 | 197 | -- Clement Lefebvre Mon, 21 Nov 2022 11:47:43 +0000 198 | 199 | hypnotix (2.9) vanessa; urgency=medium 200 | 201 | * l10n: Update translations 202 | 203 | -- Clement Lefebvre Sun, 24 Jul 2022 12:13:16 +0200 204 | 205 | hypnotix (2.8) vanessa; urgency=medium 206 | 207 | * l10n: Update translations 208 | * l10n: Update files 209 | 210 | -- Clement Lefebvre Sun, 26 Jun 2022 15:52:38 +0200 211 | 212 | hypnotix (2.7) vanessa; urgency=medium 213 | 214 | [ Carmina16 ] 215 | * Mark missed strings for translatrion (#212) 216 | 217 | [ lulol ] 218 | * Make non translatable strings translatable #208 (#209) 219 | 220 | [ Azureit ] 221 | * Use XWayland as a workaround for Wayland support. (#205) 222 | 223 | [ Arkadiy Illarionov ] 224 | * Save providers to ~/.cache (#220) 225 | 226 | [ AboBier ] 227 | * Fix XTream API (#203) 228 | 229 | [ lulol ] 230 | * Show feedback in the status bar when search has no results (#210) 231 | 232 | [ Claudio Olmi ] 233 | * Improvements for XTream API (#217) 234 | 235 | [ lulol ] 236 | * Add widget tooltips with channel name (#228) 237 | 238 | [ Clement Lefebvre ] 239 | * Switch icon list-edit-symbolic -> xapp-edit-symbolic 240 | * Add 'Clear icon cache' button for provider #230 241 | 242 | [ Arkadiy Illarionov ] 243 | * Optimize imports (#231) 244 | 245 | [ Clement Lefebvre ] 246 | * l10n: Update POT 247 | 248 | -- Clement Lefebvre Wed, 15 Jun 2022 17:41:13 +0200 249 | 250 | hypnotix (2.6) una; urgency=medium 251 | 252 | * l10n: Update translations 253 | 254 | -- Clement Lefebvre Fri, 31 Dec 2021 12:43:52 +0000 255 | 256 | hypnotix (2.5) una; urgency=medium 257 | 258 | [ Jonathon ] 259 | * Fix symlink target for irak.svg (#187) 260 | 261 | [ Clement Lefebvre ] 262 | * Fix channels when no groups are present 263 | * UI: Fix symbolic icon name 264 | 265 | -- Clement Lefebvre Fri, 31 Dec 2021 12:03:09 +0000 266 | 267 | hypnotix (2.4) una; urgency=medium 268 | 269 | [ Michael Webster ] 270 | * Use simpler country emblems. 271 | * Fix some hidpi issues, increase initial window height to accomodate larger country badges. 272 | 273 | -- Clement Lefebvre Thu, 16 Dec 2021 10:16:16 +0000 274 | 275 | hypnotix (2.3) una; urgency=medium 276 | 277 | [ Claudio Olmi ] 278 | * Relaxing channel name check in Xtream API (#178) 279 | 280 | [ Brenders ] 281 | * Series: Fix parsing of episodes which name isn't a number (#180) 282 | 283 | -- Clement Lefebvre Wed, 08 Dec 2021 15:25:28 +0000 284 | 285 | hypnotix (2.2) una; urgency=medium 286 | 287 | * l10n: Update translations 288 | * l10n: Update files 289 | 290 | -- Clement Lefebvre Mon, 06 Dec 2021 15:33:32 +0000 291 | 292 | hypnotix (2.1) una; urgency=medium 293 | 294 | [ lulol ] 295 | * Add a basic global search box (#157) 296 | 297 | [ Clement Lefebvre ] 298 | * Add support for dark GTK theme variants 299 | 300 | [ Kira ] 301 | * Packaging: Depend on python3-unidecode (#166) 302 | 303 | [ lulol ] 304 | * Avoid race condition playing local content (#172) 305 | * Search: Use a toggle button and simple fixes (#165) 306 | 307 | [ Claudio Olmi ] 308 | * Add support for XTream API (#148) 309 | 310 | [ Clement Lefebvre ] 311 | * l10n: Rename search entry text 312 | * Fix debug print calls 313 | * Delete trailing spaces 314 | * Add more badges 315 | * Search: grab focus, don't show menu item 316 | * l10n: Update POT 317 | 318 | -- Clement Lefebvre Tue, 23 Nov 2021 12:23:08 +0000 319 | 320 | hypnotix (2.0) uma; urgency=medium 321 | 322 | * Fix slovenian flag 323 | 324 | -- Clement Lefebvre Wed, 14 Jul 2021 14:45:08 +0100 325 | 326 | hypnotix (1.9) uma; urgency=medium 327 | 328 | * l10n: Update translations 329 | * l10n: Generate files 330 | 331 | -- Clement Lefebvre Fri, 25 Jun 2021 14:35:15 +0100 332 | 333 | hypnotix (1.8) uma; urgency=medium 334 | 335 | * l10n: Update POT 336 | * packaging: Recommend youtube-dl 337 | * l10n: Update translations 338 | * l10n: Generate files 339 | 340 | -- Clement Lefebvre Wed, 09 Jun 2021 16:03:34 +0100 341 | 342 | hypnotix (1.7) uma; urgency=medium 343 | 344 | [ Clement Lefebvre ] 345 | * README: Add a section for Wayland 346 | 347 | [ NikoKrause ] 348 | * Highlight selected TV channel (#134) 349 | 350 | [ hcombination ] 351 | * Add menu option to display stream information (#138) 352 | 353 | [ Clement Lefebvre ] 354 | * Improve badges 355 | * l10n: Update POT 356 | 357 | -- Clement Lefebvre Thu, 03 Jun 2021 19:19:57 +0100 358 | 359 | hypnotix (1.6) ulyssa; urgency=medium 360 | 361 | * Switch default provider from Free-IPTV to Free-TV 362 | 363 | -- Clement Lefebvre Thu, 15 Apr 2021 13:38:27 +0100 364 | 365 | hypnotix (1.5) ulyssa; urgency=medium 366 | 367 | [ freddii ] 368 | * Added Keywords to desktop file (#76) 369 | 370 | [ Clement Lefebvre ] 371 | * Fix navigation to edit page 372 | 373 | -- Clement Lefebvre Sat, 06 Mar 2021 15:48:00 +0000 374 | 375 | hypnotix (1.4) ulyssa; urgency=medium 376 | 377 | [ Michael Webster ] 378 | * debian/control: Add missing dependency. 379 | 380 | [ Clement Lefebvre ] 381 | * README: Add requirements section 382 | * Packaging: Depend on libxapp 1.4+ 383 | * l10n: Update translations 384 | * l10n: Update files 385 | 386 | -- Clement Lefebvre Sat, 02 Jan 2021 17:06:15 +0000 387 | 388 | hypnotix (1.3) ulyssa; urgency=medium 389 | 390 | * l10n: Update translations 391 | * l10n: Generate files 392 | 393 | -- Clement Lefebvre Thu, 10 Dec 2020 12:41:04 +0000 394 | 395 | hypnotix (1.2) ulyssa; urgency=medium 396 | 397 | [ JosephMcc ] 398 | * ui: Fix a headerbar icon name 399 | * ui: Fix a few scrollbars overlaying content (#63) 400 | 401 | -- Clement Lefebvre Tue, 08 Dec 2020 10:51:58 +0000 402 | 403 | hypnotix (1.1) ulyssa; urgency=medium 404 | 405 | [ Clement Lefebvre ] 406 | * Set drawingarea background to black 407 | * Add missing dependency libmpv1 408 | * Add compatibility for local m3u playlists 409 | * Implement fullscreen support 410 | * Add a fullscreen button 411 | * Add support for TV logos 412 | * Start implementing preferences 413 | * Implement 2nd batch of features 414 | * Add licensing info 415 | * Fix dependency 416 | * Fix restrictive m3u file dialog filter 417 | * Update README.md 418 | * Add support for user agent, http referrer and mpv options 419 | * Add a link to MPV options 420 | * Redesign navigation widgets 421 | * Fix fullscreen 422 | * Enable info section for series 423 | * Reveal the info section with an animation 424 | 425 | [ ItzSwirlz ] 426 | * Improve packaging (#30) 427 | 428 | [ Clement Lefebvre ] 429 | * Show a spinner while MPV is loading a stream 430 | * l10n: Update POT 431 | 432 | -- Clement Lefebvre Tue, 01 Dec 2020 12:09:45 +0000 433 | 434 | hypnotix (1.0.0) ulyana; urgency=low 435 | 436 | * Initial release 437 | 438 | -- Clement Lefebvre Tue, 26 Oct 2020 21:38:00 +0000 439 | 440 | -------------------------------------------------------------------------------- /debian/compat: -------------------------------------------------------------------------------- 1 | 10 2 | -------------------------------------------------------------------------------- /debian/control: -------------------------------------------------------------------------------- 1 | Source: hypnotix 2 | Section: video 3 | Priority: optional 4 | Maintainer: Linux Mint 5 | Build-Depends: debhelper (>= 9) 6 | Standards-Version: 3.9.6 7 | Rules-Requires-Root: no 8 | 9 | Package: hypnotix 10 | Architecture: all 11 | Depends: gir1.2-xapp-1.0, 12 | python3, 13 | python3-gi, 14 | python3-requests, 15 | python3-setproctitle, 16 | python3-unidecode, 17 | xapps-common, 18 | ${misc:Depends}, 19 | libmpv2 | libmpv1, 20 | python3-imdbpy, 21 | python3-gi-cairo, 22 | circle-flags-svg, 23 | yt-dlp, 24 | Description: IPTV Player 25 | Watch TV by streaming from M3U sources. 26 | -------------------------------------------------------------------------------- /debian/copyright: -------------------------------------------------------------------------------- 1 | Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ 2 | Upstream-Name: hypnotix 3 | Upstream-Contact: Linux Mint 4 | Source: https://github.com/linuxmint/hypnotix 5 | 6 | Files: * 7 | Copyright: 2020 Linux Mint 8 | License: GPL-3+ 9 | This program is free software; you can redistribute it and/or modify 10 | it under the terms of the GNU General Public License as published by 11 | the Free Software Foundation; either version 3 of the License, or 12 | (at your option) any later version. 13 | . 14 | This program is distributed in the hope that it will be useful, 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 | GNU General Public License for more details. 18 | . 19 | On Debian systems, the complete text of the GNU General 20 | Public License can be found in `/usr/share/common-licenses/GPL' 21 | -------------------------------------------------------------------------------- /debian/install: -------------------------------------------------------------------------------- 1 | usr 2 | -------------------------------------------------------------------------------- /debian/postinst: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | case "$1" in 5 | configure) 6 | if which glib-compile-schemas >/dev/null 2>&1 7 | then 8 | glib-compile-schemas /usr/share/glib-2.0/schemas 9 | fi 10 | ;; 11 | 12 | abort-upgrade|abort-remove|abort-deconfigure) 13 | 14 | ;; 15 | 16 | *) 17 | echo "postinst called with unknown argument \`$1'" >&2 18 | exit 1 19 | ;; 20 | esac 21 | -------------------------------------------------------------------------------- /debian/rules: -------------------------------------------------------------------------------- 1 | #!/usr/bin/make -f 2 | 3 | DEB_VERSION := $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ') 4 | 5 | %: 6 | dh ${@} 7 | 8 | # Inject version number in the code 9 | override_dh_installdeb: 10 | dh_installdeb 11 | for pkg in $$(dh_listpackages -i); do \ 12 | find debian/$$pkg -type f -exec sed -i -e s/__DEB_VERSION__/$(DEB_VERSION)/g {} +; \ 13 | done 14 | -------------------------------------------------------------------------------- /debian/source/format: -------------------------------------------------------------------------------- 1 | 3.0 (native) 2 | -------------------------------------------------------------------------------- /generate_desktop_files: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | DOMAIN = "hypnotix" 4 | PATH = "/usr/share/locale" 5 | 6 | import os 7 | import gettext 8 | from mintcommon import additionalfiles 9 | 10 | os.environ['LANGUAGE'] = "en_US.UTF-8" 11 | gettext.install(DOMAIN, PATH) 12 | 13 | prefix = "[Desktop Entry]\n" 14 | 15 | suffix = """Exec=hypnotix 16 | Icon=hypnotix 17 | Terminal=false 18 | Type=Application 19 | Encoding=UTF-8 20 | Categories=AudioVideo;Video;Player;TV; 21 | Keywords=Television;Stream; 22 | StartupNotify=false 23 | """ 24 | 25 | additionalfiles.generate(DOMAIN, PATH, "usr/share/applications/hypnotix.desktop", prefix, _("Hypnotix"), _("Watch TV"), suffix) 26 | -------------------------------------------------------------------------------- /hypnotix.pot: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER 3 | # This file is distributed under the same license as the PACKAGE package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | #, fuzzy 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: PACKAGE VERSION\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 13 | "Last-Translator: FULL NAME \n" 14 | "Language-Team: LANGUAGE \n" 15 | "Language: \n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=CHARSET\n" 18 | "Content-Transfer-Encoding: 8bit\n" 19 | "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "" 239 | msgstr[1] "" 240 | 241 | #: usr/lib/hypnotix/hypnotix.py:1127 242 | #, python-format 243 | msgid "%d movie" 244 | msgid_plural "%d movies" 245 | msgstr[0] "" 246 | msgstr[1] "" 247 | 248 | #: usr/lib/hypnotix/hypnotix.py:1132 249 | #, python-format 250 | msgid "%d series" 251 | msgid_plural "%d series" 252 | msgstr[0] "" 253 | msgstr[1] "" 254 | 255 | #: usr/lib/hypnotix/hypnotix.py:1152 256 | msgid "Edit" 257 | msgstr "" 258 | 259 | #: usr/lib/hypnotix/hypnotix.py:1162 260 | msgid "Clear icon cache" 261 | msgstr "" 262 | 263 | #: usr/lib/hypnotix/hypnotix.py:1172 264 | msgid "Remove" 265 | msgstr "" 266 | 267 | #: usr/lib/hypnotix/hypnotix.py:1279 268 | msgid "M3U Playlists" 269 | msgstr "" 270 | 271 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 272 | #: usr/share/hypnotix/hypnotix.ui.h:42 273 | msgid "Watch TV" 274 | msgstr "" 275 | 276 | #: usr/lib/hypnotix/hypnotix.py:1545 277 | msgid "Loading providers..." 278 | msgstr "" 279 | 280 | #: usr/lib/hypnotix/hypnotix.py:1558 281 | msgid "Downloading playlist..." 282 | msgstr "" 283 | 284 | #: usr/lib/hypnotix/hypnotix.py:1560 285 | msgid "Getting playlist..." 286 | msgstr "" 287 | 288 | #: usr/lib/hypnotix/hypnotix.py:1563 289 | msgid "Checking playlist..." 290 | msgstr "" 291 | 292 | #: usr/lib/hypnotix/hypnotix.py:1565 293 | msgid "Loading channels..." 294 | msgstr "" 295 | 296 | #: usr/lib/hypnotix/hypnotix.py:1573 297 | #, python-format 298 | msgid "Failed to download playlist from %s" 299 | msgstr "" 300 | 301 | #: usr/share/hypnotix/hypnotix.ui.h:1 302 | msgid "Create a new channel" 303 | msgstr "" 304 | 305 | #: usr/share/hypnotix/hypnotix.ui.h:5 306 | msgid "MPV Options" 307 | msgstr "" 308 | 309 | #: usr/share/hypnotix/hypnotix.ui.h:6 310 | msgid "List of MPV options" 311 | msgstr "" 312 | 313 | #: usr/share/hypnotix/hypnotix.ui.h:7 314 | msgid "Playback" 315 | msgstr "" 316 | 317 | #: usr/share/hypnotix/hypnotix.ui.h:8 318 | msgid "User Agent" 319 | msgstr "" 320 | 321 | #: usr/share/hypnotix/hypnotix.ui.h:9 322 | msgid "Referrer" 323 | msgstr "" 324 | 325 | #: usr/share/hypnotix/hypnotix.ui.h:10 326 | msgid "Network" 327 | msgstr "" 328 | 329 | #: usr/share/hypnotix/hypnotix.ui.h:11 330 | msgid "System version:" 331 | msgstr "" 332 | 333 | #: usr/share/hypnotix/hypnotix.ui.h:12 334 | msgid "" 335 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 336 | "and update it using the button above." 337 | msgstr "" 338 | 339 | #: usr/share/hypnotix/hypnotix.ui.h:13 340 | msgid "Local version:" 341 | msgstr "" 342 | 343 | #: usr/share/hypnotix/hypnotix.ui.h:14 344 | msgid "Update from github.com/yt-dlp" 345 | msgstr "" 346 | 347 | #: usr/share/hypnotix/hypnotix.ui.h:15 348 | msgid "Restart Hypnotix for changes to take effect." 349 | msgstr "" 350 | 351 | #: usr/share/hypnotix/hypnotix.ui.h:16 352 | msgid "Use local version" 353 | msgstr "" 354 | 355 | #: usr/share/hypnotix/hypnotix.ui.h:17 356 | msgid "Youtube" 357 | msgstr "" 358 | 359 | #: usr/share/hypnotix/hypnotix.ui.h:18 360 | msgid "Add a new provider..." 361 | msgstr "" 362 | 363 | #: usr/share/hypnotix/hypnotix.ui.h:19 364 | msgid "Reset to defaults..." 365 | msgstr "" 366 | 367 | #: usr/share/hypnotix/hypnotix.ui.h:20 368 | msgid "Name:" 369 | msgstr "" 370 | 371 | #: usr/share/hypnotix/hypnotix.ui.h:21 372 | msgid "URL:" 373 | msgstr "" 374 | 375 | #: usr/share/hypnotix/hypnotix.ui.h:22 376 | msgid "Path:" 377 | msgstr "" 378 | 379 | #: usr/share/hypnotix/hypnotix.ui.h:23 380 | msgid "Cancel" 381 | msgstr "" 382 | 383 | #: usr/share/hypnotix/hypnotix.ui.h:24 384 | msgid "OK" 385 | msgstr "" 386 | 387 | #: usr/share/hypnotix/hypnotix.ui.h:25 388 | msgid "Username:" 389 | msgstr "" 390 | 391 | #: usr/share/hypnotix/hypnotix.ui.h:26 392 | msgid "Password:" 393 | msgstr "" 394 | 395 | #: usr/share/hypnotix/hypnotix.ui.h:27 396 | msgid "Browse..." 397 | msgstr "" 398 | 399 | #: usr/share/hypnotix/hypnotix.ui.h:28 400 | msgid "EPG:" 401 | msgstr "" 402 | 403 | #: usr/share/hypnotix/hypnotix.ui.h:29 404 | msgid "Type:" 405 | msgstr "" 406 | 407 | #: usr/share/hypnotix/hypnotix.ui.h:30 408 | msgid "Are you sure you want to delete this provider?" 409 | msgstr "" 410 | 411 | #: usr/share/hypnotix/hypnotix.ui.h:31 412 | msgid "No" 413 | msgstr "" 414 | 415 | #: usr/share/hypnotix/hypnotix.ui.h:32 416 | msgid "Yes" 417 | msgstr "" 418 | 419 | #: usr/share/hypnotix/hypnotix.ui.h:33 420 | msgid "Are you sure you want to reset to the default providers?" 421 | msgstr "" 422 | 423 | #: usr/share/hypnotix/hypnotix.ui.h:34 424 | msgid "Logo URL:" 425 | msgstr "" 426 | 427 | #: usr/share/hypnotix/hypnotix.ui.h:35 428 | msgid "This channel will be added to your favorites." 429 | msgstr "" 430 | 431 | #: usr/share/hypnotix/hypnotix.ui.h:36 432 | msgid "Note: If the logo is a local file, upload it to imgur.com to get a URL." 433 | msgstr "" 434 | 435 | #: usr/share/hypnotix/hypnotix.ui.h:37 436 | msgid "Currently playing:" 437 | msgstr "" 438 | 439 | #: usr/share/hypnotix/hypnotix.ui.h:38 440 | msgid "Show" 441 | msgstr "" 442 | 443 | #: usr/share/hypnotix/hypnotix.ui.h:39 444 | msgid "Pause" 445 | msgstr "" 446 | 447 | #: usr/share/hypnotix/hypnotix.ui.h:40 448 | msgid "Stop" 449 | msgstr "" 450 | 451 | #: usr/share/hypnotix/hypnotix.ui.h:43 452 | msgid "Fullscreen" 453 | msgstr "" 454 | 455 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 456 | msgid "Search" 457 | msgstr "" 458 | 459 | #: usr/share/hypnotix/hypnotix.ui.h:48 460 | msgid "Video" 461 | msgstr "" 462 | 463 | #: usr/share/hypnotix/hypnotix.ui.h:50 464 | msgid "Audio" 465 | msgstr "" 466 | 467 | #: usr/share/hypnotix/shortcuts.ui.h:1 468 | msgid "Main shortcuts" 469 | msgstr "" 470 | 471 | #: usr/share/hypnotix/shortcuts.ui.h:4 472 | msgid "Play previous/next channel" 473 | msgstr "" 474 | 475 | #: usr/share/hypnotix/shortcuts.ui.h:5 476 | msgid "Toggle Fullscreen" 477 | msgstr "" 478 | 479 | #: usr/share/hypnotix/shortcuts.ui.h:8 480 | msgid "Reload all providers" 481 | msgstr "" 482 | -------------------------------------------------------------------------------- /makepot: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | intltool-extract --type=gettext/glade usr/share/hypnotix/hypnotix.ui 3 | intltool-extract --type=gettext/glade usr/share/hypnotix/shortcuts.ui 4 | xgettext --language=Python --keyword=_ --keyword=N_ --output=hypnotix.pot usr/lib/hypnotix/*.py generate_desktop_files usr/share/hypnotix/hypnotix.ui.h usr/share/hypnotix/shortcuts.ui.h 5 | rm -f usr/share/hypnotix/*.ui.h 6 | -------------------------------------------------------------------------------- /po/hypnotix-am.po: -------------------------------------------------------------------------------- 1 | # Amharic translation for linuxmint 2 | # Copyright (c) 2020 Rosetta Contributors and Canonical Ltd 2020 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2020. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2022-01-29 18:37+0000\n" 12 | "Last-Translator: samson \n" 13 | "Language-Team: Amharic \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n > 1;\n" 18 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 19 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "የ ፊደል ገበታ አቋራጮች" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "መረጃ ማስተላለፊያ" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "ስለ" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "ማጥፊያ" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "M3U URL" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "ክፍለ ጊዜ %s" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "ምንም አቅራቢ አልተመረጠም" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "የ ቲቪ ጣቢያዎች" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "ሙቪዎች" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "ተከታታይ" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "የ ቲቪ ጣቢያዎች > %s" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "ሙቪዎች > %s" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "ተከታታይ > %s" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "ምርጫዎች" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "አቅራቢዎች" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "ማረሚያ %s" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "አዲስ አቅራቢ መጨመሪያ" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "ማጥፊያ %s" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "አቅራቢ እንደ ነበር መመለሻ" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "ባጠቃላይ" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "ቀለም" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "እቅድ" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "መካከለኛ ቢትሬት" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "አቅጣጫዎች" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "የ ፒክስል አቀራረብ" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "ጋማ" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "ቢትስ በ ፒክስል" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "Codec" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "የ ተከበበ ድምፅ" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "ጣቢያዎች" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "የ ናሙና ደረጃ" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "አቀራረብ" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "ጣቢያ መቁጠሪያ" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "%d የ ቲቪ ጣቢያ" 239 | msgstr[1] "%d የ ቲቪ ጣቢያዎች" 240 | 241 | #: usr/lib/hypnotix/hypnotix.py:1127 242 | #, python-format 243 | msgid "%d movie" 244 | msgid_plural "%d movies" 245 | msgstr[0] "%d ሙቪ" 246 | msgstr[1] "%d ሙቪዎች" 247 | 248 | #: usr/lib/hypnotix/hypnotix.py:1132 249 | #, python-format 250 | msgid "%d series" 251 | msgid_plural "%d series" 252 | msgstr[0] "%d ተከታታይ" 253 | msgstr[1] "%d ተከታታዮች" 254 | 255 | #: usr/lib/hypnotix/hypnotix.py:1152 256 | msgid "Edit" 257 | msgstr "ማረሚያ" 258 | 259 | #: usr/lib/hypnotix/hypnotix.py:1162 260 | msgid "Clear icon cache" 261 | msgstr "" 262 | 263 | #: usr/lib/hypnotix/hypnotix.py:1172 264 | msgid "Remove" 265 | msgstr "ማስወገጃ" 266 | 267 | #: usr/lib/hypnotix/hypnotix.py:1279 268 | msgid "M3U Playlists" 269 | msgstr "" 270 | 271 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 272 | #: usr/share/hypnotix/hypnotix.ui.h:42 273 | msgid "Watch TV" 274 | msgstr "ቲቪ መመልከቻ" 275 | 276 | #: usr/lib/hypnotix/hypnotix.py:1545 277 | msgid "Loading providers..." 278 | msgstr "" 279 | 280 | #: usr/lib/hypnotix/hypnotix.py:1558 281 | msgid "Downloading playlist..." 282 | msgstr "" 283 | 284 | #: usr/lib/hypnotix/hypnotix.py:1560 285 | msgid "Getting playlist..." 286 | msgstr "" 287 | 288 | #: usr/lib/hypnotix/hypnotix.py:1563 289 | msgid "Checking playlist..." 290 | msgstr "" 291 | 292 | #: usr/lib/hypnotix/hypnotix.py:1565 293 | msgid "Loading channels..." 294 | msgstr "" 295 | 296 | #: usr/lib/hypnotix/hypnotix.py:1573 297 | #, python-format 298 | msgid "Failed to download playlist from %s" 299 | msgstr "" 300 | 301 | #: usr/share/hypnotix/hypnotix.ui.h:1 302 | msgid "Create a new channel" 303 | msgstr "" 304 | 305 | #: usr/share/hypnotix/hypnotix.ui.h:5 306 | msgid "MPV Options" 307 | msgstr "" 308 | 309 | #: usr/share/hypnotix/hypnotix.ui.h:6 310 | msgid "List of MPV options" 311 | msgstr "" 312 | 313 | #: usr/share/hypnotix/hypnotix.ui.h:7 314 | msgid "Playback" 315 | msgstr "መልሶ ማጫወቻ" 316 | 317 | #: usr/share/hypnotix/hypnotix.ui.h:8 318 | msgid "User Agent" 319 | msgstr "የ ተጠቃሚ ወኪል" 320 | 321 | #: usr/share/hypnotix/hypnotix.ui.h:9 322 | msgid "Referrer" 323 | msgstr "" 324 | 325 | #: usr/share/hypnotix/hypnotix.ui.h:10 326 | msgid "Network" 327 | msgstr "ኔትዎርክ" 328 | 329 | #: usr/share/hypnotix/hypnotix.ui.h:11 330 | msgid "System version:" 331 | msgstr "" 332 | 333 | #: usr/share/hypnotix/hypnotix.ui.h:12 334 | msgid "" 335 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 336 | "and update it using the button above." 337 | msgstr "" 338 | 339 | #: usr/share/hypnotix/hypnotix.ui.h:13 340 | msgid "Local version:" 341 | msgstr "" 342 | 343 | #: usr/share/hypnotix/hypnotix.ui.h:14 344 | msgid "Update from github.com/yt-dlp" 345 | msgstr "" 346 | 347 | #: usr/share/hypnotix/hypnotix.ui.h:15 348 | msgid "Restart Hypnotix for changes to take effect." 349 | msgstr "" 350 | 351 | #: usr/share/hypnotix/hypnotix.ui.h:16 352 | msgid "Use local version" 353 | msgstr "" 354 | 355 | #: usr/share/hypnotix/hypnotix.ui.h:17 356 | msgid "Youtube" 357 | msgstr "" 358 | 359 | #: usr/share/hypnotix/hypnotix.ui.h:18 360 | msgid "Add a new provider..." 361 | msgstr "አዲስ አቅራቢ መጨመሪያ..." 362 | 363 | #: usr/share/hypnotix/hypnotix.ui.h:19 364 | msgid "Reset to defaults..." 365 | msgstr "ወደ ነባር እንደ ነበር መመለሻ" 366 | 367 | #: usr/share/hypnotix/hypnotix.ui.h:20 368 | msgid "Name:" 369 | msgstr "ስም:" 370 | 371 | #: usr/share/hypnotix/hypnotix.ui.h:21 372 | msgid "URL:" 373 | msgstr "URL:" 374 | 375 | #: usr/share/hypnotix/hypnotix.ui.h:22 376 | msgid "Path:" 377 | msgstr "መንገድ:" 378 | 379 | #: usr/share/hypnotix/hypnotix.ui.h:23 380 | msgid "Cancel" 381 | msgstr "መሰረዣ" 382 | 383 | #: usr/share/hypnotix/hypnotix.ui.h:24 384 | msgid "OK" 385 | msgstr "እሺ" 386 | 387 | #: usr/share/hypnotix/hypnotix.ui.h:25 388 | msgid "Username:" 389 | msgstr "የ ተጠቃሚ ስም:" 390 | 391 | #: usr/share/hypnotix/hypnotix.ui.h:26 392 | msgid "Password:" 393 | msgstr "የ መግቢያ ቃል:" 394 | 395 | #: usr/share/hypnotix/hypnotix.ui.h:27 396 | msgid "Browse..." 397 | msgstr "መቃኛ..." 398 | 399 | #: usr/share/hypnotix/hypnotix.ui.h:28 400 | msgid "EPG:" 401 | msgstr "EPG:" 402 | 403 | #: usr/share/hypnotix/hypnotix.ui.h:29 404 | msgid "Type:" 405 | msgstr "አይነት:" 406 | 407 | #: usr/share/hypnotix/hypnotix.ui.h:30 408 | msgid "Are you sure you want to delete this provider?" 409 | msgstr "እርስዎ በ እርግጥ ይህን አቅራቢ ማጥፋት ይፈልጋሉ?" 410 | 411 | #: usr/share/hypnotix/hypnotix.ui.h:31 412 | msgid "No" 413 | msgstr "አይ" 414 | 415 | #: usr/share/hypnotix/hypnotix.ui.h:32 416 | msgid "Yes" 417 | msgstr "አዎ" 418 | 419 | #: usr/share/hypnotix/hypnotix.ui.h:33 420 | msgid "Are you sure you want to reset to the default providers?" 421 | msgstr "እርስዎ በ እርግጥ ይህን ነባር አቅራቢ እንደ ነበር መመለስ ይፈልጋሉ?" 422 | 423 | #: usr/share/hypnotix/hypnotix.ui.h:34 424 | msgid "Logo URL:" 425 | msgstr "" 426 | 427 | #: usr/share/hypnotix/hypnotix.ui.h:35 428 | msgid "This channel will be added to your favorites." 429 | msgstr "" 430 | 431 | #: usr/share/hypnotix/hypnotix.ui.h:36 432 | msgid "" 433 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 434 | msgstr "" 435 | 436 | #: usr/share/hypnotix/hypnotix.ui.h:37 437 | msgid "Currently playing:" 438 | msgstr "አሁን የሚጫወተው:" 439 | 440 | #: usr/share/hypnotix/hypnotix.ui.h:38 441 | msgid "Show" 442 | msgstr "ማሳያ" 443 | 444 | #: usr/share/hypnotix/hypnotix.ui.h:39 445 | msgid "Pause" 446 | msgstr "ማስቆሚያ" 447 | 448 | #: usr/share/hypnotix/hypnotix.ui.h:40 449 | msgid "Stop" 450 | msgstr "ማስቆሚያ" 451 | 452 | #: usr/share/hypnotix/hypnotix.ui.h:43 453 | msgid "Fullscreen" 454 | msgstr "በ ሙሉ መመልከቻ ዘዴ" 455 | 456 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 457 | msgid "Search" 458 | msgstr "መፈለጊያ" 459 | 460 | #: usr/share/hypnotix/hypnotix.ui.h:48 461 | msgid "Video" 462 | msgstr "ቪዲዮ" 463 | 464 | #: usr/share/hypnotix/hypnotix.ui.h:50 465 | msgid "Audio" 466 | msgstr "ድምፅ" 467 | 468 | #: usr/share/hypnotix/shortcuts.ui.h:1 469 | msgid "Main shortcuts" 470 | msgstr "ዋናው አቋራጭ" 471 | 472 | #: usr/share/hypnotix/shortcuts.ui.h:4 473 | msgid "Play previous/next channel" 474 | msgstr "" 475 | 476 | #: usr/share/hypnotix/shortcuts.ui.h:5 477 | msgid "Toggle Fullscreen" 478 | msgstr "በ ሙሉ መመልከቻ መቀያየሪያ" 479 | 480 | #: usr/share/hypnotix/shortcuts.ui.h:8 481 | msgid "Reload all providers" 482 | msgstr "" 483 | -------------------------------------------------------------------------------- /po/hypnotix-en_CA.po: -------------------------------------------------------------------------------- 1 | # English (Canada) translation for linuxmint 2 | # Copyright (c) 2022 Rosetta Contributors and Canonical Ltd 2022 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2022. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2022-08-02 21:40+0000\n" 12 | "Last-Translator: John Doe \n" 13 | "Language-Team: English (Canada) \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 19 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "Hypnotix" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "Keyboard Shortcuts" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "Stream Information" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "About" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "Quit" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "M3U URL" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "Local M3U File" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "Xtream API" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "Season %s" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "Episode %s" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "No provider selected" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "TV Channels" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "Movies" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "Series" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "TV Channels > %s" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "Movies > %s" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "Series > %s" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "Preferences" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "Providers" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "Edit %s" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "Add a new provider" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "Delete %s" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "Reset providers" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "General" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "Colour" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "Layout" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "Average Bitrate" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "Dimensions" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "Aspect" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "Pixel Format" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "Gamma" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "Bits Per Pixel" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "Codec" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "surround sound" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "Channels" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "Sample Rate" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "Format" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "Channel Count" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "%d TV channel" 239 | msgstr[1] "%d TV channels" 240 | 241 | #: usr/lib/hypnotix/hypnotix.py:1127 242 | #, python-format 243 | msgid "%d movie" 244 | msgid_plural "%d movies" 245 | msgstr[0] "%d movie" 246 | msgstr[1] "%d movies" 247 | 248 | #: usr/lib/hypnotix/hypnotix.py:1132 249 | #, python-format 250 | msgid "%d series" 251 | msgid_plural "%d series" 252 | msgstr[0] "%d series" 253 | msgstr[1] "%d series" 254 | 255 | #: usr/lib/hypnotix/hypnotix.py:1152 256 | msgid "Edit" 257 | msgstr "Edit" 258 | 259 | #: usr/lib/hypnotix/hypnotix.py:1162 260 | msgid "Clear icon cache" 261 | msgstr "" 262 | 263 | #: usr/lib/hypnotix/hypnotix.py:1172 264 | msgid "Remove" 265 | msgstr "Remove" 266 | 267 | #: usr/lib/hypnotix/hypnotix.py:1279 268 | msgid "M3U Playlists" 269 | msgstr "M3U Playlists" 270 | 271 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 272 | #: usr/share/hypnotix/hypnotix.ui.h:42 273 | msgid "Watch TV" 274 | msgstr "Watch TV" 275 | 276 | #: usr/lib/hypnotix/hypnotix.py:1545 277 | msgid "Loading providers..." 278 | msgstr "" 279 | 280 | #: usr/lib/hypnotix/hypnotix.py:1558 281 | msgid "Downloading playlist..." 282 | msgstr "" 283 | 284 | #: usr/lib/hypnotix/hypnotix.py:1560 285 | msgid "Getting playlist..." 286 | msgstr "" 287 | 288 | #: usr/lib/hypnotix/hypnotix.py:1563 289 | msgid "Checking playlist..." 290 | msgstr "" 291 | 292 | #: usr/lib/hypnotix/hypnotix.py:1565 293 | msgid "Loading channels..." 294 | msgstr "" 295 | 296 | #: usr/lib/hypnotix/hypnotix.py:1573 297 | #, python-format 298 | msgid "Failed to download playlist from %s" 299 | msgstr "" 300 | 301 | #: usr/share/hypnotix/hypnotix.ui.h:1 302 | msgid "Create a new channel" 303 | msgstr "" 304 | 305 | #: usr/share/hypnotix/hypnotix.ui.h:5 306 | msgid "MPV Options" 307 | msgstr "MPV Options" 308 | 309 | #: usr/share/hypnotix/hypnotix.ui.h:6 310 | msgid "List of MPV options" 311 | msgstr "List of MPV options" 312 | 313 | #: usr/share/hypnotix/hypnotix.ui.h:7 314 | msgid "Playback" 315 | msgstr "Playback" 316 | 317 | #: usr/share/hypnotix/hypnotix.ui.h:8 318 | msgid "User Agent" 319 | msgstr "User Agent" 320 | 321 | #: usr/share/hypnotix/hypnotix.ui.h:9 322 | msgid "Referrer" 323 | msgstr "Referrer" 324 | 325 | #: usr/share/hypnotix/hypnotix.ui.h:10 326 | msgid "Network" 327 | msgstr "Network" 328 | 329 | #: usr/share/hypnotix/hypnotix.ui.h:11 330 | msgid "System version:" 331 | msgstr "" 332 | 333 | #: usr/share/hypnotix/hypnotix.ui.h:12 334 | msgid "" 335 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 336 | "and update it using the button above." 337 | msgstr "" 338 | 339 | #: usr/share/hypnotix/hypnotix.ui.h:13 340 | msgid "Local version:" 341 | msgstr "" 342 | 343 | #: usr/share/hypnotix/hypnotix.ui.h:14 344 | msgid "Update from github.com/yt-dlp" 345 | msgstr "" 346 | 347 | #: usr/share/hypnotix/hypnotix.ui.h:15 348 | msgid "Restart Hypnotix for changes to take effect." 349 | msgstr "" 350 | 351 | #: usr/share/hypnotix/hypnotix.ui.h:16 352 | msgid "Use local version" 353 | msgstr "" 354 | 355 | #: usr/share/hypnotix/hypnotix.ui.h:17 356 | msgid "Youtube" 357 | msgstr "" 358 | 359 | #: usr/share/hypnotix/hypnotix.ui.h:18 360 | msgid "Add a new provider..." 361 | msgstr "Add a new provider..." 362 | 363 | #: usr/share/hypnotix/hypnotix.ui.h:19 364 | msgid "Reset to defaults..." 365 | msgstr "Reset to defaults..." 366 | 367 | #: usr/share/hypnotix/hypnotix.ui.h:20 368 | msgid "Name:" 369 | msgstr "Name:" 370 | 371 | #: usr/share/hypnotix/hypnotix.ui.h:21 372 | msgid "URL:" 373 | msgstr "URL:" 374 | 375 | #: usr/share/hypnotix/hypnotix.ui.h:22 376 | msgid "Path:" 377 | msgstr "Path:" 378 | 379 | #: usr/share/hypnotix/hypnotix.ui.h:23 380 | msgid "Cancel" 381 | msgstr "Cancel" 382 | 383 | #: usr/share/hypnotix/hypnotix.ui.h:24 384 | msgid "OK" 385 | msgstr "OK" 386 | 387 | #: usr/share/hypnotix/hypnotix.ui.h:25 388 | msgid "Username:" 389 | msgstr "Username:" 390 | 391 | #: usr/share/hypnotix/hypnotix.ui.h:26 392 | msgid "Password:" 393 | msgstr "Password:" 394 | 395 | #: usr/share/hypnotix/hypnotix.ui.h:27 396 | msgid "Browse..." 397 | msgstr "Browse..." 398 | 399 | #: usr/share/hypnotix/hypnotix.ui.h:28 400 | msgid "EPG:" 401 | msgstr "EPG:" 402 | 403 | #: usr/share/hypnotix/hypnotix.ui.h:29 404 | msgid "Type:" 405 | msgstr "Type:" 406 | 407 | #: usr/share/hypnotix/hypnotix.ui.h:30 408 | msgid "Are you sure you want to delete this provider?" 409 | msgstr "Are you sure you want to delete this provider?" 410 | 411 | #: usr/share/hypnotix/hypnotix.ui.h:31 412 | msgid "No" 413 | msgstr "No" 414 | 415 | #: usr/share/hypnotix/hypnotix.ui.h:32 416 | msgid "Yes" 417 | msgstr "Yes" 418 | 419 | #: usr/share/hypnotix/hypnotix.ui.h:33 420 | msgid "Are you sure you want to reset to the default providers?" 421 | msgstr "Are you sure you want to reset to the default providers?" 422 | 423 | #: usr/share/hypnotix/hypnotix.ui.h:34 424 | msgid "Logo URL:" 425 | msgstr "" 426 | 427 | #: usr/share/hypnotix/hypnotix.ui.h:35 428 | msgid "This channel will be added to your favorites." 429 | msgstr "" 430 | 431 | #: usr/share/hypnotix/hypnotix.ui.h:36 432 | msgid "" 433 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 434 | msgstr "" 435 | 436 | #: usr/share/hypnotix/hypnotix.ui.h:37 437 | msgid "Currently playing:" 438 | msgstr "Currently playing:" 439 | 440 | #: usr/share/hypnotix/hypnotix.ui.h:38 441 | msgid "Show" 442 | msgstr "Show" 443 | 444 | #: usr/share/hypnotix/hypnotix.ui.h:39 445 | msgid "Pause" 446 | msgstr "Pause" 447 | 448 | #: usr/share/hypnotix/hypnotix.ui.h:40 449 | msgid "Stop" 450 | msgstr "Stop" 451 | 452 | #: usr/share/hypnotix/hypnotix.ui.h:43 453 | msgid "Fullscreen" 454 | msgstr "Fullscreen" 455 | 456 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 457 | msgid "Search" 458 | msgstr "Search" 459 | 460 | #: usr/share/hypnotix/hypnotix.ui.h:48 461 | msgid "Video" 462 | msgstr "Video" 463 | 464 | #: usr/share/hypnotix/hypnotix.ui.h:50 465 | msgid "Audio" 466 | msgstr "Audio" 467 | 468 | #: usr/share/hypnotix/shortcuts.ui.h:1 469 | msgid "Main shortcuts" 470 | msgstr "Main shortcuts" 471 | 472 | #: usr/share/hypnotix/shortcuts.ui.h:4 473 | msgid "Play previous/next channel" 474 | msgstr "" 475 | 476 | #: usr/share/hypnotix/shortcuts.ui.h:5 477 | msgid "Toggle Fullscreen" 478 | msgstr "Toggle Fullscreen" 479 | 480 | #: usr/share/hypnotix/shortcuts.ui.h:8 481 | msgid "Reload all providers" 482 | msgstr "Reload all providers" 483 | -------------------------------------------------------------------------------- /po/hypnotix-kn.po: -------------------------------------------------------------------------------- 1 | # Kannada translation for linuxmint 2 | # Copyright (c) 2020 Rosetta Contributors and Canonical Ltd 2020 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2020. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2020-12-02 14:13+0000\n" 12 | "Last-Translator: Abilash \n" 13 | "Language-Team: Kannada \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 19 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "ಕೀಲಿಮಣೆ ಶಾರ್ಟ್‌ಕಟ್‌ಗಳು" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "ನಿರ್ಗಮಿಸು" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "ಸಂಚಿಕೆ %s" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "ಯಾವುದೇ ಪೂರೈಕೆದಾರರನ್ನು ಆಯ್ಕೆ ಮಾಡಿಲ್ಲ" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "ಟಿವಿ ವಾಹಿನಿಗಳು" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "ಚಲನಚಿತ್ರಗಳು" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "ಟಿವಿ ವಾಹಿನಿಗಳು > %s" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "ಚಲನಚಿತ್ರಗಳು > %s" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "ಆದ್ಯತೆಗಳು" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "ಪೂರೈಕೆದಾರರು" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "%s ಅನ್ನು ಸಂಪಾದಿಸು" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "ಹೊಸ ಪೂರೈಕೆದಾರರನ್ನು ಸೇರಿಸಿ" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "ತೆಗೆದು ಹಾಕು %s" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "ಪೂರೈಕೆದಾರರನ್ನು ಮರುಹೊಂದಿಸು" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "%d ಟಿವಿ ವಾಹಿನಿ" 239 | msgstr[1] "%d ಟಿವಿ ವಾಹಿನಿಗಳು" 240 | 241 | #: usr/lib/hypnotix/hypnotix.py:1127 242 | #, python-format 243 | msgid "%d movie" 244 | msgid_plural "%d movies" 245 | msgstr[0] "%d ಚಲನಚಿತ್ರ" 246 | msgstr[1] "%d ಚಲನಚಿತ್ರಗಳು" 247 | 248 | #: usr/lib/hypnotix/hypnotix.py:1132 249 | #, python-format 250 | msgid "%d series" 251 | msgid_plural "%d series" 252 | msgstr[0] "" 253 | msgstr[1] "" 254 | 255 | #: usr/lib/hypnotix/hypnotix.py:1152 256 | msgid "Edit" 257 | msgstr "ಸಂಪಾದಿಸು" 258 | 259 | #: usr/lib/hypnotix/hypnotix.py:1162 260 | msgid "Clear icon cache" 261 | msgstr "" 262 | 263 | #: usr/lib/hypnotix/hypnotix.py:1172 264 | msgid "Remove" 265 | msgstr "ತೆಗೆ" 266 | 267 | #: usr/lib/hypnotix/hypnotix.py:1279 268 | msgid "M3U Playlists" 269 | msgstr "" 270 | 271 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 272 | #: usr/share/hypnotix/hypnotix.ui.h:42 273 | msgid "Watch TV" 274 | msgstr "ಟಿವಿ ವೀಕ್ಷಿಸು" 275 | 276 | #: usr/lib/hypnotix/hypnotix.py:1545 277 | msgid "Loading providers..." 278 | msgstr "" 279 | 280 | #: usr/lib/hypnotix/hypnotix.py:1558 281 | msgid "Downloading playlist..." 282 | msgstr "" 283 | 284 | #: usr/lib/hypnotix/hypnotix.py:1560 285 | msgid "Getting playlist..." 286 | msgstr "" 287 | 288 | #: usr/lib/hypnotix/hypnotix.py:1563 289 | msgid "Checking playlist..." 290 | msgstr "" 291 | 292 | #: usr/lib/hypnotix/hypnotix.py:1565 293 | msgid "Loading channels..." 294 | msgstr "" 295 | 296 | #: usr/lib/hypnotix/hypnotix.py:1573 297 | #, python-format 298 | msgid "Failed to download playlist from %s" 299 | msgstr "" 300 | 301 | #: usr/share/hypnotix/hypnotix.ui.h:1 302 | msgid "Create a new channel" 303 | msgstr "" 304 | 305 | #: usr/share/hypnotix/hypnotix.ui.h:5 306 | msgid "MPV Options" 307 | msgstr "" 308 | 309 | #: usr/share/hypnotix/hypnotix.ui.h:6 310 | msgid "List of MPV options" 311 | msgstr "" 312 | 313 | #: usr/share/hypnotix/hypnotix.ui.h:7 314 | msgid "Playback" 315 | msgstr "" 316 | 317 | #: usr/share/hypnotix/hypnotix.ui.h:8 318 | msgid "User Agent" 319 | msgstr "" 320 | 321 | #: usr/share/hypnotix/hypnotix.ui.h:9 322 | msgid "Referrer" 323 | msgstr "" 324 | 325 | #: usr/share/hypnotix/hypnotix.ui.h:10 326 | msgid "Network" 327 | msgstr "" 328 | 329 | #: usr/share/hypnotix/hypnotix.ui.h:11 330 | msgid "System version:" 331 | msgstr "" 332 | 333 | #: usr/share/hypnotix/hypnotix.ui.h:12 334 | msgid "" 335 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 336 | "and update it using the button above." 337 | msgstr "" 338 | 339 | #: usr/share/hypnotix/hypnotix.ui.h:13 340 | msgid "Local version:" 341 | msgstr "" 342 | 343 | #: usr/share/hypnotix/hypnotix.ui.h:14 344 | msgid "Update from github.com/yt-dlp" 345 | msgstr "" 346 | 347 | #: usr/share/hypnotix/hypnotix.ui.h:15 348 | msgid "Restart Hypnotix for changes to take effect." 349 | msgstr "" 350 | 351 | #: usr/share/hypnotix/hypnotix.ui.h:16 352 | msgid "Use local version" 353 | msgstr "" 354 | 355 | #: usr/share/hypnotix/hypnotix.ui.h:17 356 | msgid "Youtube" 357 | msgstr "" 358 | 359 | #: usr/share/hypnotix/hypnotix.ui.h:18 360 | msgid "Add a new provider..." 361 | msgstr "ಹೊಸ ಪೂರೈಕೆದಾರರನ್ನು ಸೇರಿಸಿ" 362 | 363 | #: usr/share/hypnotix/hypnotix.ui.h:19 364 | msgid "Reset to defaults..." 365 | msgstr "ಡೀಫಾಲ್ಟ್ಗೆ ಮರುಹೊಂದಿಸಿ" 366 | 367 | #: usr/share/hypnotix/hypnotix.ui.h:20 368 | msgid "Name:" 369 | msgstr "ಹೆಸರು:" 370 | 371 | #: usr/share/hypnotix/hypnotix.ui.h:21 372 | msgid "URL:" 373 | msgstr "ಜಾಲವಿಳಾಸ:" 374 | 375 | #: usr/share/hypnotix/hypnotix.ui.h:22 376 | msgid "Path:" 377 | msgstr "ಮಾರ್ಗ:" 378 | 379 | #: usr/share/hypnotix/hypnotix.ui.h:23 380 | msgid "Cancel" 381 | msgstr "ರದ್ದುಗೊಳಿಸು" 382 | 383 | #: usr/share/hypnotix/hypnotix.ui.h:24 384 | msgid "OK" 385 | msgstr "ಸರಿ" 386 | 387 | #: usr/share/hypnotix/hypnotix.ui.h:25 388 | msgid "Username:" 389 | msgstr "ಬಳಕೆದಾರಹೆಸರು:" 390 | 391 | #: usr/share/hypnotix/hypnotix.ui.h:26 392 | msgid "Password:" 393 | msgstr "ಗುಪ್ತಪದ:" 394 | 395 | #: usr/share/hypnotix/hypnotix.ui.h:27 396 | msgid "Browse..." 397 | msgstr "ಬ್ರೌಸ್..." 398 | 399 | #: usr/share/hypnotix/hypnotix.ui.h:28 400 | msgid "EPG:" 401 | msgstr "" 402 | 403 | #: usr/share/hypnotix/hypnotix.ui.h:29 404 | msgid "Type:" 405 | msgstr "ಬಗೆ:" 406 | 407 | #: usr/share/hypnotix/hypnotix.ui.h:30 408 | msgid "Are you sure you want to delete this provider?" 409 | msgstr "ಈ ಪೂರೈಕೆದಾರರನ್ನು ಅಳಿಸಲು ನೀವು ಖಚಿತವಾಗಿ ಬಯಸುವಿರಾ?" 410 | 411 | #: usr/share/hypnotix/hypnotix.ui.h:31 412 | msgid "No" 413 | msgstr "ಇಲ್ಲ" 414 | 415 | #: usr/share/hypnotix/hypnotix.ui.h:32 416 | msgid "Yes" 417 | msgstr "ಹೌದು" 418 | 419 | #: usr/share/hypnotix/hypnotix.ui.h:33 420 | msgid "Are you sure you want to reset to the default providers?" 421 | msgstr "ಪೂರ್ವನಿಯೋಜಿತ ಪೂರೈಕೆದಾರರಿಗೆ ಮರುಹೊಂದಿಸಲು ನೀವು ಖಚಿತವಾಗಿ ಬಯಸುವಿರಾ?" 422 | 423 | #: usr/share/hypnotix/hypnotix.ui.h:34 424 | msgid "Logo URL:" 425 | msgstr "" 426 | 427 | #: usr/share/hypnotix/hypnotix.ui.h:35 428 | msgid "This channel will be added to your favorites." 429 | msgstr "" 430 | 431 | #: usr/share/hypnotix/hypnotix.ui.h:36 432 | msgid "" 433 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 434 | msgstr "" 435 | 436 | #: usr/share/hypnotix/hypnotix.ui.h:37 437 | msgid "Currently playing:" 438 | msgstr "" 439 | 440 | #: usr/share/hypnotix/hypnotix.ui.h:38 441 | msgid "Show" 442 | msgstr "ಪ್ರದರ್ಶಿಸಿ" 443 | 444 | #: usr/share/hypnotix/hypnotix.ui.h:39 445 | msgid "Pause" 446 | msgstr "" 447 | 448 | #: usr/share/hypnotix/hypnotix.ui.h:40 449 | msgid "Stop" 450 | msgstr "ನಿಲ್ಲಿಸು" 451 | 452 | #: usr/share/hypnotix/hypnotix.ui.h:43 453 | msgid "Fullscreen" 454 | msgstr "ಪೂರ್ಣತೆರೆ" 455 | 456 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 457 | msgid "Search" 458 | msgstr "" 459 | 460 | #: usr/share/hypnotix/hypnotix.ui.h:48 461 | msgid "Video" 462 | msgstr "" 463 | 464 | #: usr/share/hypnotix/hypnotix.ui.h:50 465 | msgid "Audio" 466 | msgstr "" 467 | 468 | #: usr/share/hypnotix/shortcuts.ui.h:1 469 | msgid "Main shortcuts" 470 | msgstr "" 471 | 472 | #: usr/share/hypnotix/shortcuts.ui.h:4 473 | msgid "Play previous/next channel" 474 | msgstr "" 475 | 476 | #: usr/share/hypnotix/shortcuts.ui.h:5 477 | msgid "Toggle Fullscreen" 478 | msgstr "ಪೂರ್ಣತೆರೆಗೆ ಟಾಗಲ್‌ ಮಾಡು" 479 | 480 | #: usr/share/hypnotix/shortcuts.ui.h:8 481 | msgid "Reload all providers" 482 | msgstr "" 483 | -------------------------------------------------------------------------------- /po/hypnotix-ko.po: -------------------------------------------------------------------------------- 1 | # Korean translation for linuxmint 2 | # Copyright (c) 2020 Rosetta Contributors and Canonical Ltd 2020 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2020. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2023-11-29 14:10+0000\n" 12 | "Last-Translator: Jung-Kyu Park \n" 13 | "Language-Team: Korean \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=1; plural=0;\n" 18 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 19 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "힙노틱스" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "키보드 단축키" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "스트림 정보" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "정보" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "닫기" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "M3U URL" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "로컬 M3U 파일" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "Xtream API" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "시즌 %s" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "에피소드 %s" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "채널이 없습니다" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "서비스 업체를 선택하세요" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "TV 채널 (%d개 )" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "영화 (%d개 )" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "시리즈 (%d개 )" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "TV 채널" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "영화" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "시리즈" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "즐겨찾기" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "TV 채널 > %s" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "영화 > %s" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "시리즈 > %s" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "새 채널" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "환경설정" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "서비스 업체" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "%s 편집" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "새로운 서비스 업체를 추가합니다" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "삭제 %s" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "서비스 업체 리셋" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "등급" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "색상" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "레이아웃" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "즐겨찾기에서 제거" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "즐겨찾기에 추가" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "평균 비트레이트" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "크기" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "비율" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "픽셀 형식" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "감마" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "픽셀당 비트 수" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "코덱" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "서라운드 사운드" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "채널" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "샘플 레이트" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "포맷" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "채널 수" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "%d개 TV 채널" 239 | 240 | #: usr/lib/hypnotix/hypnotix.py:1127 241 | #, python-format 242 | msgid "%d movie" 243 | msgid_plural "%d movies" 244 | msgstr[0] "%d개 영화" 245 | 246 | #: usr/lib/hypnotix/hypnotix.py:1132 247 | #, python-format 248 | msgid "%d series" 249 | msgid_plural "%d series" 250 | msgstr[0] "%d개 시리즈" 251 | 252 | #: usr/lib/hypnotix/hypnotix.py:1152 253 | msgid "Edit" 254 | msgstr "편집" 255 | 256 | #: usr/lib/hypnotix/hypnotix.py:1162 257 | msgid "Clear icon cache" 258 | msgstr "아이콘 캐시 정리" 259 | 260 | #: usr/lib/hypnotix/hypnotix.py:1172 261 | msgid "Remove" 262 | msgstr "제거" 263 | 264 | #: usr/lib/hypnotix/hypnotix.py:1279 265 | msgid "M3U Playlists" 266 | msgstr "M3U 재생 목록" 267 | 268 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 269 | #: usr/share/hypnotix/hypnotix.ui.h:42 270 | msgid "Watch TV" 271 | msgstr "TV 보기" 272 | 273 | #: usr/lib/hypnotix/hypnotix.py:1545 274 | msgid "Loading providers..." 275 | msgstr "공급자 불러오는 중..." 276 | 277 | #: usr/lib/hypnotix/hypnotix.py:1558 278 | msgid "Downloading playlist..." 279 | msgstr "플레이리스트 다운로드 중..." 280 | 281 | #: usr/lib/hypnotix/hypnotix.py:1560 282 | msgid "Getting playlist..." 283 | msgstr "플레이리스트 가져오는 중..." 284 | 285 | #: usr/lib/hypnotix/hypnotix.py:1563 286 | msgid "Checking playlist..." 287 | msgstr "플레이리스트 확인 중..." 288 | 289 | #: usr/lib/hypnotix/hypnotix.py:1565 290 | msgid "Loading channels..." 291 | msgstr "채널 불러오는 중..." 292 | 293 | #: usr/lib/hypnotix/hypnotix.py:1573 294 | #, python-format 295 | msgid "Failed to download playlist from %s" 296 | msgstr "%s에서 플레이리스트 다운로드 실패" 297 | 298 | #: usr/share/hypnotix/hypnotix.ui.h:1 299 | msgid "Create a new channel" 300 | msgstr "새 채널 만들기" 301 | 302 | #: usr/share/hypnotix/hypnotix.ui.h:5 303 | msgid "MPV Options" 304 | msgstr "MPV 옵션" 305 | 306 | #: usr/share/hypnotix/hypnotix.ui.h:6 307 | msgid "List of MPV options" 308 | msgstr "MPV 옵션 목록" 309 | 310 | #: usr/share/hypnotix/hypnotix.ui.h:7 311 | msgid "Playback" 312 | msgstr "재생" 313 | 314 | #: usr/share/hypnotix/hypnotix.ui.h:8 315 | msgid "User Agent" 316 | msgstr "사용자 에이전트" 317 | 318 | #: usr/share/hypnotix/hypnotix.ui.h:9 319 | msgid "Referrer" 320 | msgstr "참조자" 321 | 322 | #: usr/share/hypnotix/hypnotix.ui.h:10 323 | msgid "Network" 324 | msgstr "네트워크" 325 | 326 | #: usr/share/hypnotix/hypnotix.ui.h:11 327 | msgid "System version:" 328 | msgstr "시스템 버전:" 329 | 330 | #: usr/share/hypnotix/hypnotix.ui.h:12 331 | msgid "" 332 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 333 | "and update it using the button above." 334 | msgstr "Youtube 채널이 작동하지 않으면 yt-dlp의 로컬 버전으로 전환하고 위 버튼을 사용하여 업데이트할 수 있습니다." 335 | 336 | #: usr/share/hypnotix/hypnotix.ui.h:13 337 | msgid "Local version:" 338 | msgstr "로컬 버전:" 339 | 340 | #: usr/share/hypnotix/hypnotix.ui.h:14 341 | msgid "Update from github.com/yt-dlp" 342 | msgstr "github.com/yt-dlp에서 업데이트하기" 343 | 344 | #: usr/share/hypnotix/hypnotix.ui.h:15 345 | msgid "Restart Hypnotix for changes to take effect." 346 | msgstr "바꾼 설정을 적용하시려면 힙노틱스를 다시 시작하세요." 347 | 348 | #: usr/share/hypnotix/hypnotix.ui.h:16 349 | msgid "Use local version" 350 | msgstr "로컬 버전 사용하기" 351 | 352 | #: usr/share/hypnotix/hypnotix.ui.h:17 353 | msgid "Youtube" 354 | msgstr "Youtube" 355 | 356 | #: usr/share/hypnotix/hypnotix.ui.h:18 357 | msgid "Add a new provider..." 358 | msgstr "새로운 서비스 업체 추가하기..." 359 | 360 | #: usr/share/hypnotix/hypnotix.ui.h:19 361 | msgid "Reset to defaults..." 362 | msgstr "기본값으로 리셋하기..." 363 | 364 | #: usr/share/hypnotix/hypnotix.ui.h:20 365 | msgid "Name:" 366 | msgstr "이름:" 367 | 368 | #: usr/share/hypnotix/hypnotix.ui.h:21 369 | msgid "URL:" 370 | msgstr "URL:" 371 | 372 | #: usr/share/hypnotix/hypnotix.ui.h:22 373 | msgid "Path:" 374 | msgstr "경로:" 375 | 376 | #: usr/share/hypnotix/hypnotix.ui.h:23 377 | msgid "Cancel" 378 | msgstr "취소" 379 | 380 | #: usr/share/hypnotix/hypnotix.ui.h:24 381 | msgid "OK" 382 | msgstr "예" 383 | 384 | #: usr/share/hypnotix/hypnotix.ui.h:25 385 | msgid "Username:" 386 | msgstr "사용자 이름:" 387 | 388 | #: usr/share/hypnotix/hypnotix.ui.h:26 389 | msgid "Password:" 390 | msgstr "비밀번호:" 391 | 392 | #: usr/share/hypnotix/hypnotix.ui.h:27 393 | msgid "Browse..." 394 | msgstr "탐색..." 395 | 396 | #: usr/share/hypnotix/hypnotix.ui.h:28 397 | msgid "EPG:" 398 | msgstr "EPG:" 399 | 400 | #: usr/share/hypnotix/hypnotix.ui.h:29 401 | msgid "Type:" 402 | msgstr "종류:" 403 | 404 | #: usr/share/hypnotix/hypnotix.ui.h:30 405 | msgid "Are you sure you want to delete this provider?" 406 | msgstr "이 서비스 업체를 지우시겠습니까?" 407 | 408 | #: usr/share/hypnotix/hypnotix.ui.h:31 409 | msgid "No" 410 | msgstr "아니요" 411 | 412 | #: usr/share/hypnotix/hypnotix.ui.h:32 413 | msgid "Yes" 414 | msgstr "예" 415 | 416 | #: usr/share/hypnotix/hypnotix.ui.h:33 417 | msgid "Are you sure you want to reset to the default providers?" 418 | msgstr "기본 서비스 업체로 리셋하시겠습니까?" 419 | 420 | #: usr/share/hypnotix/hypnotix.ui.h:34 421 | msgid "Logo URL:" 422 | msgstr "로고 URL:" 423 | 424 | #: usr/share/hypnotix/hypnotix.ui.h:35 425 | msgid "This channel will be added to your favorites." 426 | msgstr "이 채널이 즐겨찾기에 추가됩니다." 427 | 428 | #: usr/share/hypnotix/hypnotix.ui.h:36 429 | msgid "" 430 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 431 | msgstr "참고: 로고가 로컬 파일인 경우 imgur.com에 업로드해서 URL을 받으세요." 432 | 433 | #: usr/share/hypnotix/hypnotix.ui.h:37 434 | msgid "Currently playing:" 435 | msgstr "현재 재생 중:" 436 | 437 | #: usr/share/hypnotix/hypnotix.ui.h:38 438 | msgid "Show" 439 | msgstr "보이기" 440 | 441 | #: usr/share/hypnotix/hypnotix.ui.h:39 442 | msgid "Pause" 443 | msgstr "일시 중지" 444 | 445 | #: usr/share/hypnotix/hypnotix.ui.h:40 446 | msgid "Stop" 447 | msgstr "중지" 448 | 449 | #: usr/share/hypnotix/hypnotix.ui.h:43 450 | msgid "Fullscreen" 451 | msgstr "전체 화면" 452 | 453 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 454 | msgid "Search" 455 | msgstr "검색" 456 | 457 | #: usr/share/hypnotix/hypnotix.ui.h:48 458 | msgid "Video" 459 | msgstr "비디오" 460 | 461 | #: usr/share/hypnotix/hypnotix.ui.h:50 462 | msgid "Audio" 463 | msgstr "오디오" 464 | 465 | #: usr/share/hypnotix/shortcuts.ui.h:1 466 | msgid "Main shortcuts" 467 | msgstr "주요 단축키" 468 | 469 | #: usr/share/hypnotix/shortcuts.ui.h:4 470 | msgid "Play previous/next channel" 471 | msgstr "이전/다음 채널 플레이" 472 | 473 | #: usr/share/hypnotix/shortcuts.ui.h:5 474 | msgid "Toggle Fullscreen" 475 | msgstr "전체 화면 토글" 476 | 477 | #: usr/share/hypnotix/shortcuts.ui.h:8 478 | msgid "Reload all providers" 479 | msgstr "모두 다시 불러오기" 480 | -------------------------------------------------------------------------------- /po/hypnotix-rue.po: -------------------------------------------------------------------------------- 1 | # Rusyn translation for linuxmint 2 | # Copyright (c) 2023 Rosetta Contributors and Canonical Ltd 2023 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2023. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2023-07-01 17:17+0000\n" 12 | "Last-Translator: Vondrosh tvmc \n" 13 | "Language-Team: Rusyn \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " 18 | "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" 19 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 20 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 21 | 22 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 23 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 24 | #: usr/share/hypnotix/hypnotix.ui.h:41 25 | msgid "Hypnotix" 26 | msgstr "Hypnotix" 27 | 28 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 29 | msgid "Keyboard Shortcuts" 30 | msgstr "Комбінації клопок" 31 | 32 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 33 | #: usr/share/hypnotix/shortcuts.ui.h:3 34 | msgid "Stream Information" 35 | msgstr "Інформація за потук" 36 | 37 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 38 | #: usr/share/hypnotix/shortcuts.ui.h:2 39 | msgid "About" 40 | msgstr "За" 41 | 42 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 43 | msgid "Quit" 44 | msgstr "Лишити" 45 | 46 | #: usr/lib/hypnotix/hypnotix.py:397 47 | msgid "M3U URL" 48 | msgstr "M3U URL" 49 | 50 | #: usr/lib/hypnotix/hypnotix.py:398 51 | msgid "Local M3U File" 52 | msgstr "Локалный файл M3U" 53 | 54 | #: usr/lib/hypnotix/hypnotix.py:399 55 | msgid "Xtream API" 56 | msgstr "Xtream API" 57 | 58 | #: usr/lib/hypnotix/hypnotix.py:611 59 | #, python-format 60 | msgid "Season %s" 61 | msgstr "Сезон %s" 62 | 63 | #: usr/lib/hypnotix/hypnotix.py:622 64 | #, python-format 65 | msgid "Episode %s" 66 | msgstr "Серія %s" 67 | 68 | #: usr/lib/hypnotix/hypnotix.py:748 69 | msgid "No channels found" 70 | msgstr "" 71 | 72 | #: usr/lib/hypnotix/hypnotix.py:774 73 | msgid "No provider selected" 74 | msgstr "" 75 | 76 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 77 | #, python-format 78 | msgid "TV Channels (%d)" 79 | msgstr "" 80 | 81 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 82 | #, python-format 83 | msgid "Movies (%d)" 84 | msgstr "" 85 | 86 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 87 | #, python-format 88 | msgid "Series (%d)" 89 | msgstr "" 90 | 91 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 92 | msgid "TV Channels" 93 | msgstr "" 94 | 95 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 96 | msgid "Movies" 97 | msgstr "" 98 | 99 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 100 | msgid "Series" 101 | msgstr "" 102 | 103 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 104 | msgid "Favorites" 105 | msgstr "" 106 | 107 | #: usr/lib/hypnotix/hypnotix.py:811 108 | #, python-format 109 | msgid "TV Channels > %s" 110 | msgstr "" 111 | 112 | #: usr/lib/hypnotix/hypnotix.py:825 113 | #, python-format 114 | msgid "Movies > %s" 115 | msgstr "" 116 | 117 | #: usr/lib/hypnotix/hypnotix.py:831 118 | #, python-format 119 | msgid "Series > %s" 120 | msgstr "" 121 | 122 | #: usr/lib/hypnotix/hypnotix.py:838 123 | msgid "New Channel" 124 | msgstr "" 125 | 126 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 127 | msgid "Preferences" 128 | msgstr "" 129 | 130 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 131 | msgid "Providers" 132 | msgstr "" 133 | 134 | #: usr/lib/hypnotix/hypnotix.py:849 135 | #, python-format 136 | msgid "Edit %s" 137 | msgstr "" 138 | 139 | #: usr/lib/hypnotix/hypnotix.py:851 140 | msgid "Add a new provider" 141 | msgstr "" 142 | 143 | #: usr/lib/hypnotix/hypnotix.py:855 144 | #, python-format 145 | msgid "Delete %s" 146 | msgstr "" 147 | 148 | #: usr/lib/hypnotix/hypnotix.py:859 149 | msgid "Reset providers" 150 | msgstr "" 151 | 152 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 153 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 154 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 155 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 156 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 157 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 158 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 159 | #: usr/share/hypnotix/hypnotix.ui.h:45 160 | msgid "General" 161 | msgstr "" 162 | 163 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 164 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 165 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 166 | msgid "Color" 167 | msgstr "" 168 | 169 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 170 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 171 | #: usr/share/hypnotix/hypnotix.ui.h:49 172 | msgid "Layout" 173 | msgstr "" 174 | 175 | #: usr/lib/hypnotix/hypnotix.py:933 176 | msgid "Remove from favorites" 177 | msgstr "" 178 | 179 | #: usr/lib/hypnotix/hypnotix.py:936 180 | msgid "Add to favorites" 181 | msgstr "" 182 | 183 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 184 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 185 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 186 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 187 | #: usr/share/hypnotix/hypnotix.ui.h:46 188 | msgid "Average Bitrate" 189 | msgstr "" 190 | 191 | #: usr/lib/hypnotix/hypnotix.py:993 192 | msgid "Dimensions" 193 | msgstr "" 194 | 195 | #: usr/lib/hypnotix/hypnotix.py:996 196 | msgid "Aspect" 197 | msgstr "" 198 | 199 | #: usr/lib/hypnotix/hypnotix.py:998 200 | msgid "Pixel Format" 201 | msgstr "" 202 | 203 | #: usr/lib/hypnotix/hypnotix.py:1000 204 | msgid "Gamma" 205 | msgstr "" 206 | 207 | #: usr/lib/hypnotix/hypnotix.py:1002 208 | msgid "Bits Per Pixel" 209 | msgstr "" 210 | 211 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 212 | msgid "Codec" 213 | msgstr "" 214 | 215 | #: usr/lib/hypnotix/hypnotix.py:1017 216 | msgid "surround sound" 217 | msgstr "" 218 | 219 | #: usr/lib/hypnotix/hypnotix.py:1018 220 | msgid "Channels" 221 | msgstr "" 222 | 223 | #: usr/lib/hypnotix/hypnotix.py:1021 224 | msgid "Sample Rate" 225 | msgstr "" 226 | 227 | #: usr/lib/hypnotix/hypnotix.py:1026 228 | msgid "Format" 229 | msgstr "" 230 | 231 | #: usr/lib/hypnotix/hypnotix.py:1028 232 | msgid "Channel Count" 233 | msgstr "" 234 | 235 | #: usr/lib/hypnotix/hypnotix.py:1122 236 | #, python-format 237 | msgid "%d TV channel" 238 | msgid_plural "%d TV channels" 239 | msgstr[0] "" 240 | msgstr[1] "" 241 | 242 | #: usr/lib/hypnotix/hypnotix.py:1127 243 | #, python-format 244 | msgid "%d movie" 245 | msgid_plural "%d movies" 246 | msgstr[0] "" 247 | msgstr[1] "" 248 | 249 | #: usr/lib/hypnotix/hypnotix.py:1132 250 | #, python-format 251 | msgid "%d series" 252 | msgid_plural "%d series" 253 | msgstr[0] "" 254 | msgstr[1] "" 255 | 256 | #: usr/lib/hypnotix/hypnotix.py:1152 257 | msgid "Edit" 258 | msgstr "" 259 | 260 | #: usr/lib/hypnotix/hypnotix.py:1162 261 | msgid "Clear icon cache" 262 | msgstr "" 263 | 264 | #: usr/lib/hypnotix/hypnotix.py:1172 265 | msgid "Remove" 266 | msgstr "" 267 | 268 | #: usr/lib/hypnotix/hypnotix.py:1279 269 | msgid "M3U Playlists" 270 | msgstr "" 271 | 272 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 273 | #: usr/share/hypnotix/hypnotix.ui.h:42 274 | msgid "Watch TV" 275 | msgstr "" 276 | 277 | #: usr/lib/hypnotix/hypnotix.py:1545 278 | msgid "Loading providers..." 279 | msgstr "" 280 | 281 | #: usr/lib/hypnotix/hypnotix.py:1558 282 | msgid "Downloading playlist..." 283 | msgstr "" 284 | 285 | #: usr/lib/hypnotix/hypnotix.py:1560 286 | msgid "Getting playlist..." 287 | msgstr "" 288 | 289 | #: usr/lib/hypnotix/hypnotix.py:1563 290 | msgid "Checking playlist..." 291 | msgstr "" 292 | 293 | #: usr/lib/hypnotix/hypnotix.py:1565 294 | msgid "Loading channels..." 295 | msgstr "" 296 | 297 | #: usr/lib/hypnotix/hypnotix.py:1573 298 | #, python-format 299 | msgid "Failed to download playlist from %s" 300 | msgstr "" 301 | 302 | #: usr/share/hypnotix/hypnotix.ui.h:1 303 | msgid "Create a new channel" 304 | msgstr "" 305 | 306 | #: usr/share/hypnotix/hypnotix.ui.h:5 307 | msgid "MPV Options" 308 | msgstr "" 309 | 310 | #: usr/share/hypnotix/hypnotix.ui.h:6 311 | msgid "List of MPV options" 312 | msgstr "" 313 | 314 | #: usr/share/hypnotix/hypnotix.ui.h:7 315 | msgid "Playback" 316 | msgstr "" 317 | 318 | #: usr/share/hypnotix/hypnotix.ui.h:8 319 | msgid "User Agent" 320 | msgstr "" 321 | 322 | #: usr/share/hypnotix/hypnotix.ui.h:9 323 | msgid "Referrer" 324 | msgstr "" 325 | 326 | #: usr/share/hypnotix/hypnotix.ui.h:10 327 | msgid "Network" 328 | msgstr "" 329 | 330 | #: usr/share/hypnotix/hypnotix.ui.h:11 331 | msgid "System version:" 332 | msgstr "" 333 | 334 | #: usr/share/hypnotix/hypnotix.ui.h:12 335 | msgid "" 336 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 337 | "and update it using the button above." 338 | msgstr "" 339 | 340 | #: usr/share/hypnotix/hypnotix.ui.h:13 341 | msgid "Local version:" 342 | msgstr "" 343 | 344 | #: usr/share/hypnotix/hypnotix.ui.h:14 345 | msgid "Update from github.com/yt-dlp" 346 | msgstr "" 347 | 348 | #: usr/share/hypnotix/hypnotix.ui.h:15 349 | msgid "Restart Hypnotix for changes to take effect." 350 | msgstr "" 351 | 352 | #: usr/share/hypnotix/hypnotix.ui.h:16 353 | msgid "Use local version" 354 | msgstr "" 355 | 356 | #: usr/share/hypnotix/hypnotix.ui.h:17 357 | msgid "Youtube" 358 | msgstr "" 359 | 360 | #: usr/share/hypnotix/hypnotix.ui.h:18 361 | msgid "Add a new provider..." 362 | msgstr "" 363 | 364 | #: usr/share/hypnotix/hypnotix.ui.h:19 365 | msgid "Reset to defaults..." 366 | msgstr "" 367 | 368 | #: usr/share/hypnotix/hypnotix.ui.h:20 369 | msgid "Name:" 370 | msgstr "" 371 | 372 | #: usr/share/hypnotix/hypnotix.ui.h:21 373 | msgid "URL:" 374 | msgstr "" 375 | 376 | #: usr/share/hypnotix/hypnotix.ui.h:22 377 | msgid "Path:" 378 | msgstr "" 379 | 380 | #: usr/share/hypnotix/hypnotix.ui.h:23 381 | msgid "Cancel" 382 | msgstr "" 383 | 384 | #: usr/share/hypnotix/hypnotix.ui.h:24 385 | msgid "OK" 386 | msgstr "" 387 | 388 | #: usr/share/hypnotix/hypnotix.ui.h:25 389 | msgid "Username:" 390 | msgstr "" 391 | 392 | #: usr/share/hypnotix/hypnotix.ui.h:26 393 | msgid "Password:" 394 | msgstr "" 395 | 396 | #: usr/share/hypnotix/hypnotix.ui.h:27 397 | msgid "Browse..." 398 | msgstr "" 399 | 400 | #: usr/share/hypnotix/hypnotix.ui.h:28 401 | msgid "EPG:" 402 | msgstr "" 403 | 404 | #: usr/share/hypnotix/hypnotix.ui.h:29 405 | msgid "Type:" 406 | msgstr "" 407 | 408 | #: usr/share/hypnotix/hypnotix.ui.h:30 409 | msgid "Are you sure you want to delete this provider?" 410 | msgstr "" 411 | 412 | #: usr/share/hypnotix/hypnotix.ui.h:31 413 | msgid "No" 414 | msgstr "" 415 | 416 | #: usr/share/hypnotix/hypnotix.ui.h:32 417 | msgid "Yes" 418 | msgstr "" 419 | 420 | #: usr/share/hypnotix/hypnotix.ui.h:33 421 | msgid "Are you sure you want to reset to the default providers?" 422 | msgstr "" 423 | 424 | #: usr/share/hypnotix/hypnotix.ui.h:34 425 | msgid "Logo URL:" 426 | msgstr "" 427 | 428 | #: usr/share/hypnotix/hypnotix.ui.h:35 429 | msgid "This channel will be added to your favorites." 430 | msgstr "" 431 | 432 | #: usr/share/hypnotix/hypnotix.ui.h:36 433 | msgid "" 434 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 435 | msgstr "" 436 | 437 | #: usr/share/hypnotix/hypnotix.ui.h:37 438 | msgid "Currently playing:" 439 | msgstr "" 440 | 441 | #: usr/share/hypnotix/hypnotix.ui.h:38 442 | msgid "Show" 443 | msgstr "" 444 | 445 | #: usr/share/hypnotix/hypnotix.ui.h:39 446 | msgid "Pause" 447 | msgstr "" 448 | 449 | #: usr/share/hypnotix/hypnotix.ui.h:40 450 | msgid "Stop" 451 | msgstr "" 452 | 453 | #: usr/share/hypnotix/hypnotix.ui.h:43 454 | msgid "Fullscreen" 455 | msgstr "" 456 | 457 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 458 | msgid "Search" 459 | msgstr "" 460 | 461 | #: usr/share/hypnotix/hypnotix.ui.h:48 462 | msgid "Video" 463 | msgstr "" 464 | 465 | #: usr/share/hypnotix/hypnotix.ui.h:50 466 | msgid "Audio" 467 | msgstr "" 468 | 469 | #: usr/share/hypnotix/shortcuts.ui.h:1 470 | msgid "Main shortcuts" 471 | msgstr "" 472 | 473 | #: usr/share/hypnotix/shortcuts.ui.h:4 474 | msgid "Play previous/next channel" 475 | msgstr "" 476 | 477 | #: usr/share/hypnotix/shortcuts.ui.h:5 478 | msgid "Toggle Fullscreen" 479 | msgstr "" 480 | 481 | #: usr/share/hypnotix/shortcuts.ui.h:8 482 | msgid "Reload all providers" 483 | msgstr "" 484 | -------------------------------------------------------------------------------- /po/hypnotix-sq.po: -------------------------------------------------------------------------------- 1 | # Albanian translation for linuxmint 2 | # Copyright (c) 2021 Rosetta Contributors and Canonical Ltd 2021 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2021. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2021-06-18 08:10+0000\n" 12 | "Last-Translator: Algent Albrahimi \n" 13 | "Language-Team: Albanian \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 19 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "Hypnotix" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "Shkurtore Tastiere" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "Rreth" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "Dilni" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "URL M3U" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "Skedar Local M3U" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "Xtream API" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "Sezoni %s" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "Episodi %s" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "Asnjë ofrues nuk është zgjedhur" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "Kanalet televizive" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "Filma" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "Seriale" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "Kanalet televizive > %s" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "Filma > %s" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "Seriale > %s" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "Parapëlqimet" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "Ofruesit" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "Redakto %s" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "Shto një ofrues të ri" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "Fshini %s" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "Rivendos ofruesit" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "Të përgjithshme" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "Ngjyra" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "Paraqitja" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "Bitrate Mesatar" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "Përmasat" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "Aspekti" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "Formati Piksel" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "Gama" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "Bit për Piksel" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "Kodeks" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "Kanalet" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "Formati" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "" 239 | msgstr[1] "" 240 | 241 | #: usr/lib/hypnotix/hypnotix.py:1127 242 | #, python-format 243 | msgid "%d movie" 244 | msgid_plural "%d movies" 245 | msgstr[0] "" 246 | msgstr[1] "" 247 | 248 | #: usr/lib/hypnotix/hypnotix.py:1132 249 | #, python-format 250 | msgid "%d series" 251 | msgid_plural "%d series" 252 | msgstr[0] "" 253 | msgstr[1] "" 254 | 255 | #: usr/lib/hypnotix/hypnotix.py:1152 256 | msgid "Edit" 257 | msgstr "Redakto" 258 | 259 | #: usr/lib/hypnotix/hypnotix.py:1162 260 | msgid "Clear icon cache" 261 | msgstr "" 262 | 263 | #: usr/lib/hypnotix/hypnotix.py:1172 264 | msgid "Remove" 265 | msgstr "Hiqe" 266 | 267 | #: usr/lib/hypnotix/hypnotix.py:1279 268 | msgid "M3U Playlists" 269 | msgstr "" 270 | 271 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 272 | #: usr/share/hypnotix/hypnotix.ui.h:42 273 | msgid "Watch TV" 274 | msgstr "Shiko TV" 275 | 276 | #: usr/lib/hypnotix/hypnotix.py:1545 277 | msgid "Loading providers..." 278 | msgstr "" 279 | 280 | #: usr/lib/hypnotix/hypnotix.py:1558 281 | msgid "Downloading playlist..." 282 | msgstr "" 283 | 284 | #: usr/lib/hypnotix/hypnotix.py:1560 285 | msgid "Getting playlist..." 286 | msgstr "" 287 | 288 | #: usr/lib/hypnotix/hypnotix.py:1563 289 | msgid "Checking playlist..." 290 | msgstr "" 291 | 292 | #: usr/lib/hypnotix/hypnotix.py:1565 293 | msgid "Loading channels..." 294 | msgstr "" 295 | 296 | #: usr/lib/hypnotix/hypnotix.py:1573 297 | #, python-format 298 | msgid "Failed to download playlist from %s" 299 | msgstr "" 300 | 301 | #: usr/share/hypnotix/hypnotix.ui.h:1 302 | msgid "Create a new channel" 303 | msgstr "" 304 | 305 | #: usr/share/hypnotix/hypnotix.ui.h:5 306 | msgid "MPV Options" 307 | msgstr "Opsionet MPV" 308 | 309 | #: usr/share/hypnotix/hypnotix.ui.h:6 310 | msgid "List of MPV options" 311 | msgstr "Lista e opsioneve MPV" 312 | 313 | #: usr/share/hypnotix/hypnotix.ui.h:7 314 | msgid "Playback" 315 | msgstr "" 316 | 317 | #: usr/share/hypnotix/hypnotix.ui.h:8 318 | msgid "User Agent" 319 | msgstr "Agjenti Përdorues" 320 | 321 | #: usr/share/hypnotix/hypnotix.ui.h:9 322 | msgid "Referrer" 323 | msgstr "Referues" 324 | 325 | #: usr/share/hypnotix/hypnotix.ui.h:10 326 | msgid "Network" 327 | msgstr "Rrjeti" 328 | 329 | #: usr/share/hypnotix/hypnotix.ui.h:11 330 | msgid "System version:" 331 | msgstr "" 332 | 333 | #: usr/share/hypnotix/hypnotix.ui.h:12 334 | msgid "" 335 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 336 | "and update it using the button above." 337 | msgstr "" 338 | 339 | #: usr/share/hypnotix/hypnotix.ui.h:13 340 | msgid "Local version:" 341 | msgstr "" 342 | 343 | #: usr/share/hypnotix/hypnotix.ui.h:14 344 | msgid "Update from github.com/yt-dlp" 345 | msgstr "" 346 | 347 | #: usr/share/hypnotix/hypnotix.ui.h:15 348 | msgid "Restart Hypnotix for changes to take effect." 349 | msgstr "" 350 | 351 | #: usr/share/hypnotix/hypnotix.ui.h:16 352 | msgid "Use local version" 353 | msgstr "" 354 | 355 | #: usr/share/hypnotix/hypnotix.ui.h:17 356 | msgid "Youtube" 357 | msgstr "" 358 | 359 | #: usr/share/hypnotix/hypnotix.ui.h:18 360 | msgid "Add a new provider..." 361 | msgstr "Shto një ofrues të ri ..." 362 | 363 | #: usr/share/hypnotix/hypnotix.ui.h:19 364 | msgid "Reset to defaults..." 365 | msgstr "Rivendos në parazgjedhjet ..." 366 | 367 | #: usr/share/hypnotix/hypnotix.ui.h:20 368 | msgid "Name:" 369 | msgstr "Emri:" 370 | 371 | #: usr/share/hypnotix/hypnotix.ui.h:21 372 | msgid "URL:" 373 | msgstr "URL:" 374 | 375 | #: usr/share/hypnotix/hypnotix.ui.h:22 376 | msgid "Path:" 377 | msgstr "Shtegu:" 378 | 379 | #: usr/share/hypnotix/hypnotix.ui.h:23 380 | msgid "Cancel" 381 | msgstr "Anulo" 382 | 383 | #: usr/share/hypnotix/hypnotix.ui.h:24 384 | msgid "OK" 385 | msgstr "" 386 | 387 | #: usr/share/hypnotix/hypnotix.ui.h:25 388 | msgid "Username:" 389 | msgstr "Emri i përdoruesit:" 390 | 391 | #: usr/share/hypnotix/hypnotix.ui.h:26 392 | msgid "Password:" 393 | msgstr "Fjalëkalimi:" 394 | 395 | #: usr/share/hypnotix/hypnotix.ui.h:27 396 | msgid "Browse..." 397 | msgstr "Shfleto..." 398 | 399 | #: usr/share/hypnotix/hypnotix.ui.h:28 400 | msgid "EPG:" 401 | msgstr "" 402 | 403 | #: usr/share/hypnotix/hypnotix.ui.h:29 404 | msgid "Type:" 405 | msgstr "" 406 | 407 | #: usr/share/hypnotix/hypnotix.ui.h:30 408 | msgid "Are you sure you want to delete this provider?" 409 | msgstr "Je i sigurt që dëshiron ta fshish këtë ofrues?" 410 | 411 | #: usr/share/hypnotix/hypnotix.ui.h:31 412 | msgid "No" 413 | msgstr "Jo" 414 | 415 | #: usr/share/hypnotix/hypnotix.ui.h:32 416 | msgid "Yes" 417 | msgstr "Po" 418 | 419 | #: usr/share/hypnotix/hypnotix.ui.h:33 420 | msgid "Are you sure you want to reset to the default providers?" 421 | msgstr "Jeni i sigurt që dëshironi të rivendosni te ofruesit e parazgjedhur?" 422 | 423 | #: usr/share/hypnotix/hypnotix.ui.h:34 424 | msgid "Logo URL:" 425 | msgstr "" 426 | 427 | #: usr/share/hypnotix/hypnotix.ui.h:35 428 | msgid "This channel will be added to your favorites." 429 | msgstr "" 430 | 431 | #: usr/share/hypnotix/hypnotix.ui.h:36 432 | msgid "" 433 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 434 | msgstr "" 435 | 436 | #: usr/share/hypnotix/hypnotix.ui.h:37 437 | msgid "Currently playing:" 438 | msgstr "Tani duke luajtur:" 439 | 440 | #: usr/share/hypnotix/hypnotix.ui.h:38 441 | msgid "Show" 442 | msgstr "Shfaq" 443 | 444 | #: usr/share/hypnotix/hypnotix.ui.h:39 445 | msgid "Pause" 446 | msgstr "Pusho" 447 | 448 | #: usr/share/hypnotix/hypnotix.ui.h:40 449 | msgid "Stop" 450 | msgstr "Ndal" 451 | 452 | #: usr/share/hypnotix/hypnotix.ui.h:43 453 | msgid "Fullscreen" 454 | msgstr "Ekran i plotë" 455 | 456 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 457 | msgid "Search" 458 | msgstr "" 459 | 460 | #: usr/share/hypnotix/hypnotix.ui.h:48 461 | msgid "Video" 462 | msgstr "Video" 463 | 464 | #: usr/share/hypnotix/hypnotix.ui.h:50 465 | msgid "Audio" 466 | msgstr "Audio" 467 | 468 | #: usr/share/hypnotix/shortcuts.ui.h:1 469 | msgid "Main shortcuts" 470 | msgstr "Shkurtoret kryesore" 471 | 472 | #: usr/share/hypnotix/shortcuts.ui.h:4 473 | msgid "Play previous/next channel" 474 | msgstr "" 475 | 476 | #: usr/share/hypnotix/shortcuts.ui.h:5 477 | msgid "Toggle Fullscreen" 478 | msgstr "" 479 | 480 | #: usr/share/hypnotix/shortcuts.ui.h:8 481 | msgid "Reload all providers" 482 | msgstr "" 483 | -------------------------------------------------------------------------------- /po/hypnotix-te.po: -------------------------------------------------------------------------------- 1 | # Telugu translation for linuxmint 2 | # Copyright (c) 2024 Rosetta Contributors and Canonical Ltd 2024 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2024. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2024-12-25 10:44+0000\n" 12 | "Last-Translator: FULL NAME \n" 13 | "Language-Team: Telugu \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 19 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "" 239 | msgstr[1] "" 240 | 241 | #: usr/lib/hypnotix/hypnotix.py:1127 242 | #, python-format 243 | msgid "%d movie" 244 | msgid_plural "%d movies" 245 | msgstr[0] "" 246 | msgstr[1] "" 247 | 248 | #: usr/lib/hypnotix/hypnotix.py:1132 249 | #, python-format 250 | msgid "%d series" 251 | msgid_plural "%d series" 252 | msgstr[0] "" 253 | msgstr[1] "" 254 | 255 | #: usr/lib/hypnotix/hypnotix.py:1152 256 | msgid "Edit" 257 | msgstr "" 258 | 259 | #: usr/lib/hypnotix/hypnotix.py:1162 260 | msgid "Clear icon cache" 261 | msgstr "" 262 | 263 | #: usr/lib/hypnotix/hypnotix.py:1172 264 | msgid "Remove" 265 | msgstr "" 266 | 267 | #: usr/lib/hypnotix/hypnotix.py:1279 268 | msgid "M3U Playlists" 269 | msgstr "" 270 | 271 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 272 | #: usr/share/hypnotix/hypnotix.ui.h:42 273 | msgid "Watch TV" 274 | msgstr "" 275 | 276 | #: usr/lib/hypnotix/hypnotix.py:1545 277 | msgid "Loading providers..." 278 | msgstr "" 279 | 280 | #: usr/lib/hypnotix/hypnotix.py:1558 281 | msgid "Downloading playlist..." 282 | msgstr "" 283 | 284 | #: usr/lib/hypnotix/hypnotix.py:1560 285 | msgid "Getting playlist..." 286 | msgstr "" 287 | 288 | #: usr/lib/hypnotix/hypnotix.py:1563 289 | msgid "Checking playlist..." 290 | msgstr "" 291 | 292 | #: usr/lib/hypnotix/hypnotix.py:1565 293 | msgid "Loading channels..." 294 | msgstr "" 295 | 296 | #: usr/lib/hypnotix/hypnotix.py:1573 297 | #, python-format 298 | msgid "Failed to download playlist from %s" 299 | msgstr "" 300 | 301 | #: usr/share/hypnotix/hypnotix.ui.h:1 302 | msgid "Create a new channel" 303 | msgstr "" 304 | 305 | #: usr/share/hypnotix/hypnotix.ui.h:5 306 | msgid "MPV Options" 307 | msgstr "" 308 | 309 | #: usr/share/hypnotix/hypnotix.ui.h:6 310 | msgid "List of MPV options" 311 | msgstr "" 312 | 313 | #: usr/share/hypnotix/hypnotix.ui.h:7 314 | msgid "Playback" 315 | msgstr "" 316 | 317 | #: usr/share/hypnotix/hypnotix.ui.h:8 318 | msgid "User Agent" 319 | msgstr "" 320 | 321 | #: usr/share/hypnotix/hypnotix.ui.h:9 322 | msgid "Referrer" 323 | msgstr "" 324 | 325 | #: usr/share/hypnotix/hypnotix.ui.h:10 326 | msgid "Network" 327 | msgstr "" 328 | 329 | #: usr/share/hypnotix/hypnotix.ui.h:11 330 | msgid "System version:" 331 | msgstr "" 332 | 333 | #: usr/share/hypnotix/hypnotix.ui.h:12 334 | msgid "" 335 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 336 | "and update it using the button above." 337 | msgstr "" 338 | 339 | #: usr/share/hypnotix/hypnotix.ui.h:13 340 | msgid "Local version:" 341 | msgstr "" 342 | 343 | #: usr/share/hypnotix/hypnotix.ui.h:14 344 | msgid "Update from github.com/yt-dlp" 345 | msgstr "" 346 | 347 | #: usr/share/hypnotix/hypnotix.ui.h:15 348 | msgid "Restart Hypnotix for changes to take effect." 349 | msgstr "" 350 | 351 | #: usr/share/hypnotix/hypnotix.ui.h:16 352 | msgid "Use local version" 353 | msgstr "" 354 | 355 | #: usr/share/hypnotix/hypnotix.ui.h:17 356 | msgid "Youtube" 357 | msgstr "" 358 | 359 | #: usr/share/hypnotix/hypnotix.ui.h:18 360 | msgid "Add a new provider..." 361 | msgstr "" 362 | 363 | #: usr/share/hypnotix/hypnotix.ui.h:19 364 | msgid "Reset to defaults..." 365 | msgstr "" 366 | 367 | #: usr/share/hypnotix/hypnotix.ui.h:20 368 | msgid "Name:" 369 | msgstr "" 370 | 371 | #: usr/share/hypnotix/hypnotix.ui.h:21 372 | msgid "URL:" 373 | msgstr "" 374 | 375 | #: usr/share/hypnotix/hypnotix.ui.h:22 376 | msgid "Path:" 377 | msgstr "" 378 | 379 | #: usr/share/hypnotix/hypnotix.ui.h:23 380 | msgid "Cancel" 381 | msgstr "" 382 | 383 | #: usr/share/hypnotix/hypnotix.ui.h:24 384 | msgid "OK" 385 | msgstr "" 386 | 387 | #: usr/share/hypnotix/hypnotix.ui.h:25 388 | msgid "Username:" 389 | msgstr "" 390 | 391 | #: usr/share/hypnotix/hypnotix.ui.h:26 392 | msgid "Password:" 393 | msgstr "" 394 | 395 | #: usr/share/hypnotix/hypnotix.ui.h:27 396 | msgid "Browse..." 397 | msgstr "" 398 | 399 | #: usr/share/hypnotix/hypnotix.ui.h:28 400 | msgid "EPG:" 401 | msgstr "" 402 | 403 | #: usr/share/hypnotix/hypnotix.ui.h:29 404 | msgid "Type:" 405 | msgstr "" 406 | 407 | #: usr/share/hypnotix/hypnotix.ui.h:30 408 | msgid "Are you sure you want to delete this provider?" 409 | msgstr "" 410 | 411 | #: usr/share/hypnotix/hypnotix.ui.h:31 412 | msgid "No" 413 | msgstr "" 414 | 415 | #: usr/share/hypnotix/hypnotix.ui.h:32 416 | msgid "Yes" 417 | msgstr "" 418 | 419 | #: usr/share/hypnotix/hypnotix.ui.h:33 420 | msgid "Are you sure you want to reset to the default providers?" 421 | msgstr "" 422 | 423 | #: usr/share/hypnotix/hypnotix.ui.h:34 424 | msgid "Logo URL:" 425 | msgstr "" 426 | 427 | #: usr/share/hypnotix/hypnotix.ui.h:35 428 | msgid "This channel will be added to your favorites." 429 | msgstr "" 430 | 431 | #: usr/share/hypnotix/hypnotix.ui.h:36 432 | msgid "" 433 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 434 | msgstr "" 435 | 436 | #: usr/share/hypnotix/hypnotix.ui.h:37 437 | msgid "Currently playing:" 438 | msgstr "" 439 | 440 | #: usr/share/hypnotix/hypnotix.ui.h:38 441 | msgid "Show" 442 | msgstr "" 443 | 444 | #: usr/share/hypnotix/hypnotix.ui.h:39 445 | msgid "Pause" 446 | msgstr "" 447 | 448 | #: usr/share/hypnotix/hypnotix.ui.h:40 449 | msgid "Stop" 450 | msgstr "" 451 | 452 | #: usr/share/hypnotix/hypnotix.ui.h:43 453 | msgid "Fullscreen" 454 | msgstr "" 455 | 456 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 457 | msgid "Search" 458 | msgstr "" 459 | 460 | #: usr/share/hypnotix/hypnotix.ui.h:48 461 | msgid "Video" 462 | msgstr "" 463 | 464 | #: usr/share/hypnotix/hypnotix.ui.h:50 465 | msgid "Audio" 466 | msgstr "" 467 | 468 | #: usr/share/hypnotix/shortcuts.ui.h:1 469 | msgid "Main shortcuts" 470 | msgstr "" 471 | 472 | #: usr/share/hypnotix/shortcuts.ui.h:4 473 | msgid "Play previous/next channel" 474 | msgstr "" 475 | 476 | #: usr/share/hypnotix/shortcuts.ui.h:5 477 | msgid "Toggle Fullscreen" 478 | msgstr "" 479 | 480 | #: usr/share/hypnotix/shortcuts.ui.h:8 481 | msgid "Reload all providers" 482 | msgstr "" 483 | -------------------------------------------------------------------------------- /po/hypnotix-zh_CN.po: -------------------------------------------------------------------------------- 1 | # Chinese (Simplified) translation for linuxmint 2 | # Copyright (c) 2020 Rosetta Contributors and Canonical Ltd 2020 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2020. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2024-07-19 06:42+0000\n" 12 | "Last-Translator: 张鹏 \n" 13 | "Language-Team: Chinese (Simplified) \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=1; plural=0;\n" 18 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 19 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "网络电视 Hypnotix" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "键盘快捷键" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "流信息" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "关于" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "退出" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "M3U 链接" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "本地M3U文件" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "Xtream API" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "第 %s 季" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "第 %s 集" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "未找到通道" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "没有选择提供方" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "电视频道 (%d)" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "电影 (%d)" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "连续剧 (%d)" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "电视频道" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "电影" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "连续剧" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "收藏夹" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "电视频道 > %s" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "电影 > %s" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "连续剧 > %s" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "新建频道" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "首选项" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "提供方" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "编辑 %s" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "新增一个提供方" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "删除 %s" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "重置提供方" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "常规" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "颜色" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "布局" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "从收藏中删除" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "添加到收藏" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "平均比特率" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "尺寸" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "宽高比" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "像素格式" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "伽玛值" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "比特率每像素" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "编码器" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "环绕声" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "频道" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "采样率" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "格式" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "频道计数" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "%d个电视频道" 239 | 240 | #: usr/lib/hypnotix/hypnotix.py:1127 241 | #, python-format 242 | msgid "%d movie" 243 | msgid_plural "%d movies" 244 | msgstr[0] "%d个电影" 245 | 246 | #: usr/lib/hypnotix/hypnotix.py:1132 247 | #, python-format 248 | msgid "%d series" 249 | msgid_plural "%d series" 250 | msgstr[0] "%d个连续剧" 251 | 252 | #: usr/lib/hypnotix/hypnotix.py:1152 253 | msgid "Edit" 254 | msgstr "编辑" 255 | 256 | #: usr/lib/hypnotix/hypnotix.py:1162 257 | msgid "Clear icon cache" 258 | msgstr "清空图标缓存" 259 | 260 | #: usr/lib/hypnotix/hypnotix.py:1172 261 | msgid "Remove" 262 | msgstr "移除" 263 | 264 | #: usr/lib/hypnotix/hypnotix.py:1279 265 | msgid "M3U Playlists" 266 | msgstr "M3U 播放列表" 267 | 268 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 269 | #: usr/share/hypnotix/hypnotix.ui.h:42 270 | msgid "Watch TV" 271 | msgstr "观看电视" 272 | 273 | #: usr/lib/hypnotix/hypnotix.py:1545 274 | msgid "Loading providers..." 275 | msgstr "正在加载提供者..." 276 | 277 | #: usr/lib/hypnotix/hypnotix.py:1558 278 | msgid "Downloading playlist..." 279 | msgstr "正在下载播放列表..." 280 | 281 | #: usr/lib/hypnotix/hypnotix.py:1560 282 | msgid "Getting playlist..." 283 | msgstr "正在获取播放列表..." 284 | 285 | #: usr/lib/hypnotix/hypnotix.py:1563 286 | msgid "Checking playlist..." 287 | msgstr "正在检查播放列表..." 288 | 289 | #: usr/lib/hypnotix/hypnotix.py:1565 290 | msgid "Loading channels..." 291 | msgstr "正在载入频道..." 292 | 293 | #: usr/lib/hypnotix/hypnotix.py:1573 294 | #, python-format 295 | msgid "Failed to download playlist from %s" 296 | msgstr "无法从 %s 加载播放列表" 297 | 298 | #: usr/share/hypnotix/hypnotix.ui.h:1 299 | msgid "Create a new channel" 300 | msgstr "新建频道" 301 | 302 | #: usr/share/hypnotix/hypnotix.ui.h:5 303 | msgid "MPV Options" 304 | msgstr "MPV选项" 305 | 306 | #: usr/share/hypnotix/hypnotix.ui.h:6 307 | msgid "List of MPV options" 308 | msgstr "MPV选项清单" 309 | 310 | #: usr/share/hypnotix/hypnotix.ui.h:7 311 | msgid "Playback" 312 | msgstr "回放" 313 | 314 | #: usr/share/hypnotix/hypnotix.ui.h:8 315 | msgid "User Agent" 316 | msgstr "用户代理" 317 | 318 | #: usr/share/hypnotix/hypnotix.ui.h:9 319 | msgid "Referrer" 320 | msgstr "来源" 321 | 322 | #: usr/share/hypnotix/hypnotix.ui.h:10 323 | msgid "Network" 324 | msgstr "网络" 325 | 326 | #: usr/share/hypnotix/hypnotix.ui.h:11 327 | msgid "System version:" 328 | msgstr "系统版本:" 329 | 330 | #: usr/share/hypnotix/hypnotix.ui.h:12 331 | msgid "" 332 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 333 | "and update it using the button above." 334 | msgstr "如果无法正常播放 Youtube 频道,你可以使用上方的按钮切换并更新到本地版本的 yt-dlp。" 335 | 336 | #: usr/share/hypnotix/hypnotix.ui.h:13 337 | msgid "Local version:" 338 | msgstr "本地版本:" 339 | 340 | #: usr/share/hypnotix/hypnotix.ui.h:14 341 | msgid "Update from github.com/yt-dlp" 342 | msgstr "从 github.com/yt-dlp 更新" 343 | 344 | #: usr/share/hypnotix/hypnotix.ui.h:15 345 | msgid "Restart Hypnotix for changes to take effect." 346 | msgstr "重启 Hypnotix 以应用更改。" 347 | 348 | #: usr/share/hypnotix/hypnotix.ui.h:16 349 | msgid "Use local version" 350 | msgstr "使用本地版本" 351 | 352 | #: usr/share/hypnotix/hypnotix.ui.h:17 353 | msgid "Youtube" 354 | msgstr "Youtube" 355 | 356 | #: usr/share/hypnotix/hypnotix.ui.h:18 357 | msgid "Add a new provider..." 358 | msgstr "增加一个提供方" 359 | 360 | #: usr/share/hypnotix/hypnotix.ui.h:19 361 | msgid "Reset to defaults..." 362 | msgstr "重置为默认值..." 363 | 364 | #: usr/share/hypnotix/hypnotix.ui.h:20 365 | msgid "Name:" 366 | msgstr "名称:" 367 | 368 | #: usr/share/hypnotix/hypnotix.ui.h:21 369 | msgid "URL:" 370 | msgstr "网址:" 371 | 372 | #: usr/share/hypnotix/hypnotix.ui.h:22 373 | msgid "Path:" 374 | msgstr "路径:" 375 | 376 | #: usr/share/hypnotix/hypnotix.ui.h:23 377 | msgid "Cancel" 378 | msgstr "取消" 379 | 380 | #: usr/share/hypnotix/hypnotix.ui.h:24 381 | msgid "OK" 382 | msgstr "确定" 383 | 384 | #: usr/share/hypnotix/hypnotix.ui.h:25 385 | msgid "Username:" 386 | msgstr "用户名:" 387 | 388 | #: usr/share/hypnotix/hypnotix.ui.h:26 389 | msgid "Password:" 390 | msgstr "密码:" 391 | 392 | #: usr/share/hypnotix/hypnotix.ui.h:27 393 | msgid "Browse..." 394 | msgstr "浏览..." 395 | 396 | #: usr/share/hypnotix/hypnotix.ui.h:28 397 | msgid "EPG:" 398 | msgstr "电子节目指南(EPG):" 399 | 400 | #: usr/share/hypnotix/hypnotix.ui.h:29 401 | msgid "Type:" 402 | msgstr "类型:" 403 | 404 | #: usr/share/hypnotix/hypnotix.ui.h:30 405 | msgid "Are you sure you want to delete this provider?" 406 | msgstr "确定要删除这个提供者吗?" 407 | 408 | #: usr/share/hypnotix/hypnotix.ui.h:31 409 | msgid "No" 410 | msgstr "否" 411 | 412 | #: usr/share/hypnotix/hypnotix.ui.h:32 413 | msgid "Yes" 414 | msgstr "是" 415 | 416 | #: usr/share/hypnotix/hypnotix.ui.h:33 417 | msgid "Are you sure you want to reset to the default providers?" 418 | msgstr "确定要重置到默认提供者吗?" 419 | 420 | #: usr/share/hypnotix/hypnotix.ui.h:34 421 | msgid "Logo URL:" 422 | msgstr "图标链接:" 423 | 424 | #: usr/share/hypnotix/hypnotix.ui.h:35 425 | msgid "This channel will be added to your favorites." 426 | msgstr "此频道将加入到你的收藏。" 427 | 428 | #: usr/share/hypnotix/hypnotix.ui.h:36 429 | msgid "" 430 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 431 | msgstr "注意:如果是本地图标,请上传至 imgur.com 来获取链接。" 432 | 433 | #: usr/share/hypnotix/hypnotix.ui.h:37 434 | msgid "Currently playing:" 435 | msgstr "正在播放:" 436 | 437 | #: usr/share/hypnotix/hypnotix.ui.h:38 438 | msgid "Show" 439 | msgstr "显示" 440 | 441 | #: usr/share/hypnotix/hypnotix.ui.h:39 442 | msgid "Pause" 443 | msgstr "暂停" 444 | 445 | #: usr/share/hypnotix/hypnotix.ui.h:40 446 | msgid "Stop" 447 | msgstr "停止" 448 | 449 | #: usr/share/hypnotix/hypnotix.ui.h:43 450 | msgid "Fullscreen" 451 | msgstr "全屏" 452 | 453 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 454 | msgid "Search" 455 | msgstr "搜索" 456 | 457 | #: usr/share/hypnotix/hypnotix.ui.h:48 458 | msgid "Video" 459 | msgstr "视频" 460 | 461 | #: usr/share/hypnotix/hypnotix.ui.h:50 462 | msgid "Audio" 463 | msgstr "音频" 464 | 465 | #: usr/share/hypnotix/shortcuts.ui.h:1 466 | msgid "Main shortcuts" 467 | msgstr "主快捷键" 468 | 469 | #: usr/share/hypnotix/shortcuts.ui.h:4 470 | msgid "Play previous/next channel" 471 | msgstr "播放上一个/下一个频道" 472 | 473 | #: usr/share/hypnotix/shortcuts.ui.h:5 474 | msgid "Toggle Fullscreen" 475 | msgstr "全屏切换" 476 | 477 | #: usr/share/hypnotix/shortcuts.ui.h:8 478 | msgid "Reload all providers" 479 | msgstr "重新加载所有提供方" 480 | -------------------------------------------------------------------------------- /po/hypnotix-zh_TW.po: -------------------------------------------------------------------------------- 1 | # Chinese (Traditional) translation for linuxmint 2 | # Copyright (c) 2024 Rosetta Contributors and Canonical Ltd 2024 3 | # This file is distributed under the same license as the linuxmint package. 4 | # FIRST AUTHOR , 2024. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: linuxmint\n" 9 | "Report-Msgid-Bugs-To: FULL NAME \n" 10 | "POT-Creation-Date: 2023-11-29 13:21+0000\n" 11 | "PO-Revision-Date: 2024-02-14 00:23+0000\n" 12 | "Last-Translator: 爽自由 \n" 13 | "Language-Team: Chinese (Traditional) \n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=1; plural=0;\n" 18 | "X-Launchpad-Export-Date: 2025-01-06 12:01+0000\n" 19 | "X-Generator: Launchpad (build 6394e03793719e8d73f5a60b5439440e693c92f1)\n" 20 | 21 | #: usr/lib/hypnotix/hypnotix.py:157 usr/lib/hypnotix/hypnotix.py:867 22 | #: usr/lib/hypnotix/hypnotix.py:1476 generate_desktop_files:25 23 | #: usr/share/hypnotix/hypnotix.ui.h:41 24 | msgid "Hypnotix" 25 | msgstr "Hypnotix" 26 | 27 | #: usr/lib/hypnotix/hypnotix.py:364 usr/share/hypnotix/shortcuts.ui.h:7 28 | msgid "Keyboard Shortcuts" 29 | msgstr "快捷鍵" 30 | 31 | #: usr/lib/hypnotix/hypnotix.py:371 usr/share/hypnotix/hypnotix.ui.h:51 32 | #: usr/share/hypnotix/shortcuts.ui.h:3 33 | msgid "Stream Information" 34 | msgstr "串流資訊" 35 | 36 | #: usr/lib/hypnotix/hypnotix.py:379 usr/lib/hypnotix/hypnotix.py:1475 37 | #: usr/share/hypnotix/shortcuts.ui.h:2 38 | msgid "About" 39 | msgstr "關於" 40 | 41 | #: usr/lib/hypnotix/hypnotix.py:384 usr/share/hypnotix/shortcuts.ui.h:9 42 | msgid "Quit" 43 | msgstr "結束" 44 | 45 | #: usr/lib/hypnotix/hypnotix.py:397 46 | msgid "M3U URL" 47 | msgstr "M3U 位址" 48 | 49 | #: usr/lib/hypnotix/hypnotix.py:398 50 | msgid "Local M3U File" 51 | msgstr "本地端 M3U 檔" 52 | 53 | #: usr/lib/hypnotix/hypnotix.py:399 54 | msgid "Xtream API" 55 | msgstr "Xtream API" 56 | 57 | #: usr/lib/hypnotix/hypnotix.py:611 58 | #, python-format 59 | msgid "Season %s" 60 | msgstr "%s 季" 61 | 62 | #: usr/lib/hypnotix/hypnotix.py:622 63 | #, python-format 64 | msgid "Episode %s" 65 | msgstr "%s 集" 66 | 67 | #: usr/lib/hypnotix/hypnotix.py:748 68 | msgid "No channels found" 69 | msgstr "找不到頻道" 70 | 71 | #: usr/lib/hypnotix/hypnotix.py:774 72 | msgid "No provider selected" 73 | msgstr "未選取提供者" 74 | 75 | #: usr/lib/hypnotix/hypnotix.py:775 usr/lib/hypnotix/hypnotix.py:783 76 | #, python-format 77 | msgid "TV Channels (%d)" 78 | msgstr "電視頻道 (%d)" 79 | 80 | #: usr/lib/hypnotix/hypnotix.py:776 usr/lib/hypnotix/hypnotix.py:784 81 | #, python-format 82 | msgid "Movies (%d)" 83 | msgstr "電影 (%d)" 84 | 85 | #: usr/lib/hypnotix/hypnotix.py:777 usr/lib/hypnotix/hypnotix.py:785 86 | #, python-format 87 | msgid "Series (%d)" 88 | msgstr "系列 (%d)" 89 | 90 | #: usr/lib/hypnotix/hypnotix.py:793 usr/lib/hypnotix/hypnotix.py:808 91 | msgid "TV Channels" 92 | msgstr "電視頻道" 93 | 94 | #: usr/lib/hypnotix/hypnotix.py:795 usr/lib/hypnotix/hypnotix.py:822 95 | msgid "Movies" 96 | msgstr "電影" 97 | 98 | #: usr/lib/hypnotix/hypnotix.py:797 usr/lib/hypnotix/hypnotix.py:828 99 | msgid "Series" 100 | msgstr "系列" 101 | 102 | #: usr/lib/hypnotix/hypnotix.py:803 usr/share/hypnotix/hypnotix.ui.h:2 103 | msgid "Favorites" 104 | msgstr "最愛" 105 | 106 | #: usr/lib/hypnotix/hypnotix.py:811 107 | #, python-format 108 | msgid "TV Channels > %s" 109 | msgstr "電視頻道 > %s" 110 | 111 | #: usr/lib/hypnotix/hypnotix.py:825 112 | #, python-format 113 | msgid "Movies > %s" 114 | msgstr "電影 > %s" 115 | 116 | #: usr/lib/hypnotix/hypnotix.py:831 117 | #, python-format 118 | msgid "Series > %s" 119 | msgstr "影集 > %s" 120 | 121 | #: usr/lib/hypnotix/hypnotix.py:838 122 | msgid "New Channel" 123 | msgstr "新頻道" 124 | 125 | #: usr/lib/hypnotix/hypnotix.py:841 usr/share/hypnotix/hypnotix.ui.h:3 126 | msgid "Preferences" 127 | msgstr "偏好設定" 128 | 129 | #: usr/lib/hypnotix/hypnotix.py:844 usr/share/hypnotix/hypnotix.ui.h:4 130 | msgid "Providers" 131 | msgstr "供應端" 132 | 133 | #: usr/lib/hypnotix/hypnotix.py:849 134 | #, python-format 135 | msgid "Edit %s" 136 | msgstr "編輯 %s" 137 | 138 | #: usr/lib/hypnotix/hypnotix.py:851 139 | msgid "Add a new provider" 140 | msgstr "加入新的供應端" 141 | 142 | #: usr/lib/hypnotix/hypnotix.py:855 143 | #, python-format 144 | msgid "Delete %s" 145 | msgstr "刪除 %s" 146 | 147 | #: usr/lib/hypnotix/hypnotix.py:859 148 | msgid "Reset providers" 149 | msgstr "清除供應端" 150 | 151 | #: usr/lib/hypnotix/hypnotix.py:915 usr/lib/hypnotix/hypnotix.py:919 152 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 153 | #: usr/lib/hypnotix/hypnotix.py:993 usr/lib/hypnotix/hypnotix.py:996 154 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1021 155 | #: usr/lib/hypnotix/hypnotix.py:1026 usr/lib/hypnotix/hypnotix.py:1034 156 | #: usr/lib/hypnotix/hypnotix.py:1427 usr/lib/hypnotix/hypnotix.py:1429 157 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 158 | #: usr/share/hypnotix/hypnotix.ui.h:45 159 | msgid "General" 160 | msgstr "一般選項" 161 | 162 | #: usr/lib/hypnotix/hypnotix.py:916 usr/lib/hypnotix/hypnotix.py:998 163 | #: usr/lib/hypnotix/hypnotix.py:1000 usr/lib/hypnotix/hypnotix.py:1002 164 | #: usr/lib/hypnotix/hypnotix.py:1428 usr/share/hypnotix/hypnotix.ui.h:47 165 | msgid "Color" 166 | msgstr "色彩" 167 | 168 | #: usr/lib/hypnotix/hypnotix.py:920 usr/lib/hypnotix/hypnotix.py:1018 169 | #: usr/lib/hypnotix/hypnotix.py:1028 usr/lib/hypnotix/hypnotix.py:1430 170 | #: usr/share/hypnotix/hypnotix.ui.h:49 171 | msgid "Layout" 172 | msgstr "佈置" 173 | 174 | #: usr/lib/hypnotix/hypnotix.py:933 175 | msgid "Remove from favorites" 176 | msgstr "從最愛移除" 177 | 178 | #: usr/lib/hypnotix/hypnotix.py:936 179 | msgid "Add to favorites" 180 | msgstr "加到最愛" 181 | 182 | #: usr/lib/hypnotix/hypnotix.py:969 usr/lib/hypnotix/hypnotix.py:970 183 | #: usr/lib/hypnotix/hypnotix.py:984 usr/lib/hypnotix/hypnotix.py:986 184 | #: usr/lib/hypnotix/hypnotix.py:1451 usr/lib/hypnotix/hypnotix.py:1452 185 | #: usr/lib/hypnotix/hypnotix.py:1455 usr/lib/hypnotix/hypnotix.py:1459 186 | #: usr/share/hypnotix/hypnotix.ui.h:46 187 | msgid "Average Bitrate" 188 | msgstr "平均位元率" 189 | 190 | #: usr/lib/hypnotix/hypnotix.py:993 191 | msgid "Dimensions" 192 | msgstr "尺寸" 193 | 194 | #: usr/lib/hypnotix/hypnotix.py:996 195 | msgid "Aspect" 196 | msgstr "長寬比" 197 | 198 | #: usr/lib/hypnotix/hypnotix.py:998 199 | msgid "Pixel Format" 200 | msgstr "像素格式" 201 | 202 | #: usr/lib/hypnotix/hypnotix.py:1000 203 | msgid "Gamma" 204 | msgstr "Gamma" 205 | 206 | #: usr/lib/hypnotix/hypnotix.py:1002 207 | msgid "Bits Per Pixel" 208 | msgstr "單像素位元數" 209 | 210 | #: usr/lib/hypnotix/hypnotix.py:1008 usr/lib/hypnotix/hypnotix.py:1034 211 | msgid "Codec" 212 | msgstr "編解碼" 213 | 214 | #: usr/lib/hypnotix/hypnotix.py:1017 215 | msgid "surround sound" 216 | msgstr "環繞音效" 217 | 218 | #: usr/lib/hypnotix/hypnotix.py:1018 219 | msgid "Channels" 220 | msgstr "聲道" 221 | 222 | #: usr/lib/hypnotix/hypnotix.py:1021 223 | msgid "Sample Rate" 224 | msgstr "取樣率" 225 | 226 | #: usr/lib/hypnotix/hypnotix.py:1026 227 | msgid "Format" 228 | msgstr "格式" 229 | 230 | #: usr/lib/hypnotix/hypnotix.py:1028 231 | msgid "Channel Count" 232 | msgstr "頻道數" 233 | 234 | #: usr/lib/hypnotix/hypnotix.py:1122 235 | #, python-format 236 | msgid "%d TV channel" 237 | msgid_plural "%d TV channels" 238 | msgstr[0] "%d 電視頻道" 239 | 240 | #: usr/lib/hypnotix/hypnotix.py:1127 241 | #, python-format 242 | msgid "%d movie" 243 | msgid_plural "%d movies" 244 | msgstr[0] "%d 部電影" 245 | 246 | #: usr/lib/hypnotix/hypnotix.py:1132 247 | #, python-format 248 | msgid "%d series" 249 | msgid_plural "%d series" 250 | msgstr[0] "%d 影集" 251 | 252 | #: usr/lib/hypnotix/hypnotix.py:1152 253 | msgid "Edit" 254 | msgstr "編輯" 255 | 256 | #: usr/lib/hypnotix/hypnotix.py:1162 257 | msgid "Clear icon cache" 258 | msgstr "清除圖示快取" 259 | 260 | #: usr/lib/hypnotix/hypnotix.py:1172 261 | msgid "Remove" 262 | msgstr "移除" 263 | 264 | #: usr/lib/hypnotix/hypnotix.py:1279 265 | msgid "M3U Playlists" 266 | msgstr "M3U 播放單" 267 | 268 | #: usr/lib/hypnotix/hypnotix.py:1477 generate_desktop_files:25 269 | #: usr/share/hypnotix/hypnotix.ui.h:42 270 | msgid "Watch TV" 271 | msgstr "觀賞電視" 272 | 273 | #: usr/lib/hypnotix/hypnotix.py:1545 274 | msgid "Loading providers..." 275 | msgstr "載入供應端..." 276 | 277 | #: usr/lib/hypnotix/hypnotix.py:1558 278 | msgid "Downloading playlist..." 279 | msgstr "下載播放單..." 280 | 281 | #: usr/lib/hypnotix/hypnotix.py:1560 282 | msgid "Getting playlist..." 283 | msgstr "取得播放單..." 284 | 285 | #: usr/lib/hypnotix/hypnotix.py:1563 286 | msgid "Checking playlist..." 287 | msgstr "檢查播放單..." 288 | 289 | #: usr/lib/hypnotix/hypnotix.py:1565 290 | msgid "Loading channels..." 291 | msgstr "載入播放單..." 292 | 293 | #: usr/lib/hypnotix/hypnotix.py:1573 294 | #, python-format 295 | msgid "Failed to download playlist from %s" 296 | msgstr "從 %s 下載播放單失敗" 297 | 298 | #: usr/share/hypnotix/hypnotix.ui.h:1 299 | msgid "Create a new channel" 300 | msgstr "建立新頻道" 301 | 302 | #: usr/share/hypnotix/hypnotix.ui.h:5 303 | msgid "MPV Options" 304 | msgstr "MPV 選項" 305 | 306 | #: usr/share/hypnotix/hypnotix.ui.h:6 307 | msgid "List of MPV options" 308 | msgstr "列出 MPV 選項" 309 | 310 | #: usr/share/hypnotix/hypnotix.ui.h:7 311 | msgid "Playback" 312 | msgstr "播放" 313 | 314 | #: usr/share/hypnotix/hypnotix.ui.h:8 315 | msgid "User Agent" 316 | msgstr "使用者代理" 317 | 318 | #: usr/share/hypnotix/hypnotix.ui.h:9 319 | msgid "Referrer" 320 | msgstr "推薦者" 321 | 322 | #: usr/share/hypnotix/hypnotix.ui.h:10 323 | msgid "Network" 324 | msgstr "網路" 325 | 326 | #: usr/share/hypnotix/hypnotix.ui.h:11 327 | msgid "System version:" 328 | msgstr "系統版本:" 329 | 330 | #: usr/share/hypnotix/hypnotix.ui.h:12 331 | msgid "" 332 | "If Youtube channels stop working you can switch to a local version of yt-dlp " 333 | "and update it using the button above." 334 | msgstr "如果 Youtube 頻道停止作用,您可用下方按鈕切換和更新本地版 yt-dlp" 335 | 336 | #: usr/share/hypnotix/hypnotix.ui.h:13 337 | msgid "Local version:" 338 | msgstr "本地版:" 339 | 340 | #: usr/share/hypnotix/hypnotix.ui.h:14 341 | msgid "Update from github.com/yt-dlp" 342 | msgstr "從 github.com/yt-dlp 更新" 343 | 344 | #: usr/share/hypnotix/hypnotix.ui.h:15 345 | msgid "Restart Hypnotix for changes to take effect." 346 | msgstr "重啟 Hypnotix 讓更新完成" 347 | 348 | #: usr/share/hypnotix/hypnotix.ui.h:16 349 | msgid "Use local version" 350 | msgstr "使用本地版" 351 | 352 | #: usr/share/hypnotix/hypnotix.ui.h:17 353 | msgid "Youtube" 354 | msgstr "Youtube" 355 | 356 | #: usr/share/hypnotix/hypnotix.ui.h:18 357 | msgid "Add a new provider..." 358 | msgstr "加入新供應端..." 359 | 360 | #: usr/share/hypnotix/hypnotix.ui.h:19 361 | msgid "Reset to defaults..." 362 | msgstr "回愎成預設..." 363 | 364 | #: usr/share/hypnotix/hypnotix.ui.h:20 365 | msgid "Name:" 366 | msgstr "名稱:" 367 | 368 | #: usr/share/hypnotix/hypnotix.ui.h:21 369 | msgid "URL:" 370 | msgstr "網址:" 371 | 372 | #: usr/share/hypnotix/hypnotix.ui.h:22 373 | msgid "Path:" 374 | msgstr "路徑:" 375 | 376 | #: usr/share/hypnotix/hypnotix.ui.h:23 377 | msgid "Cancel" 378 | msgstr "取消" 379 | 380 | #: usr/share/hypnotix/hypnotix.ui.h:24 381 | msgid "OK" 382 | msgstr "確定" 383 | 384 | #: usr/share/hypnotix/hypnotix.ui.h:25 385 | msgid "Username:" 386 | msgstr "用戶名:" 387 | 388 | #: usr/share/hypnotix/hypnotix.ui.h:26 389 | msgid "Password:" 390 | msgstr "密碼:" 391 | 392 | #: usr/share/hypnotix/hypnotix.ui.h:27 393 | msgid "Browse..." 394 | msgstr "瀏覽..." 395 | 396 | #: usr/share/hypnotix/hypnotix.ui.h:28 397 | msgid "EPG:" 398 | msgstr "電子節目表:" 399 | 400 | #: usr/share/hypnotix/hypnotix.ui.h:29 401 | msgid "Type:" 402 | msgstr "類型:" 403 | 404 | #: usr/share/hypnotix/hypnotix.ui.h:30 405 | msgid "Are you sure you want to delete this provider?" 406 | msgstr "確定要刪除這個供應端嗎?" 407 | 408 | #: usr/share/hypnotix/hypnotix.ui.h:31 409 | msgid "No" 410 | msgstr "不要" 411 | 412 | #: usr/share/hypnotix/hypnotix.ui.h:32 413 | msgid "Yes" 414 | msgstr "確定" 415 | 416 | #: usr/share/hypnotix/hypnotix.ui.h:33 417 | msgid "Are you sure you want to reset to the default providers?" 418 | msgstr "確定要換成預設的供應端嗎?" 419 | 420 | #: usr/share/hypnotix/hypnotix.ui.h:34 421 | msgid "Logo URL:" 422 | msgstr "Logo 位址:" 423 | 424 | #: usr/share/hypnotix/hypnotix.ui.h:35 425 | msgid "This channel will be added to your favorites." 426 | msgstr "加入這頻道到最愛" 427 | 428 | #: usr/share/hypnotix/hypnotix.ui.h:36 429 | msgid "" 430 | "Note: If the logo is a local file, upload it to imgur.com to get a URL." 431 | msgstr "註:如果 logo 是本地檔案,上傳到 imgur.com 可取得它的位址。" 432 | 433 | #: usr/share/hypnotix/hypnotix.ui.h:37 434 | msgid "Currently playing:" 435 | msgstr "目前播放:" 436 | 437 | #: usr/share/hypnotix/hypnotix.ui.h:38 438 | msgid "Show" 439 | msgstr "顯示" 440 | 441 | #: usr/share/hypnotix/hypnotix.ui.h:39 442 | msgid "Pause" 443 | msgstr "暫停" 444 | 445 | #: usr/share/hypnotix/hypnotix.ui.h:40 446 | msgid "Stop" 447 | msgstr "停止" 448 | 449 | #: usr/share/hypnotix/hypnotix.ui.h:43 450 | msgid "Fullscreen" 451 | msgstr "全螢幕" 452 | 453 | #: usr/share/hypnotix/hypnotix.ui.h:44 usr/share/hypnotix/shortcuts.ui.h:6 454 | msgid "Search" 455 | msgstr "搜尋" 456 | 457 | #: usr/share/hypnotix/hypnotix.ui.h:48 458 | msgid "Video" 459 | msgstr "影片" 460 | 461 | #: usr/share/hypnotix/hypnotix.ui.h:50 462 | msgid "Audio" 463 | msgstr "音訊" 464 | 465 | #: usr/share/hypnotix/shortcuts.ui.h:1 466 | msgid "Main shortcuts" 467 | msgstr "主快捷" 468 | 469 | #: usr/share/hypnotix/shortcuts.ui.h:4 470 | msgid "Play previous/next channel" 471 | msgstr "播放上/下一個頻道" 472 | 473 | #: usr/share/hypnotix/shortcuts.ui.h:5 474 | msgid "Toggle Fullscreen" 475 | msgstr "切換全鎣幕" 476 | 477 | #: usr/share/hypnotix/shortcuts.ui.h:8 478 | msgid "Reload all providers" 479 | msgstr "重新載入全部供應端" 480 | -------------------------------------------------------------------------------- /test: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | sudo rm -rf /usr/lib/hypnotix 3 | sudo rm -rf /usr/share/hypnotix 4 | sudo cp -R usr / 5 | hypnotix 6 | -------------------------------------------------------------------------------- /usr/bin/hypnotix: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | CACHEDIR="${XDG_CACHE_HOME:-$HOME/.cache}" 4 | mkdir -p "${CACHEDIR}"/hypnotix/favorites 5 | touch "${CACHEDIR}"/hypnotix/favorites/list 6 | 7 | mkdir -p "${CACHEDIR}"/hypnotix/yt-dlp 8 | if [ $(gsettings get org.x.hypnotix use-local-ytdlp) = true ] 9 | then 10 | echo "Local version of yt-dlp selected." 11 | export PATH="${CACHEDIR}/hypnotix/yt-dlp:${PATH}" 12 | else 13 | echo "System version of yt-dlp selected." 14 | fi 15 | 16 | /usr/lib/hypnotix/hypnotix.py & 17 | -------------------------------------------------------------------------------- /usr/lib/hypnotix/common.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | import os 3 | import re 4 | import threading 5 | 6 | import requests 7 | from gi.repository import GLib, GObject 8 | 9 | # M3U parsing regex 10 | PARAMS = re.compile(r'(\S+)="(.*?)"') 11 | EXTINF = re.compile(r'^#EXTINF:(?P-?\d+?) ?(?P.*),(?P.*?)$') 12 | SERIES = re.compile(r"(?P<series>.*?) S(?P<season>.\d{1,2}).*E(?P<episode>.\d{1,2}.*)$", re.IGNORECASE) 13 | 14 | PROVIDERS_PATH = os.path.join(GLib.get_user_cache_dir(), "hypnotix", "providers") 15 | 16 | TV_GROUP, MOVIES_GROUP, SERIES_GROUP = range(3) 17 | 18 | FAVORITES_PATH = os.path.join(GLib.get_user_cache_dir(), "hypnotix", "favorites", "list") 19 | 20 | # Used as a decorator to run things in the background 21 | def async_function(func): 22 | def wrapper(*args, **kwargs): 23 | thread = threading.Thread(target=func, args=args, kwargs=kwargs) 24 | thread.daemon = True 25 | thread.start() 26 | return thread 27 | 28 | return wrapper 29 | 30 | 31 | # Used as a decorator to run things in the main loop, from another thread 32 | def idle_function(func): 33 | def wrapper(*args): 34 | GObject.idle_add(func, *args) 35 | 36 | return wrapper 37 | 38 | 39 | def slugify(string): 40 | """ 41 | Normalizes string, converts to lowercase, removes non-alpha characters, 42 | and converts spaces to hyphens. 43 | """ 44 | return "".join(x.lower() for x in string if x.isalnum()) 45 | 46 | 47 | class Provider: 48 | def __init__(self, name, provider_info): 49 | if provider_info is not None: 50 | self.name, self.type_id, self.url, self.username, self.password, self.epg = provider_info.split(":::") 51 | else: 52 | self.name = name 53 | self.path = os.path.join(PROVIDERS_PATH, slugify(self.name)) 54 | self.groups = [] 55 | self.channels = [] 56 | self.movies = [] 57 | self.series = [] 58 | 59 | def get_info(self): 60 | return "%s:::%s:::%s:::%s:::%s:::%s" % (self.name, self.type_id, self.url, self.username, self.password, self.epg) 61 | 62 | 63 | class Group: 64 | def __init__(self, name): 65 | if "VOD" in name.split(): 66 | self.group_type = MOVIES_GROUP 67 | elif "SERIES" in name.split(): 68 | self.group_type = SERIES_GROUP 69 | else: 70 | self.group_type = TV_GROUP 71 | self.name = name 72 | self.channels = [] 73 | self.series = [] 74 | 75 | 76 | class Serie: 77 | def __init__(self, name): 78 | self.name = name 79 | self.logo = None 80 | self.logo_path = None 81 | self.seasons = {} 82 | self.episodes = [] 83 | 84 | 85 | class Season: 86 | def __init__(self, name): 87 | self.name = name 88 | self.episodes = {} 89 | 90 | 91 | class Channel: 92 | def __init__(self, provider, info): 93 | self.info = info 94 | self.id = None 95 | self.name = None 96 | self.logo = None 97 | self.logo_path = None 98 | self.group_title = None 99 | self.title = None 100 | self.url = None 101 | match = EXTINF.fullmatch(info) 102 | if match is not None: 103 | res = match.groupdict() 104 | if 'params' in res: 105 | params = dict(PARAMS.findall(res['params'])) 106 | if "tvg-name" in params and params['tvg-name'].strip() != "": 107 | self.name = params['tvg-name'].strip() 108 | if "tvg-logo" in params and params['tvg-logo'].strip() != "": 109 | self.logo = params['tvg-logo'].strip() 110 | if "group-title" in params and params['group-title'].strip() != "": 111 | self.group_title = params['group-title'].strip().replace(";", " ").replace(" ", " ") 112 | if 'title' in res: 113 | self.title = res['title'] 114 | if self.name is None and "," in info: 115 | self.name = info.split(",")[-1].strip() 116 | if self.logo is not None: 117 | if self.logo.startswith("file://"): 118 | self.logo_path = self.logo[7:] 119 | else: 120 | ext = None 121 | for known_ext in [".png", ".jpg", ".gif", ".jpeg"]: 122 | if self.logo.lower().endswith(known_ext): 123 | ext = known_ext 124 | break 125 | if ext == ".jpeg": 126 | ext = ".jpg" 127 | if provider is None: 128 | # favorite channel, no provider 129 | provider_name = "favorites" 130 | else: 131 | provider_name = provider.name 132 | self.logo_path = os.path.join(PROVIDERS_PATH, "%s-%s%s" % (slugify(provider_name), slugify(self.name), ext)) 133 | 134 | class Manager: 135 | def __init__(self, settings): 136 | os.system("mkdir -p '%s'" % PROVIDERS_PATH) 137 | self.verbose = False 138 | self.settings = settings 139 | 140 | def debug(self, *args): 141 | if self.verbose: 142 | print(args) 143 | 144 | def get_playlist(self, provider, refresh=False) -> bool: 145 | """Get the playlist from the provided URL 146 | 147 | Args: 148 | provider ([type]): [description] 149 | refresh (bool, optional): [description]. Defaults to False. 150 | 151 | Returns: 152 | bool: True for SUCCESS, False for ERROR 153 | """ 154 | ret_code = True 155 | 156 | if "file://" in provider.url: 157 | # local file 158 | provider.path = provider.url.replace("file://", "") 159 | 160 | elif "://" in provider.url: 161 | # Other protocol, assume it's http 162 | if refresh or not os.path.exists(provider.path): 163 | # Assume it is not going to make it 164 | ret_code = False 165 | 166 | headers = { 167 | 'User-Agent': self.settings.get_string("user-agent"), 168 | 'Referer': self.settings.get_string("http-referer") 169 | } 170 | try: 171 | response = requests.get(provider.url, headers=headers, timeout=(5, 120), stream=True) 172 | 173 | # If there is an answer from the remote server 174 | if response.status_code == 200: 175 | # Set downloaded size 176 | downloaded_bytes = 0 177 | # Get total playlist byte size 178 | total_content_size = int(response.headers.get('content-length', 15)) 179 | # Set stream blocks 180 | block_bytes = int(4 * 1024 * 1024) # 4 MB 181 | 182 | with open(provider.path, "w", encoding="utf-8") as file: 183 | # Grab data by block_bytes 184 | for data in response.iter_content(block_bytes, decode_unicode=True): 185 | downloaded_bytes += block_bytes 186 | print("{} bytes".format(downloaded_bytes)) 187 | file.write(str(data)) 188 | if downloaded_bytes < total_content_size: 189 | print("The file size is incorrect, deleting") 190 | os.remove(provider.path) 191 | else: 192 | # Set the datatime when it was last retreived 193 | # self.settings.set_ 194 | ret_code = True 195 | else: 196 | print("HTTP error %d while retrieving from %s!" % (response.status_code, provider.url)) 197 | except Exception as e: 198 | print(e) 199 | else: 200 | # No protocol, assume it's local 201 | provider.path = provider.url 202 | 203 | return ret_code 204 | 205 | def check_playlist(self, provider): 206 | legit = False 207 | if os.path.exists(provider.path): 208 | with open(provider.path, "r", encoding="utf-8", errors="ignore") as file: 209 | content = file.read() 210 | if "#EXTM3U" in content and "#EXTINF" in content: 211 | legit = True 212 | self.debug("Content looks legit: %s" % provider.name) 213 | else: 214 | self.debug("Nope: %s" % provider.path) 215 | return legit 216 | 217 | def load_channels(self, provider): 218 | with open(provider.path, "r", encoding="utf-8", errors="ignore") as file: 219 | channel = None 220 | group = None 221 | groups = {} 222 | series = {} 223 | for line in file: 224 | line = line.strip() 225 | if line.startswith("#EXTM3U"): 226 | continue 227 | if line.startswith("#EXTINF"): 228 | channel = Channel(provider, line) 229 | self.debug("New channel: ", line) 230 | continue 231 | if "://" in line and not (line.startswith("#")): 232 | self.debug(" ", line) 233 | if channel is None: 234 | self.debug(" --> channel is None") 235 | continue 236 | if channel.url is not None: 237 | # We already found the URL, skip the line 238 | self.debug(" --> channel URL was already found") 239 | continue 240 | if channel.name is None or "***" in channel.name: 241 | self.debug(" --> channel name is None") 242 | continue 243 | channel.url = line 244 | self.debug(" --> URL found: ", line) 245 | 246 | serie = None 247 | f = SERIES.fullmatch(channel.name) 248 | if f is not None: 249 | res = f.groupdict() 250 | series_name = res['series'] 251 | if series_name in series.keys(): 252 | serie = series[series_name] 253 | else: 254 | serie = Serie(series_name) 255 | # todo put in group 256 | provider.series.append(serie) 257 | series[series_name] = serie 258 | serie.logo = channel.logo 259 | serie.logo_path = channel.logo_path 260 | season_name = res['season'] 261 | if season_name in serie.seasons.keys(): 262 | season = serie.seasons[season_name] 263 | else: 264 | season = Season(season_name) 265 | serie.seasons[season_name] = season 266 | 267 | episode_name = res['episode'] 268 | season.episodes[episode_name] = channel 269 | serie.episodes.append(channel) 270 | 271 | if channel.group_title is not None and channel.group_title.strip() != "": 272 | if group is None or group.name != channel.group_title: 273 | if channel.group_title in groups.keys(): 274 | group = groups[channel.group_title] 275 | else: 276 | group = Group(channel.group_title) 277 | provider.groups.append(group) 278 | groups[channel.group_title] = group 279 | if serie is not None and serie not in group.series: 280 | group.series.append(serie) 281 | group.channels.append(channel) 282 | if group.group_type == TV_GROUP: 283 | provider.channels.append(channel) 284 | elif group.group_type == MOVIES_GROUP: 285 | provider.movies.append(channel) 286 | else: 287 | provider.channels.append(channel) 288 | 289 | def load_favorites(self): 290 | favorites = [] 291 | with open(FAVORITES_PATH, 'r', encoding="utf-8", errors="ignore") as f: 292 | for line in f: 293 | favorites.append(line.strip()) 294 | return favorites 295 | 296 | def save_favorites(self, favorites): 297 | with open(FAVORITES_PATH, "w", encoding="utf-8") as f: 298 | for fav in favorites: 299 | f.write(f"{fav}\n") 300 | -------------------------------------------------------------------------------- /usr/share/applications/hypnotix.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Name=Hypnotix 3 | Name[ar]=هيبنوتكس 4 | Name[eo]=TeleVidilo 5 | Name[he]=היפנוטיקס 6 | Name[ko]=힙노틱스 7 | Name[sr]=Хипнотикс 8 | Name[zh_CN]=网络电视 Hypnotix 9 | Comment=Watch TV 10 | Comment[am]=ቲቪ መመልከቻ 11 | Comment[ar]=شاهد التلفاز 12 | Comment[ast]=Ver TV 13 | Comment[be]=Глядзець тэлебачанне 14 | Comment[bg]=Гледане на телевизия 15 | Comment[br]=Sellout ouzh an tele 16 | Comment[ca]=Mirar TV 17 | Comment[cs]=Sledovat TV 18 | Comment[cy]=Gwylio teledu 19 | Comment[da]=Se TV 20 | Comment[de]=Fernsehen 21 | Comment[el]=Δείτε τηλεόραση 22 | Comment[eo]=Spekti televidon 23 | Comment[es]=Ver la TV 24 | Comment[et]=Vaata TV-d 25 | Comment[eu]=Ikusi TB 26 | Comment[fa]=تماشای تلویزیون 27 | Comment[fi]=Katso televisiota 28 | Comment[fr]=Regarder la télévision 29 | Comment[fr_CA]=Regarder la télévision 30 | Comment[he]=צפיה בטלוויזיה 31 | Comment[hi]=टीवी देखें 32 | Comment[hr]=Gledajte TV 33 | Comment[hu]=TV nézés 34 | Comment[ia]=Reguardar TV 35 | Comment[id]=Tonton TV 36 | Comment[ie]=Regardar TV 37 | Comment[is]=Horfa á sjónvarp 38 | Comment[it]=Visualizzatore TV 39 | Comment[ja]=テレビを視聴 40 | Comment[kab]=Wali tiliẓri 41 | Comment[kn]=ಟಿವಿ ವೀಕ್ಷಿಸು 42 | Comment[ko]=TV 보기 43 | Comment[la]=TV Specta 44 | Comment[lt]=Žiūrėti TV 45 | Comment[nb]=Se TV 46 | Comment[nl]=TV kijken 47 | Comment[oc]=Agachar la TV 48 | Comment[pl]=Oglądaj telewizję 49 | Comment[pt]=Ver TV 50 | Comment[pt_BR]=Assistir TV 51 | Comment[ro]=Privește TV 52 | Comment[ru]=Смотреть ТВ 53 | Comment[sk]=Pozerať TV 54 | Comment[sl]=Glej TV 55 | Comment[sq]=Shiko TV 56 | Comment[sr]=Гледај ТВ 57 | Comment[sr@latin]=Gledaj TV 58 | Comment[sv]=Se på TV 59 | Comment[th]=รับชมทีวี 60 | Comment[tr]=TV Seyret 61 | Comment[uk]=Дивитися TV 62 | Comment[uz]=TV ko‘rish 63 | Comment[vi]=Xem TV 64 | Comment[zh_CN]=观看电视 65 | Comment[zh_TW]=觀賞電視 66 | Exec=hypnotix 67 | Icon=hypnotix 68 | Terminal=false 69 | Type=Application 70 | Encoding=UTF-8 71 | Categories=AudioVideo;Video;Player;TV; 72 | Keywords=Television;Stream; 73 | StartupNotify=false 74 | -------------------------------------------------------------------------------- /usr/share/glib-2.0/schemas/org.x.hypnotix.gschema.xml: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8"?> 2 | <schemalist> 3 | <schema id="org.x.hypnotix" path="/org/x/hypnotix/"> 4 | <key type="s" name="mpv-options"> 5 | <default>"hwdec=auto-safe"</default> 6 | <summary></summary> 7 | <description></description> 8 | </key> 9 | <key type="s" name="user-agent"> 10 | <default>"Mozilla/5.0"</default> 11 | <summary></summary> 12 | <description></description> 13 | </key> 14 | <key type="s" name="http-referer"> 15 | <default>""</default> 16 | <summary></summary> 17 | <description></description> 18 | </key> 19 | <key type="s" name="active-provider"> 20 | <default>"Free-TV"</default> 21 | <summary>Provider selected by default</summary> 22 | <description></description> 23 | </key> 24 | <key type="as" name="providers"> 25 | <default>['Free-TV:::url:::https://raw.githubusercontent.com/Free-TV/IPTV/master/playlist.m3u8:::::::::']</default> 26 | <summary>Format: name:::type:::url(or path):::username:::password:::epg</summary> 27 | <description></description> 28 | </key> 29 | <key type="b" name="use-local-ytdlp"> 30 | <default>false</default> 31 | <summary></summary> 32 | <description></description> 33 | </key> 34 | <key type="b" name="inhibit-pm"> 35 | <default>true</default> 36 | <summary>Disable screensaver/suspend when playback is active.</summary> 37 | <description></description> 38 | </key> 39 | </schema> 40 | </schemalist> 41 | -------------------------------------------------------------------------------- /usr/share/hypnotix/countries.list: -------------------------------------------------------------------------------- 1 | AW:Aruba 2 | AF:Afghanistan 3 | AO:Angola 4 | AI:Anguilla 5 | AX:Åland Islands 6 | AL:Albania 7 | AD:Andorra 8 | AE:United Arab Emirates 9 | AR:Argentina 10 | AM:Armenia 11 | AS:American Samoa 12 | AQ:Antarctica 13 | AG:Antigua and Barbuda 14 | AU:Australia 15 | AT:Austria 16 | AZ:Azerbaijan 17 | BI:Burundi 18 | BE:Belgium 19 | BJ:Benin 20 | BQ:Bonaire 21 | BQ:Sint Eustatius and Saba 22 | BF:Burkina Faso 23 | BD:Bangladesh 24 | BG:Bulgaria 25 | BH:Bahrain 26 | BS:Bahamas 27 | BA:Bosnia and Herzegovina 28 | BL:Saint Barthélemy 29 | BY:Belarus 30 | BZ:Belize 31 | BM:Bermuda 32 | BO:Bolivia 33 | BR:Brazil 34 | BB:Barbados 35 | BN:Brunei Darussalam 36 | BN:Brunei 37 | BT:Bhutan 38 | BV:Bouvet Island 39 | BW:Botswana 40 | CF:Central African Republic 41 | CA:Canada 42 | CC:Cocos (Keeling) Islands 43 | CH:Switzerland 44 | CL:Chile 45 | CN:China 46 | CI:Côte d'Ivoire 47 | CI:Ivory Coast 48 | CM:Cameroon 49 | CD:Congo, The Democratic Republic of the 50 | CG:Congo 51 | CK:Cook Islands 52 | CO:Colombia 53 | KM:Comoros 54 | CV:Cabo Verde 55 | CV:Cape Verde 56 | CR:Costa Rica 57 | CU:Cuba 58 | CW:Curaçao 59 | CW:Curacao 60 | CX:Christmas Island 61 | KY:Cayman Islands 62 | CY:Cyprus 63 | CZ:Czechia 64 | CZ:Czech Republic 65 | DE:Germany 66 | DJ:Djibouti 67 | DM:Dominica 68 | DK:Denmark 69 | DO:Dominican Republic 70 | DZ:Algeria 71 | EC:Ecuador 72 | EG:Egypt 73 | ER:Eritrea 74 | EH:Western Sahara 75 | ES:Spain 76 | EE:Estonia 77 | ET:Ethiopia 78 | FI:Finland 79 | FJ:Fiji 80 | FK:Falkland 81 | FR:France 82 | FR:French Southern Territories 83 | FO:Faroe 84 | FM:Micronesia 85 | GA:Gabon 86 | GB:United Kingdom 87 | GE:Georgia 88 | GG:Guernsey 89 | GH:Ghana 90 | GI:Gibraltar 91 | GN:Guinea 92 | GP:Guadeloupe 93 | GM:Gambia 94 | GW:Guinea-Bissau 95 | GQ:Equatorial Guinea 96 | GR:Greece 97 | GD:Grenada 98 | GL:Greenland 99 | GT:Guatemala 100 | GF:French Guiana 101 | GU:Guam 102 | GY:Guyana 103 | HK:Hong Kong 104 | HM:Heard Island and McDonald Islands 105 | HN:Honduras 106 | HR:Croatia 107 | HT:Haiti 108 | HU:Hungary 109 | ID:Indonesia 110 | IM:Isle of Man 111 | IN:India 112 | IE:Ireland 113 | IR:Iran 114 | IQ:Iraq 115 | IS:Iceland 116 | IL:Israel 117 | IT:Italy 118 | JM:Jamaica 119 | JE:Jersey 120 | JO:Jordan 121 | JP:Japan 122 | KZ:Kazakhstan 123 | KE:Kenya 124 | KG:Kyrgyzstan 125 | KH:Cambodia 126 | KI:Kiribati 127 | KN:Saint Kitts and Nevis 128 | KP:North Korea 129 | KR:South Korea 130 | KR:Korea 131 | KW:Kuwait 132 | LA:Lao 133 | LB:Lebanon 134 | LR:Liberia 135 | LY:Libya 136 | LC:Saint Lucia 137 | LI:Liechtenstein 138 | LK:Sri Lanka 139 | LS:Lesotho 140 | LT:Lithuania 141 | LU:Luxembourg 142 | LV:Latvia 143 | MO:Macao 144 | MO:Macau 145 | MF:Saint Martin 146 | MA:Morocco 147 | MC:Monaco 148 | MD:Moldova 149 | MG:Madagascar 150 | MV:Maldives 151 | MX:Mexico 152 | MH:Marshall Islands 153 | MK:North Macedonia 154 | ML:Mali 155 | MT:Malta 156 | MM:Myanmar 157 | ME:Montenegro 158 | MN:Mongolia 159 | MP:Northern Mariana Islands 160 | MZ:Mozambique 161 | MR:Mauritania 162 | MS:Montserrat 163 | MQ:Martinique 164 | MU:Mauritius 165 | MW:Malawi 166 | MY:Malaysia 167 | YT:Mayotte 168 | NA:Namibia 169 | NC:New Caledonia 170 | NE:Niger 171 | NF:Norfolk Island 172 | NG:Nigeria 173 | NI:Nicaragua 174 | NU:Niue 175 | NL:Netherlands 176 | NO:Norway 177 | NP:Nepal 178 | NR:Nauru 179 | NZ:New Zealand 180 | OM:Oman 181 | PK:Pakistan 182 | PA:Panama 183 | PN:Pitcairn 184 | PE:Peru 185 | PH:Philippines 186 | PW:Palau 187 | PG:Papua New Guinea 188 | PL:Poland 189 | PR:Puerto Rico 190 | PT:Portugal 191 | PY:Paraguay 192 | PS:Palestine 193 | PF:French Polynesia 194 | QA:Qatar 195 | RE:Réunion 196 | RO:Romania 197 | RU:Russia 198 | RW:Rwanda 199 | SA:Saudi Arabia 200 | SD:Sudan 201 | SN:Senegal 202 | SG:Singapore 203 | GS:South Georgia and the South Sandwich Islands 204 | SH:Saint Helena, Ascension and Tristan da Cunha 205 | SH:Saint Helena 206 | SJ:Svalbard and Jan Mayen 207 | SB:Solomon Islands 208 | SL:Sierra Leone 209 | SV:El Salvador 210 | SM:San Marino 211 | SO:Somalia 212 | PM:Saint Pierre and Miquelon 213 | RS:Serbia 214 | SS:South Sudan 215 | ST:Sao Tome and Principe 216 | ST:São Tomé and Príncipe 217 | SR:Suriname 218 | SK:Slovakia 219 | SI:Slovenia 220 | SE:Sweden 221 | SZ:Eswatini 222 | SZ:Swaziland 223 | SX:Sint Maarten 224 | SC:Seychelles 225 | SY:Syria 226 | TC:Turks and Caicos Islands 227 | TD:Chad 228 | TG:Togo 229 | TH:Thailand 230 | TJ:Tajikistan 231 | TK:Tokelau 232 | TM:Turkmenistan 233 | TL:Timor-Leste 234 | TL:East Timor 235 | TO:Tonga 236 | TT:Trinidad and Tobago 237 | TT:Trinidad 238 | TT:Tobago 239 | TN:Tunisia 240 | TR:Turkey 241 | TV:Tuvalu 242 | TW:Taiwan 243 | TZ:Tanzania 244 | UG:Uganda 245 | UA:Ukraine 246 | UM:United States Minor Outlying Islands 247 | UY:Uruguay 248 | US:United States 249 | UZ:Uzbekistan 250 | VA:Vatican 251 | VC:Saint Vincent and the Grenadines 252 | VE:Venezuela 253 | VG:British Virgin Islands 254 | VI:U.S. Virgin Islands 255 | VN:Vietnam 256 | VN:Viet Nam 257 | VU:Vanuatu 258 | WF:Wallis and Futuna 259 | WS:Samoa 260 | YE:Yemen 261 | XK:Kosovo 262 | ZA:South Africa 263 | ZM:Zambia 264 | ZW:Zimbabwe 265 | US:USA 266 | GB:UK 267 | united_nations:International 268 | -------------------------------------------------------------------------------- /usr/share/hypnotix/generic_tv_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linuxmint/hypnotix/b8871b1b3f2f92fa37982d202809fa35bba77c32/usr/share/hypnotix/generic_tv_logo.png -------------------------------------------------------------------------------- /usr/share/hypnotix/hypnotix.css: -------------------------------------------------------------------------------- 1 | .hypnotix-info-section { 2 | background-color: #000000; 3 | color: #ffffff; 4 | } 5 | .season-label { 6 | font-family: "Ubuntu"; 7 | font-size: 18px; 8 | font-weight: bold; 9 | } -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/badges/de.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="48" 14 | height="48" 15 | viewBox="0 0 12.7 12.7" 16 | version="1.1" 17 | id="svg935" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="de.svg"> 20 | <defs 21 | id="defs929"> 22 | <linearGradient 23 | id="linearGradient3901"> 24 | <stop 25 | style="stop-color:#0664e7;stop-opacity:1" 26 | offset="0" 27 | id="stop3903" /> 28 | <stop 29 | style="stop-color:#4eaaf9;stop-opacity:1" 30 | offset="1" 31 | id="stop3905" /> 32 | </linearGradient> 33 | <linearGradient 34 | inkscape:collect="always" 35 | xlink:href="#linearGradient3901" 36 | id="linearGradient860" 37 | x1="-19.21335" 38 | y1="281.94028" 39 | x2="3.5974448" 40 | y2="281.89304" 41 | gradientUnits="userSpaceOnUse" 42 | gradientTransform="translate(13.726927,8.9818158)" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="11.2" 52 | inkscape:cx="-18.139044" 53 | inkscape:cy="46.77486" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | units="px" 58 | inkscape:pagecheckerboard="true" 59 | inkscape:window-width="2560" 60 | inkscape:window-height="1415" 61 | inkscape:window-x="2560" 62 | inkscape:window-y="0" 63 | inkscape:window-maximized="1" /> 64 | <metadata 65 | id="metadata932"> 66 | <rdf:RDF> 67 | <cc:Work 68 | rdf:about=""> 69 | <dc:format>image/svg+xml</dc:format> 70 | <dc:type 71 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 72 | <dc:title></dc:title> 73 | </cc:Work> 74 | </rdf:RDF> 75 | </metadata> 76 | <g 77 | inkscape:label="Calque 1" 78 | inkscape:groupmode="layer" 79 | id="layer1" 80 | transform="translate(0,-284.29998)"> 81 | <text 82 | xml:space="preserve" 83 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient860);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 84 | x="0.47413579" 85 | y="293.57944" 86 | id="text844"><tspan 87 | sodipodi:role="line" 88 | id="tspan842" 89 | x="0.47413579" 90 | y="293.57944" 91 | style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:8.46666622px;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu Bold';fill:url(#linearGradient860);fill-opacity:1;stroke-width:0.26458332px">DE</tspan></text> 92 | </g> 93 | </svg> 94 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/badges/en.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="48" 14 | height="48" 15 | viewBox="0 0 12.7 12.7" 16 | version="1.1" 17 | id="svg935" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="en.svg"> 20 | <defs 21 | id="defs929"> 22 | <linearGradient 23 | id="linearGradient3901"> 24 | <stop 25 | style="stop-color:#0664e7;stop-opacity:1" 26 | offset="0" 27 | id="stop3903" /> 28 | <stop 29 | style="stop-color:#4eaaf9;stop-opacity:1" 30 | offset="1" 31 | id="stop3905" /> 32 | </linearGradient> 33 | <linearGradient 34 | inkscape:collect="always" 35 | xlink:href="#linearGradient3901" 36 | id="linearGradient860" 37 | x1="-19.21335" 38 | y1="281.94028" 39 | x2="3.5974448" 40 | y2="281.89304" 41 | gradientUnits="userSpaceOnUse" 42 | gradientTransform="translate(13.836995,8.9860557)" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="11.2" 52 | inkscape:cx="-18.139044" 53 | inkscape:cy="46.77486" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | units="px" 58 | inkscape:pagecheckerboard="true" 59 | inkscape:window-width="2560" 60 | inkscape:window-height="1415" 61 | inkscape:window-x="2560" 62 | inkscape:window-y="0" 63 | inkscape:window-maximized="1" /> 64 | <metadata 65 | id="metadata932"> 66 | <rdf:RDF> 67 | <cc:Work 68 | rdf:about=""> 69 | <dc:format>image/svg+xml</dc:format> 70 | <dc:type 71 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 72 | <dc:title></dc:title> 73 | </cc:Work> 74 | </rdf:RDF> 75 | </metadata> 76 | <g 77 | inkscape:label="Calque 1" 78 | inkscape:groupmode="layer" 79 | id="layer1" 80 | transform="translate(0,-284.29998)"> 81 | <text 82 | xml:space="preserve" 83 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient860);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 84 | x="0.58420455" 85 | y="293.58368" 86 | id="text844"><tspan 87 | sodipodi:role="line" 88 | id="tspan842" 89 | x="0.58420455" 90 | y="293.58368" 91 | style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:8.46666622px;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu Bold';fill:url(#linearGradient860);fill-opacity:1;stroke-width:0.26458332px">EN</tspan></text> 92 | </g> 93 | </svg> 94 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/badges/es.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="48" 14 | height="48" 15 | viewBox="0 0 12.7 12.7" 16 | version="1.1" 17 | id="svg935" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="es.svg"> 20 | <defs 21 | id="defs929"> 22 | <linearGradient 23 | id="linearGradient3901"> 24 | <stop 25 | style="stop-color:#0664e7;stop-opacity:1" 26 | offset="0" 27 | id="stop3903" /> 28 | <stop 29 | style="stop-color:#4eaaf9;stop-opacity:1" 30 | offset="1" 31 | id="stop3905" /> 32 | </linearGradient> 33 | <linearGradient 34 | inkscape:collect="always" 35 | xlink:href="#linearGradient3901" 36 | id="linearGradient860" 37 | x1="-19.21335" 38 | y1="281.94028" 39 | x2="3.5974448" 40 | y2="281.89304" 41 | gradientUnits="userSpaceOnUse" 42 | gradientTransform="translate(14.404263,8.9945263)" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="11.2" 52 | inkscape:cx="-18.139044" 53 | inkscape:cy="46.77486" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | units="px" 58 | inkscape:pagecheckerboard="true" 59 | inkscape:window-width="2560" 60 | inkscape:window-height="1415" 61 | inkscape:window-x="2560" 62 | inkscape:window-y="0" 63 | inkscape:window-maximized="1" /> 64 | <metadata 65 | id="metadata932"> 66 | <rdf:RDF> 67 | <cc:Work 68 | rdf:about=""> 69 | <dc:format>image/svg+xml</dc:format> 70 | <dc:type 71 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 72 | <dc:title></dc:title> 73 | </cc:Work> 74 | </rdf:RDF> 75 | </metadata> 76 | <g 77 | inkscape:label="Calque 1" 78 | inkscape:groupmode="layer" 79 | id="layer1" 80 | transform="translate(0,-284.29998)"> 81 | <text 82 | xml:space="preserve" 83 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient860);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 84 | x="1.1514713" 85 | y="293.59213" 86 | id="text844"><tspan 87 | sodipodi:role="line" 88 | id="tspan842" 89 | x="1.1514713" 90 | y="293.59213" 91 | style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:8.46666622px;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu Bold';fill:url(#linearGradient860);fill-opacity:1;stroke-width:0.26458332px">ES</tspan></text> 92 | </g> 93 | </svg> 94 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/badges/fr.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="48" 14 | height="48" 15 | viewBox="0 0 12.7 12.7" 16 | version="1.1" 17 | id="svg935" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="fr.svg"> 20 | <defs 21 | id="defs929"> 22 | <linearGradient 23 | id="linearGradient3901"> 24 | <stop 25 | style="stop-color:#0664e7;stop-opacity:1" 26 | offset="0" 27 | id="stop3903" /> 28 | <stop 29 | style="stop-color:#4eaaf9;stop-opacity:1" 30 | offset="1" 31 | id="stop3905" /> 32 | </linearGradient> 33 | <linearGradient 34 | inkscape:collect="always" 35 | xlink:href="#linearGradient3901" 36 | id="linearGradient860" 37 | x1="-19.21335" 38 | y1="281.94028" 39 | x2="3.5974448" 40 | y2="281.89304" 41 | gradientUnits="userSpaceOnUse" 42 | gradientTransform="translate(14.095227,9.019923)" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="11.2" 52 | inkscape:cx="-18.139044" 53 | inkscape:cy="46.77486" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | units="px" 58 | inkscape:pagecheckerboard="true" 59 | inkscape:window-width="2560" 60 | inkscape:window-height="1415" 61 | inkscape:window-x="2560" 62 | inkscape:window-y="0" 63 | inkscape:window-maximized="1" /> 64 | <metadata 65 | id="metadata932"> 66 | <rdf:RDF> 67 | <cc:Work 68 | rdf:about=""> 69 | <dc:format>image/svg+xml</dc:format> 70 | <dc:type 71 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 72 | <dc:title></dc:title> 73 | </cc:Work> 74 | </rdf:RDF> 75 | </metadata> 76 | <g 77 | inkscape:label="Calque 1" 78 | inkscape:groupmode="layer" 79 | id="layer1" 80 | transform="translate(0,-284.29998)"> 81 | <text 82 | xml:space="preserve" 83 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient860);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 84 | x="0.84243613" 85 | y="293.61755" 86 | id="text844"><tspan 87 | sodipodi:role="line" 88 | id="tspan842" 89 | x="0.84243613" 90 | y="293.61755" 91 | style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:8.46666622px;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu Bold';fill:url(#linearGradient860);fill-opacity:1;stroke-width:0.26458332px">FR</tspan></text> 92 | </g> 93 | </svg> 94 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/badges/it.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="48" 14 | height="48" 15 | viewBox="0 0 12.7 12.7" 16 | version="1.1" 17 | id="svg935" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="it.svg"> 20 | <defs 21 | id="defs929"> 22 | <linearGradient 23 | id="linearGradient3901"> 24 | <stop 25 | style="stop-color:#0664e7;stop-opacity:1" 26 | offset="0" 27 | id="stop3903" /> 28 | <stop 29 | style="stop-color:#4eaaf9;stop-opacity:1" 30 | offset="1" 31 | id="stop3905" /> 32 | </linearGradient> 33 | <linearGradient 34 | inkscape:collect="always" 35 | xlink:href="#linearGradient3901" 36 | id="linearGradient860" 37 | x1="-19.21335" 38 | y1="281.94028" 39 | x2="3.5974448" 40 | y2="281.89304" 41 | gradientUnits="userSpaceOnUse" 42 | gradientTransform="translate(15.411792,8.986059)" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="11.2" 52 | inkscape:cx="-18.139044" 53 | inkscape:cy="46.77486" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | units="px" 58 | inkscape:pagecheckerboard="true" 59 | inkscape:window-width="2560" 60 | inkscape:window-height="1415" 61 | inkscape:window-x="2560" 62 | inkscape:window-y="0" 63 | inkscape:window-maximized="1" /> 64 | <metadata 65 | id="metadata932"> 66 | <rdf:RDF> 67 | <cc:Work 68 | rdf:about=""> 69 | <dc:format>image/svg+xml</dc:format> 70 | <dc:type 71 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 72 | <dc:title></dc:title> 73 | </cc:Work> 74 | </rdf:RDF> 75 | </metadata> 76 | <g 77 | inkscape:label="Calque 1" 78 | inkscape:groupmode="layer" 79 | id="layer1" 80 | transform="translate(0,-284.29998)"> 81 | <text 82 | xml:space="preserve" 83 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient860);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 84 | x="2.1590004" 85 | y="293.58368" 86 | id="text844"><tspan 87 | sodipodi:role="line" 88 | id="tspan842" 89 | x="2.1590004" 90 | y="293.58368" 91 | style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:8.46666622px;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu Bold';fill:url(#linearGradient860);fill-opacity:1;stroke-width:0.26458332px">IT</tspan></text> 92 | </g> 93 | </svg> 94 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/badges/movies.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="48" 14 | height="48" 15 | viewBox="0 0 12.7 12.7" 16 | version="1.1" 17 | id="svg935" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="movies.svg"> 20 | <defs 21 | id="defs929"> 22 | <linearGradient 23 | id="linearGradient3901"> 24 | <stop 25 | style="stop-color:#0685e7;stop-opacity:1;" 26 | offset="0" 27 | id="stop3903" /> 28 | <stop 29 | style="stop-color:#4eaef9;stop-opacity:1" 30 | offset="1" 31 | id="stop3905" /> 32 | </linearGradient> 33 | <linearGradient 34 | inkscape:collect="always" 35 | xlink:href="#linearGradient3901" 36 | id="linearGradient829" 37 | x1="-0.99710852" 38 | y1="290.64999" 39 | x2="13.697109" 40 | y2="290.64999" 41 | gradientUnits="userSpaceOnUse" 42 | gradientTransform="matrix(0.86428556,0,0,0.86428556,0.86178623,39.445401)" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="11.2" 52 | inkscape:cx="-18.139044" 53 | inkscape:cy="46.77486" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | units="px" 58 | inkscape:pagecheckerboard="true" 59 | inkscape:window-width="2560" 60 | inkscape:window-height="1415" 61 | inkscape:window-x="2560" 62 | inkscape:window-y="0" 63 | inkscape:window-maximized="1" /> 64 | <metadata 65 | id="metadata932"> 66 | <rdf:RDF> 67 | <cc:Work 68 | rdf:about=""> 69 | <dc:format>image/svg+xml</dc:format> 70 | <dc:type 71 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 72 | <dc:title></dc:title> 73 | </cc:Work> 74 | </rdf:RDF> 75 | </metadata> 76 | <g 77 | inkscape:label="Calque 1" 78 | inkscape:groupmode="layer" 79 | id="layer1" 80 | transform="translate(0,-284.29998)"> 81 | <path 82 | inkscape:connector-curvature="0" 83 | style="display:inline;fill:url(#linearGradient829);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.09071428;enable-background:new" 84 | d="m -2.5e-7,285.16176 v 0.99786 0.72571 0.99786 5.53357 0.99786 0.72572 0.99785 H 1.0885709 v -0.90715 H 2.358571 v 0.90715 h 7.982857 v -0.90715 h 1.27 v 0.90715 H 12.7 v -0.99785 -0.72572 -6.53143 -0.99786 -0.72571 -0.99786 h -1.088572 v 0.90715 h -1.27 v -0.90715 H 2.358571 v 0.90715 H 1.0885709 v -0.90715 z m 1.08857115,1.72357 H 2.358571 v 0.90715 H 1.0885709 Z m 9.2528571,0 h 1.27 v 0.90715 h -1.27 z m -9.2528571,1.72358 H 2.358571 v 0.81643 H 1.0885709 Z m 9.2528571,0 h 1.27 v 0.81643 h -1.27 z m -9.2528571,1.63286 H 2.358571 v 0.81643 H 1.0885709 Z m 9.2528571,0 h 1.27 v 0.81643 h -1.27 z m -9.2528571,1.63285 H 2.358571 v 0.81643 H 1.0885709 Z m 9.2528571,0 h 1.27 v 0.81643 h -1.27 z m -9.2528571,1.63286 H 2.358571 v 0.90714 H 1.0885709 Z m 9.2528571,0 h 1.27 v 0.90714 h -1.27 z" 85 | id="rect5805" /> 86 | </g> 87 | </svg> 88 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/badges/music.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="48" 14 | height="48" 15 | viewBox="0 0 12.7 12.7" 16 | version="1.1" 17 | id="svg935" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="music.svg"> 20 | <defs 21 | id="defs929"> 22 | <linearGradient 23 | gradientTransform="matrix(0.09578053,0,0,0.09578053,-7.3945058,275.68874)" 24 | inkscape:collect="always" 25 | xlink:href="#linearGradient3901" 26 | id="linearGradient3907" 27 | x1="272" 28 | y1="284" 29 | x2="272" 30 | y2="28" 31 | gradientUnits="userSpaceOnUse" /> 32 | <linearGradient 33 | id="linearGradient3901"> 34 | <stop 35 | style="stop-color:#0685e7;stop-opacity:1;" 36 | offset="0" 37 | id="stop3903" /> 38 | <stop 39 | style="stop-color:#4eaef9;stop-opacity:1" 40 | offset="1" 41 | id="stop3905" /> 42 | </linearGradient> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="11.2" 52 | inkscape:cx="0.87881361" 53 | inkscape:cy="46.77486" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | units="px" 58 | inkscape:pagecheckerboard="true" 59 | inkscape:window-width="2560" 60 | inkscape:window-height="1355" 61 | inkscape:window-x="0" 62 | inkscape:window-y="0" 63 | inkscape:window-maximized="1" /> 64 | <metadata 65 | id="metadata932"> 66 | <rdf:RDF> 67 | <cc:Work 68 | rdf:about=""> 69 | <dc:format>image/svg+xml</dc:format> 70 | <dc:type 71 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 72 | <dc:title></dc:title> 73 | </cc:Work> 74 | </rdf:RDF> 75 | </metadata> 76 | <g 77 | inkscape:label="Calque 1" 78 | inkscape:groupmode="layer" 79 | id="layer1" 80 | transform="translate(0,-284.29998)"> 81 | <path 82 | inkscape:connector-curvature="0" 83 | style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:url(#linearGradient3907);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.38312209;marker:none;enable-background:accumulate" 84 | d="m 12.240503,284.29998 c 0,0.008 -8.428687,1.05359 -8.428687,1.05359 v 6.70163 c -0.2554154,-0.0864 -0.5295552,-0.1316 -0.8141348,-0.1316 -1.4018003,0 -2.538184,1.13639 -2.538184,2.5382 0,1.40181 1.1363837,2.53818 2.538184,2.53818 1.401801,0 2.538184,-1.13637 2.538184,-2.53818 v -6.80941 l 4.9805878,-0.57467 v 4.21134 c -0.255415,-0.0864 -0.5295552,-0.13179 -0.8141342,-0.13179 -1.401801,0 -2.5381848,1.13639 -2.5381848,2.53818 0,1.4018 1.1363838,2.53818 2.5381848,2.53818 1.4018002,0 2.5381842,-1.13638 2.5381842,-2.53818 0,-0.024 -0.0023,-0.048 -0.003,-0.0718 h 0.003 v -8.3808 z" 85 | id="path3863" /> 86 | </g> 87 | </svg> 88 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/movies.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="256mm" 14 | height="256mm" 15 | viewBox="0 0 256 256" 16 | version="1.1" 17 | id="svg8" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="movies.svg"> 20 | <defs 21 | id="defs2"> 22 | <linearGradient 23 | inkscape:collect="always" 24 | id="linearGradient818"> 25 | <stop 26 | style="stop-color:#9a4290;stop-opacity:1" 27 | offset="0" 28 | id="stop814" /> 29 | <stop 30 | style="stop-color:#3783c2;stop-opacity:1" 31 | offset="1" 32 | id="stop816" /> 33 | </linearGradient> 34 | <linearGradient 35 | inkscape:collect="always" 36 | xlink:href="#linearGradient818" 37 | id="linearGradient820" 38 | x1="-1" 39 | y1="169" 40 | x2="257" 41 | y2="169" 42 | gradientUnits="userSpaceOnUse" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="0.7" 52 | inkscape:cx="553.07973" 53 | inkscape:cy="380.36375" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | inkscape:pagecheckerboard="true" 58 | inkscape:window-width="2560" 59 | inkscape:window-height="1355" 60 | inkscape:window-x="0" 61 | inkscape:window-y="0" 62 | inkscape:window-maximized="1" /> 63 | <metadata 64 | id="metadata5"> 65 | <rdf:RDF> 66 | <cc:Work 67 | rdf:about=""> 68 | <dc:format>image/svg+xml</dc:format> 69 | <dc:type 70 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 71 | <dc:title /> 72 | </cc:Work> 73 | </rdf:RDF> 74 | </metadata> 75 | <g 76 | inkscape:label="Calque 1" 77 | inkscape:groupmode="layer" 78 | id="layer1" 79 | transform="translate(0,-41)"> 80 | <path 81 | d="M 257,40 H -1 V 298 H 257 V 40" 82 | style="fill:url(#linearGradient820);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.40589011" 83 | id="path32" 84 | inkscape:connector-curvature="0" /> 85 | <g 86 | transform="matrix(0.3125,0,0,0.3125,54.350004,89.000539)" 87 | id="g843" 88 | style="fill:#ffffff;fill-opacity:1"> 89 | <path 90 | inkscape:connector-curvature="0" 91 | id="path2" 92 | d="m 24,208 h 8.551 l 15.47,216.57 A 8,8 0 0 0 56,432 h 88 v 40 a 24.028,24.028 0 0 0 24,24 h 136 a 8,8 0 0 0 7.155,-4.422 l 8.845,-17.689 8.845,17.689 A 8,8 0 0 0 336,496 h 136 a 24.028,24.028 0 0 0 24,-24 V 376 A 24.028,24.028 0 0 0 472,352 H 356.663 l 9.288,-144 H 376 a 8,8 0 0 0 8,-8 V 184 A 24.039,24.039 0 0 0 368,161.376 V 149.157 A 32,32 0 0 0 351.987,97.009 Q 352,96.505 352,96 A 40,40 0 0 0 279.648,72.487 56.43,56.43 0 0 0 239.334,56 48.021,48.021 0 0 0 149.311,42 47.988,47.988 0 0 0 72.521,72.915 39.993,39.993 0 0 0 40,143.988 V 160 a 24.028,24.028 0 0 0 -24,24 v 16 a 8,8 0 0 0 8,8 z m 24.592,0 H 96 V 416 H 63.449 Z M 112,416 V 208 h 48 V 353.376 A 24.039,24.039 0 0 0 144,376 v 40 z M 240,352 V 208 h 48 v 144 z m -16,0 H 176 V 208 h 48 z m 256,24 v 96 a 8.009,8.009 0 0 1 -8,8 H 340.944 l -13.789,-27.578 a 8,8 0 0 0 -14.31,0 L 299.056,480 H 168 a 8.009,8.009 0 0 1 -8,-8 v -96 a 8.009,8.009 0 0 1 8,-8 h 131.056 l 13.789,27.578 a 8,8 0 0 0 14.31,0 L 340.944,368 H 472 a 8.009,8.009 0 0 1 8,8 z M 340.629,352 H 336 a 8,8 0 0 0 -7.155,4.422 L 320,374.111 311.155,356.422 A 8,8 0 0 0 304,352 V 208 h 45.917 z M 52.012,132.788 A 24,24 0 1 1 76.173,91.319 8,8 0 0 0 88.191,83.552 32.577,32.577 0 0 1 88,80 32,32 0 0 1 146.115,61.509 8,8 0 0 0 160.515,58.292 32,32 0 0 1 224,64 c 0,0.1 0,0.2 0,0.306 a 8,8 0 0 0 9.322,8.243 A 40.326,40.326 0 0 1 240,72 39.693,39.693 0 0 1 274.318,91.453 8,8 0 0 0 288.882,89.503 24.008,24.008 0 0 1 336,96 a 23.681,23.681 0 0 1 -0.759,6 8,8 0 0 0 7.981,10.022 c 0.259,-0.008 0.518,-0.017 0.778,-0.017 A 15.994,15.994 0 0 1 354.668,139.921 8,8 0 0 0 352,145.88 V 160 H 56 v -20.29 a 8,8 0 0 0 -3.988,-6.922 z M 32,184 a 8.009,8.009 0 0 1 8,-8 h 320 a 8.009,8.009 0 0 1 8,8 v 8 H 32 Z" 93 | style="fill:#ffffff;fill-opacity:1" /> 94 | <path 95 | inkscape:connector-curvature="0" 96 | id="path4" 97 | d="m 280,384 h -96 a 8,8 0 0 0 -8,8 v 64 a 8,8 0 0 0 8,8 h 96 a 8,8 0 0 0 8,-8 v -64 a 8,8 0 0 0 -8,-8 z m -8,64 h -80 v -48 h 80 z" 98 | style="fill:#ffffff;fill-opacity:1" /> 99 | <path 100 | inkscape:connector-curvature="0" 101 | id="path6" 102 | d="m 360,464 h 96 a 8,8 0 0 0 8,-8 v -64 a 8,8 0 0 0 -8,-8 h -96 a 8,8 0 0 0 -8,8 v 64 a 8,8 0 0 0 8,8 z m 8,-64 h 80 v 48 h -80 z" 103 | style="fill:#ffffff;fill-opacity:1" /> 104 | <path 105 | inkscape:connector-curvature="0" 106 | id="path8" 107 | d="m 224,136 a 32.036,32.036 0 0 0 32,-32 8,8 0 0 0 -16,0 16,16 0 0 1 -32,0 8,8 0 0 0 -16,0 32.036,32.036 0 0 0 32,32 z" 108 | style="fill:#ffffff;fill-opacity:1" /> 109 | <path 110 | inkscape:connector-curvature="0" 111 | id="path10" 112 | d="m 128,128 a 8,8 0 0 0 0,16 32,32 0 0 0 0,-64 8,8 0 0 0 0,16 16,16 0 0 1 0,32 z" 113 | style="fill:#ffffff;fill-opacity:1" /> 114 | </g> 115 | </g> 116 | </svg> 117 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/series.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="256mm" 14 | height="256mm" 15 | viewBox="0 0 256 256" 16 | version="1.1" 17 | id="svg8" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="series.svg"> 20 | <defs 21 | id="defs2"> 22 | <linearGradient 23 | inkscape:collect="always" 24 | id="linearGradient818"> 25 | <stop 26 | style="stop-color:#009b97;stop-opacity:1" 27 | offset="0" 28 | id="stop814" /> 29 | <stop 30 | style="stop-color:#283f87;stop-opacity:1" 31 | offset="1" 32 | id="stop816" /> 33 | </linearGradient> 34 | <linearGradient 35 | inkscape:collect="always" 36 | xlink:href="#linearGradient818" 37 | id="linearGradient820" 38 | x1="128.26785" 39 | y1="40.488094" 40 | x2="133.0238" 41 | y2="297.5119" 42 | gradientUnits="userSpaceOnUse" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="0.49497475" 52 | inkscape:cx="178.87852" 53 | inkscape:cy="20.628959" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | inkscape:pagecheckerboard="true" 58 | inkscape:window-width="2560" 59 | inkscape:window-height="1355" 60 | inkscape:window-x="0" 61 | inkscape:window-y="0" 62 | inkscape:window-maximized="1" /> 63 | <metadata 64 | id="metadata5"> 65 | <rdf:RDF> 66 | <cc:Work 67 | rdf:about=""> 68 | <dc:format>image/svg+xml</dc:format> 69 | <dc:type 70 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 71 | <dc:title /> 72 | </cc:Work> 73 | </rdf:RDF> 74 | </metadata> 75 | <g 76 | inkscape:label="Calque 1" 77 | inkscape:groupmode="layer" 78 | id="layer1" 79 | transform="translate(0,-41)"> 80 | <path 81 | d="M 257,39.997964 H -1 V 298.00204 H 257 V 39.997964" 82 | style="fill:url(#linearGradient820);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.40589017" 83 | id="path20" 84 | inkscape:connector-curvature="0" /> 85 | <g 86 | id="g871" 87 | transform="matrix(0.26458333,0,0,0.26458333,90.33631,138.1058)"> 88 | <path 89 | id="path854" 90 | d="m 405.14529,234.87383 h -14.76283 v -1.57606 c 0,-18.66331 -16.44661,-33.85701 -36.68032,-33.85701 H 196.32828 c -2.88567,-10.10268 -7.03559,-19.65544 -12.13795,-28.60158 0.94677,1.67244 2.02961,3.25984 2.90835,4.98331 h 179.08157 c 19.8652,0 36.01134,-17.82425 36.01134,-39.72473 v -263.07213 c 0,-21.90047 -16.14614,-39.72472 -36.01134,-39.72472 H -81.478338 c -19.865192,0 -36.011342,17.82425 -36.011342,39.72472 v 263.07213 c 0,21.90048 16.15182,39.72473 36.011342,39.72473 h 37.343623 c 0.87874,-1.72347 1.961575,-3.32221 2.919685,-4.99465 -5.108032,8.94614 -9.263622,18.4989 -12.149292,28.61292 h -15.635905 c -20.228032,0 -36.680313,15.1937 -36.680313,33.85701 v 1.57606 h -14.76284 c -11.39527,0 -20.67023,10.16504 -20.67023,22.64315 V 377.5869 c 0,12.48378 9.27496,22.64315 20.67023,22.64315 h 14.76284 2.9537 490.1556 2.9537 14.76283 c 11.39528,0 20.67024,-10.15937 20.67024,-22.64315 V 257.51698 c 0,-12.47811 -9.27496,-22.64315 -20.67024,-22.64315 z M -105.7259,376.60611 h -11.76378 l 0.0454,-118.10834 h 11.76379 z m 24.247562,-224.40756 c -6.712441,0 -12.387401,-7.37008 -12.387401,-16.10079 v -263.07213 c 0,-8.7307 5.67496,-16.10078 12.387401,-16.10078 H 366.18592 c 6.71811,0 12.39307,7.37008 12.39307,16.10078 v 263.07213 c 0,8.73071 -5.67496,16.10079 -12.39307,16.10079 H 171.48545 c 0.58394,0.69165 1.06583,1.46835 1.61575,2.17134 -6.15685,-7.76126 -13.16977,-14.78551 -20.90835,-20.95937 0.23244,0.18709 0.4989,0.3515 0.72567,0.53291 h 178.4126 c 19.53638,0 35.43307,-17.81858 35.43307,-39.724718 v -179.31402 c 0,-21.900472 -15.89669,-39.724732 -35.43307,-39.724732 H -46.623534 c -19.536378,0 -35.433071,17.82426 -35.433071,39.724732 v 179.30835 c 0,21.906138 15.896693,39.724718 35.433071,39.724718 h 36.6803201 c 0.23244,-0.18141 0.49322,-0.34582 0.72566,-0.53291 -7.7385801,6.17386 -14.7514901,13.19811 -20.9083401,20.95937 0.55559,-0.70299 1.03748,-1.47968 1.61575,-2.17134 H -81.478338 Z M 313.1497,17.178712 c -1.40598,0 -2.70425,0.18708 -3.91748,0.48189 C 303.55726,8.6634318 295.36514,1.7922518 284.08325,-1.7964082 v -7.93701 c 10.53921,-6.1455098 17.71653,-17.4500798 17.71653,-30.5064598 0,-19.53638 -15.89669,-35.43307 -35.43307,-35.43307 -19.53638,0 -35.43307,15.89669 -35.43307,35.43307 0,13.05638 7.17732,24.36095 17.71653,30.5064598 v 7.93701 c -2.36409,0.74834 -4.52409,1.70644999 -6.62173,2.73259999 L 177.78403,-4.4212882 V -17.165858 h 5.9074 c 3.25985,0 5.90174,-2.64189 5.90174,-5.9074 0,-3.26551 -2.64189,-5.9074 -5.90174,-5.9074 H 160.0675 c -3.26552,0 -5.90741,2.64189 -5.90741,5.9074 0,3.26551 2.64189,5.9074 5.90741,5.9074 h 5.9074 v 14.4170098 c -5.60693,2.31873999 -10.08,6.84283 -10.79433,13.9918102 -0.87874,8.7874 4.93228,14.17323 10.79433,17.03622 v 82.045978 h -58.06488 c 4.54677,1.32662 8.95181,2.94237 13.2548,4.73953 -4.62614,-1.92189 -9.35433,-3.67937 -14.24693,-5.06268 V 95.375242 c 21.15213,-12.28535 35.43307,-35.12126 35.43307,-61.28504 0,-39.0784202 -31.78772,-70.86614 -70.866144,-70.86614 -39.07843,0 -70.86613988,31.7877198 -70.86613988,70.86614 0,26.15811 14.28093988,48.99969 35.43306988,61.28504 v 14.626768 c -4.8926,1.38331 -9.62079,3.14079 -14.24693,5.06268 4.30299,-1.79716 8.70803,-3.41291 13.2548,-4.73953 h -81.68315 c -6.40063,0 -11.809134,-7.37007 -11.809134,-16.100778 v -179.31969 c 0,-8.73071 5.408504,-16.100792 11.809134,-16.100792 H 331.33112 c 6.4063,0 11.8148,7.370082 11.8148,16.100792 v 179.30835 c 0,8.730708 -5.4085,16.100788 -11.8148,16.100788 h -0.30614 l -0.0964,-74.057958 c -0.43087,-6.51968 -4.66583,-18.87874 -17.7789,-19.07716 z m 6.38929,37.07149 V 110.3195 h -12.1096 l 0.0227,-58.790558 v -15.02929 c 0.0113,-0.068 1.15087,-7.50614 5.76567,-7.50614 0.68032,0.0113 1.10552,0.39118 1.63843,0.62362 3.49795,1.49669 4.22362,6.7011 4.26898,7.04693 z m -141.75496,-35.12126 -3.85512,-0.33449 c -0.0794,-0.0227 -7.44945,-1.8085 -6.98456,-6.37795 0.50456,-5.0740102 7.72724,-5.2214202 8.11842,-5.2497602 l 2.72126,0.23244 50.24126,4.2066102 c -2.90834,3.32221 -5.32913,7.08662 -7.33606,11.17985 z m 38.68725,15.12 c -1.22457,4.48441 -2.16,9.16725 -2.6589,14.09386 l -0.59528,5.9074 V 110.3195 H 177.78403 V 30.915402 Z m 8.55496,55.06583 c 0,0 0,-33.0463 0,-35.06457 0,-2.01826 0.35149,-3.94582 0.60094,-5.9074 0.57827,-4.60913 1.42866,-8.98016 2.60221,-13.07905 1.19055,-4.1726 2.79496,-7.98237 4.88126,-11.41796 2.66456,-4.38236 6.14551,-8.10708 10.80567,-10.90771 1.47401,-0.89008 3.02173,-1.7178 4.72819,-2.40945 3.71338,-1.5137002 7.70456,-2.3981102 11.80913,-2.9196902 v -5.11937 -19.9445598 c -4.65449,-1.20756 -8.73071,-3.79276 -11.80913,-7.32473 -3.62268,-4.14992 -5.90741,-9.51874 -5.90741,-15.46016 0,-13.02236 10.59024,-23.62393 23.62394,-23.62393 13.0337,0 23.62394,10.60157 23.62394,23.62393 0,5.94142 -2.28473,11.30457 -5.9074,15.46016 -3.07843,3.53197 -7.15465,6.1115 -11.80914,7.32473 v 20.9366898 4.13291 c 0.36284,0.0454 0.72567,0.13606 1.09418,0.19843 3.70771,0.52724 7.33606,1.34929 10.71496,2.7212602 7.33606,2.98771 12.35338,7.80661 15.88535,13.83874 -2.5285,3.66803 -3.84378,8.01638 -4.26898,11.30456 l -0.0737,74.647558 H 225.02624 Z M 36.051746,134.78249 c 7.53448,-2.67591 15.42047,-4.59213 23.62393,-5.51622 V 79.659972 c -9.32031,-2.43213 -17.46141,-7.60252 -23.62393,-14.64945 -7.26804,-8.31685 -11.80914,-19.04315 -11.80914,-30.92599 0,-26.0560602 21.20315,-47.2422 47.24221,-47.2422 26.03905,0 47.242204,21.1861398 47.242204,47.2422 0,11.88284 -4.54677,22.60914 -11.80913,30.92599 -6.15685,7.04693 -14.303624,12.21732 -23.623944,14.64945 v 49.606298 c 8.1978,0.92409 16.08945,2.84031 23.623944,5.51622 30.08126,10.68094 53.74488,34.61102 64.47685,64.65827 H -28.425104 c 10.72629,-30.04725 34.3955901,-53.97733 64.47685,-64.65827 z M 366.75852,257.51698 V 376.60611 H -82.056605 V 257.51698 233.29777 c 0,-5.55024 5.975433,-10.23308 13.056378,-10.23308 H 353.70214 c 7.08095,0 13.05638,4.68284 13.05638,10.23308 z m 35.38772,119.08913 h -11.76378 l 0.0453,-118.10834 h 11.76378 z m -230.26961,-460.629918 -4.1726,4.17259 c -1.38331,1.38331 -13.54394,13.94079 -13.54394,27.79654 0,20.6589 12.39308,22.88126 17.71654,22.88126 5.32913,0 17.71654,-2.22803 17.71654,-22.88126 0,-13.85575 -12.15496,-26.41323 -13.53827,-27.79654 z m 0,43.04693 c -2.06362,0 -5.90173,0 -5.90173,-11.07213 0,-4.90394 3.00472,-10.36913 5.90173,-14.41134 2.89701,4.03654 5.9074,9.5074 5.9074,14.41134 0,11.07213 -3.84378,11.07213 -5.9074,11.07213 z" 91 | inkscape:connector-curvature="0" 92 | style="fill:#ffffff;fill-opacity:1;stroke-width:5.6692915" /> 93 | </g> 94 | </g> 95 | </svg> 96 | -------------------------------------------------------------------------------- /usr/share/hypnotix/pictures/tv.svg: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> 2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> 3 | 4 | <svg 5 | xmlns:dc="http://purl.org/dc/elements/1.1/" 6 | xmlns:cc="http://creativecommons.org/ns#" 7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 8 | xmlns:svg="http://www.w3.org/2000/svg" 9 | xmlns="http://www.w3.org/2000/svg" 10 | xmlns:xlink="http://www.w3.org/1999/xlink" 11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 | width="256mm" 14 | height="256mm" 15 | viewBox="0 0 256 256" 16 | version="1.1" 17 | id="svg8" 18 | inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)" 19 | sodipodi:docname="tv.svg"> 20 | <defs 21 | id="defs2"> 22 | <linearGradient 23 | inkscape:collect="always" 24 | id="linearGradient818-3"> 25 | <stop 26 | style="stop-color:#ec3547;stop-opacity:1" 27 | offset="0" 28 | id="stop814" /> 29 | <stop 30 | style="stop-color:#ef9944;stop-opacity:1" 31 | offset="1" 32 | id="stop816" /> 33 | </linearGradient> 34 | <linearGradient 35 | inkscape:collect="always" 36 | xlink:href="#linearGradient818-3" 37 | id="linearGradient820" 38 | x1="-1" 39 | y1="169" 40 | x2="257" 41 | y2="169" 42 | gradientUnits="userSpaceOnUse" /> 43 | </defs> 44 | <sodipodi:namedview 45 | id="base" 46 | pagecolor="#ffffff" 47 | bordercolor="#666666" 48 | borderopacity="1.0" 49 | inkscape:pageopacity="0.0" 50 | inkscape:pageshadow="2" 51 | inkscape:zoom="0.7" 52 | inkscape:cx="584.1872" 53 | inkscape:cy="377.81368" 54 | inkscape:document-units="mm" 55 | inkscape:current-layer="layer1" 56 | showgrid="false" 57 | inkscape:pagecheckerboard="true" 58 | inkscape:window-width="2560" 59 | inkscape:window-height="1355" 60 | inkscape:window-x="0" 61 | inkscape:window-y="0" 62 | inkscape:window-maximized="1" /> 63 | <metadata 64 | id="metadata5"> 65 | <rdf:RDF> 66 | <cc:Work 67 | rdf:about=""> 68 | <dc:format>image/svg+xml</dc:format> 69 | <dc:type 70 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 71 | <dc:title /> 72 | </cc:Work> 73 | </rdf:RDF> 74 | </metadata> 75 | <g 76 | inkscape:label="Calque 1" 77 | inkscape:groupmode="layer" 78 | id="layer1" 79 | transform="translate(0,-41)"> 80 | <path 81 | d="M -1,297.87436 H 257 V 40.125644 H -1 V 297.87436" 82 | style="fill:url(#linearGradient820);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.40550113" 83 | id="path66" 84 | inkscape:connector-curvature="0" /> 85 | <g 86 | id="g835" 87 | transform="matrix(0.26458333,0,0,0.26458333,155.92482,43.000955)"> 88 | <path 89 | id="path820" 90 | d="M 158.93612,332.99243 H -70.97884 L 40.59282,221.42078 c 3.94961,-3.95591 3.94961,-10.36221 0,-14.31812 -3.9559,-3.9496 -10.3685,-3.9496 -14.31811,0 L -98.61348,331.99716 -252.9064,177.70423 c -3.95591,-3.9496 -10.36221,-3.9496 -14.31811,0 -3.94961,3.95591 -3.94961,10.36851 0,14.31812 l 140.97008,140.97008 h -243.77324 c -10.48189,0 -18.97953,8.49764 -18.97953,18.97953 v 346.73387 c 0,10.48189 8.49764,18.98583 18.97953,18.98583 h 528.96379 c 10.48189,0 18.98582,-8.50394 18.98582,-18.98583 V 351.97196 c 0,-10.47559 -8.50393,-18.97953 -18.98582,-18.97953 z M 36.18967,658.21449 c 0,10.48819 -8.50393,18.98583 -18.98582,18.98583 h -346.73388 c -10.48189,0 -18.97953,-8.49764 -18.97953,-18.98583 V 392.4633 c 0,-10.48189 8.49764,-18.97953 18.97953,-18.97953 H 17.20385 c 10.48189,0 18.98582,8.49764 18.98582,18.97953 z m 70.86613,18.98583 c -16.7748,0 -30.36851,-13.5937 -30.36851,-30.36851 0,-16.7748 13.59371,-30.3685 30.36851,-30.3685 16.7748,0 30.3685,13.5937 30.3685,30.3685 0,16.77481 -13.5937,30.36851 -30.3685,30.36851 z m 0,-80.98898 c -16.7748,0 -30.36851,-13.5937 -30.36851,-30.36851 0,-16.7685 13.59371,-30.3685 30.36851,-30.3685 16.7748,0 30.3685,13.6 30.3685,30.3685 0,16.76851 -13.5937,30.36851 -30.3685,30.36851 z M 147.55344,474.72472 H 66.56448 c -5.5937,0 -10.12284,-4.53543 -10.12284,-10.12284 0,-5.5874 4.53544,-10.12283 10.12284,-10.12283 h 80.98896 c 5.5937,0 10.12283,4.53543 10.12283,10.12283 0,5.58741 -4.53543,10.12284 -10.12283,10.12284 z m 0,-40.49134 H 66.56448 c -5.5937,0 -10.12284,-4.53543 -10.12284,-10.12284 0,-5.5874 4.53544,-10.11653 10.12284,-10.11653 h 80.98896 c 5.5937,0 10.12283,4.52913 10.12283,10.11653 0,5.58741 -4.53543,10.12284 -10.12283,10.12284 z m 0,-40.49764 H 66.56448 c -5.5937,0 -10.12284,-4.52913 -10.12284,-10.12283 0,-5.5937 4.53544,-10.12284 10.12284,-10.12284 h 80.98896 c 5.5937,0 10.12283,4.52914 10.12283,10.12284 0,5.5937 -4.53543,10.12283 -10.12283,10.12283 z" 91 | inkscape:connector-curvature="0" 92 | style="fill:#ffffff;fill-opacity:1;stroke-width:6.29921293" /> 93 | </g> 94 | </g> 95 | </svg> 96 | -------------------------------------------------------------------------------- /usr/share/hypnotix/shortcuts.ui: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8"?> 2 | <interface> 3 | <!-- interface-requires gtk+ 3.17 --> 4 | <object class="GtkShortcutsWindow" id="shortcuts"> 5 | <property name="modal">1</property> 6 | <child> 7 | <object class="GtkShortcutsSection"> 8 | <property name="visible">1</property> 9 | <property name="section-name">Shortcuts</property> 10 | <property name="max-height">15</property> 11 | <child> 12 | <object class="GtkShortcutsGroup"> 13 | <property name="visible">1</property> 14 | <property name="title" translatable="yes">Main shortcuts</property> 15 | <child> 16 | <object class="GtkShortcutsShortcut"> 17 | <property name="visible">1</property> 18 | <property name="accelerator">F1</property> 19 | <property name="title" translatable="yes">About</property> 20 | </object> 21 | </child> 22 | <child> 23 | <object class="GtkShortcutsShortcut"> 24 | <property name="visible">1</property> 25 | <property name="accelerator">F2</property> 26 | <property name="title" translatable="yes">Stream Information</property> 27 | </object> 28 | </child> 29 | <child> 30 | <object class="GtkShortcutsShortcut"> 31 | <property name="visible">1</property> 32 | <property name="accelerator">Left Right</property> 33 | <property name="title" translatable="yes">Play previous/next channel</property> 34 | </object> 35 | </child> 36 | <child> 37 | <object class="GtkShortcutsShortcut"> 38 | <property name="visible">1</property> 39 | <property name="accelerator">F11 f</property> 40 | <property name="title" translatable="yes">Toggle Fullscreen</property> 41 | </object> 42 | </child> 43 | <child> 44 | <object class="GtkShortcutsShortcut"> 45 | <property name="visible">1</property> 46 | <property name="accelerator"><Control>F</property> 47 | <property name="title" translatable="yes">Search</property> 48 | </object> 49 | </child> 50 | <child> 51 | <object class="GtkShortcutsShortcut"> 52 | <property name="visible">1</property> 53 | <property name="accelerator"><Control>K</property> 54 | <property name="title" translatable="yes">Keyboard Shortcuts</property> 55 | </object> 56 | </child> 57 | <child> 58 | <object class="GtkShortcutsShortcut"> 59 | <property name="visible">1</property> 60 | <property name="accelerator"><Control>R</property> 61 | <property name="title" translatable="yes">Reload all providers</property> 62 | </object> 63 | </child> 64 | <child> 65 | <object class="GtkShortcutsShortcut"> 66 | <property name="visible">1</property> 67 | <property name="accelerator"><CONTROL>Q <CONTROL>W</property> 68 | <property name="title" translatable="yes">Quit</property> 69 | </object> 70 | </child> 71 | </object> 72 | </child> 73 | </object> 74 | </child> 75 | </object> 76 | </interface> 77 | --------------------------------------------------------------------------------