mirror of
https://github.com/Arrowar/StreamingCommunity.git
synced 2025-06-07 12:05:35 +00:00
Core: Add arm64 version.
This commit is contained in:
parent
f4529e5f05
commit
49e038a2c8
8
.github/.domain/domains.json
vendored
8
.github/.domain/domains.json
vendored
@ -48,10 +48,10 @@
|
|||||||
"time_change": "2025-05-26 23:22:45"
|
"time_change": "2025-05-26 23:22:45"
|
||||||
},
|
},
|
||||||
"streamingcommunity": {
|
"streamingcommunity": {
|
||||||
"domain": "bid",
|
"domain": "art",
|
||||||
"full_url": "https://streamingunity.bid/",
|
"full_url": "https://streamingunity.art/",
|
||||||
"old_domain": "bio",
|
"old_domain": "bid",
|
||||||
"time_change": "2025-06-03 15:27:02"
|
"time_change": "2025-06-05 11:18:33"
|
||||||
},
|
},
|
||||||
"altadefinizionegratis": {
|
"altadefinizionegratis": {
|
||||||
"domain": "cc",
|
"domain": "cc",
|
||||||
|
18
.github/workflows/build.yml
vendored
18
.github/workflows/build.yml
vendored
@ -75,9 +75,24 @@ jobs:
|
|||||||
executable: StreamingCommunity_linux_previous
|
executable: StreamingCommunity_linux_previous
|
||||||
separator: ':'
|
separator: ':'
|
||||||
|
|
||||||
|
# ARM64 build
|
||||||
|
- os: ubuntu-latest
|
||||||
|
artifact_name: StreamingCommunity_linux_arm64
|
||||||
|
executable: StreamingCommunity_linux_arm64
|
||||||
|
separator: ':'
|
||||||
|
architecture: arm64
|
||||||
|
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
|
# For ARM64, set architecture if present
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
shell: bash
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: Set up QEMU (for ARM64)
|
||||||
|
if: ${{ matrix.architecture == 'arm64' }}
|
||||||
|
uses: docker/setup-qemu-action@v3
|
||||||
|
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
@ -94,6 +109,7 @@ jobs:
|
|||||||
uses: actions/setup-python@v4
|
uses: actions/setup-python@v4
|
||||||
with:
|
with:
|
||||||
python-version: '3.12'
|
python-version: '3.12'
|
||||||
|
architecture: ${{ matrix.architecture || 'x64' }}
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -122,6 +138,8 @@ jobs:
|
|||||||
--hidden-import=Cryptodome.Util --hidden-import=Cryptodome.Util.Padding \
|
--hidden-import=Cryptodome.Util --hidden-import=Cryptodome.Util.Padding \
|
||||||
--hidden-import=Cryptodome.Random \
|
--hidden-import=Cryptodome.Random \
|
||||||
--hidden-import=telebot \
|
--hidden-import=telebot \
|
||||||
|
--hidden-import=curl_cffi --hidden-import=_cffi_backend \
|
||||||
|
--collect-all curl_cffi \
|
||||||
--additional-hooks-dir=pyinstaller/hooks \
|
--additional-hooks-dir=pyinstaller/hooks \
|
||||||
--add-data "StreamingCommunity${{ matrix.separator }}StreamingCommunity" \
|
--add-data "StreamingCommunity${{ matrix.separator }}StreamingCommunity" \
|
||||||
--name=${{ matrix.artifact_name }} test_run.py
|
--name=${{ matrix.artifact_name }} test_run.py
|
||||||
|
4
.github/workflows/update-loc.yml
vendored
4
.github/workflows/update-loc.yml
vendored
@ -16,12 +16,12 @@ jobs:
|
|||||||
- name: Count Lines of Code
|
- name: Count Lines of Code
|
||||||
run: |
|
run: |
|
||||||
LOC=$(cloc . --json | jq '.SUM.code')
|
LOC=$(cloc . --json | jq '.SUM.code')
|
||||||
echo "{\"schemaVersion\": 1, \"label\": \"Lines of Code\", \"message\": \"$LOC\", \"color\": \"green\"}" > .github/media/loc-badge.json
|
echo "{\"schemaVersion\": 1, \"label\": \"Lines of Code\", \"message\": \"$LOC\", \"color\": \"green\"}" > .github/.domain/loc-badge.json
|
||||||
|
|
||||||
- name: Commit and Push LOC Badge
|
- name: Commit and Push LOC Badge
|
||||||
run: |
|
run: |
|
||||||
git config --local user.name "GitHub Actions"
|
git config --local user.name "GitHub Actions"
|
||||||
git config --local user.email "actions@github.com"
|
git config --local user.email "actions@github.com"
|
||||||
git add .github/media/loc-badge.json
|
git add .github/.domain/loc-badge.json
|
||||||
git commit -m "Update lines of code badge" || echo "No changes to commit"
|
git commit -m "Update lines of code badge" || echo "No changes to commit"
|
||||||
git push
|
git push
|
@ -25,7 +25,7 @@
|
|||||||
<img src="https://img.shields.io/pypi/dm/streamingcommunity?style=for-the-badge" alt="PyPI Downloads"/>
|
<img src="https://img.shields.io/pypi/dm/streamingcommunity?style=for-the-badge" alt="PyPI Downloads"/>
|
||||||
</a>
|
</a>
|
||||||
<a href="https://github.com/Arrowar/StreamingCommunity">
|
<a href="https://github.com/Arrowar/StreamingCommunity">
|
||||||
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Arrowar/StreamingCommunity/main/.github/media/loc-badge.json&style=for-the-badge" alt="Lines of Code"/>
|
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Arrowar/StreamingCommunity/main/.github/.domain/loc-badge.json&style=for-the-badge" alt="Lines of Code"/>
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@ -518,7 +518,7 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
|||||||
"download_subtitle": true,
|
"download_subtitle": true,
|
||||||
"merge_subs": true,
|
"merge_subs": true,
|
||||||
"specific_list_subtitles": [
|
"specific_list_subtitles": [
|
||||||
"ita",
|
"ita", // Specify language codes or use ["*"] to download all available subtitles
|
||||||
"eng"
|
"eng"
|
||||||
],
|
],
|
||||||
"cleanup_tmp_folder": true
|
"cleanup_tmp_folder": true
|
||||||
@ -544,6 +544,8 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
|||||||
- `download_subtitle`: Whether to download subtitles
|
- `download_subtitle`: Whether to download subtitles
|
||||||
- `merge_subs`: Whether to merge subtitles with video
|
- `merge_subs`: Whether to merge subtitles with video
|
||||||
- `specific_list_subtitles`: List of subtitle languages to download
|
- `specific_list_subtitles`: List of subtitle languages to download
|
||||||
|
* Use `["*"]` to download all available subtitles
|
||||||
|
* Or specify individual languages like `["ita", "eng"]`
|
||||||
* Can be changed with `--specific_list_subtitles ita,eng`
|
* Can be changed with `--specific_list_subtitles ita,eng`
|
||||||
|
|
||||||
#### Cleanup
|
#### Cleanup
|
||||||
|
@ -180,10 +180,14 @@ class M3U8Manager:
|
|||||||
|
|
||||||
self.sub_streams = []
|
self.sub_streams = []
|
||||||
if ENABLE_SUBTITLE:
|
if ENABLE_SUBTITLE:
|
||||||
self.sub_streams = [
|
if "*" in DOWNLOAD_SPECIFIC_SUBTITLE:
|
||||||
s for s in (self.parser._subtitle.get_all_uris_and_names() or [])
|
self.sub_streams = self.parser._subtitle.get_all_uris_and_names() or []
|
||||||
if s.get('language') in DOWNLOAD_SPECIFIC_SUBTITLE
|
|
||||||
]
|
else:
|
||||||
|
self.sub_streams = [
|
||||||
|
s for s in (self.parser._subtitle.get_all_uris_and_names() or [])
|
||||||
|
if s.get('language') in DOWNLOAD_SPECIFIC_SUBTITLE
|
||||||
|
]
|
||||||
|
|
||||||
def log_selection(self):
|
def log_selection(self):
|
||||||
tuple_available_resolution = self.parser._video.get_list_resolution()
|
tuple_available_resolution = self.parser._video.get_list_resolution()
|
||||||
@ -209,9 +213,13 @@ class M3U8Manager:
|
|||||||
f"[red]Set:[/red] {set_codec_info}"
|
f"[red]Set:[/red] {set_codec_info}"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Get available subtitles and their languages
|
||||||
available_subtitles = self.parser._subtitle.get_all_uris_and_names() or []
|
available_subtitles = self.parser._subtitle.get_all_uris_and_names() or []
|
||||||
available_sub_languages = [sub.get('language') for sub in available_subtitles]
|
available_sub_languages = [sub.get('language') for sub in available_subtitles]
|
||||||
downloadable_sub_languages = list(set(available_sub_languages) & set(DOWNLOAD_SPECIFIC_SUBTITLE))
|
|
||||||
|
# If "*" is in DOWNLOAD_SPECIFIC_SUBTITLE, all languages are downloadable
|
||||||
|
downloadable_sub_languages = available_sub_languages if "*" in DOWNLOAD_SPECIFIC_SUBTITLE else list(set(available_sub_languages) & set(DOWNLOAD_SPECIFIC_SUBTITLE))
|
||||||
|
|
||||||
if available_sub_languages:
|
if available_sub_languages:
|
||||||
console.print(
|
console.print(
|
||||||
f"[cyan bold]Subtitle [/cyan bold] [green]Available:[/green] [purple]{', '.join(available_sub_languages)}[/purple] | "
|
f"[cyan bold]Subtitle [/cyan bold] [green]Available:[/green] [purple]{', '.join(available_sub_languages)}[/purple] | "
|
||||||
|
@ -157,7 +157,7 @@ def global_search(search_terms: str = None, selected_sites: list = None):
|
|||||||
|
|
||||||
# Display progress information
|
# Display progress information
|
||||||
console.print(f"\n[bold green]Searching for:[/bold green] [yellow]{search_terms}[/yellow]")
|
console.print(f"\n[bold green]Searching for:[/bold green] [yellow]{search_terms}[/yellow]")
|
||||||
console.print(f"[bold green]Searching across:[/bold green] {len(selected_sites)} sites")
|
console.print(f"[bold green]Searching across:[/bold green] {len(selected_sites)} sites \n")
|
||||||
|
|
||||||
with Progress() as progress:
|
with Progress() as progress:
|
||||||
search_task = progress.add_task("[cyan]Searching...", total=len(selected_sites))
|
search_task = progress.add_task("[cyan]Searching...", total=len(selected_sites))
|
||||||
@ -188,7 +188,7 @@ def global_search(search_terms: str = None, selected_sites: list = None):
|
|||||||
item_dict['source_alias'] = alias
|
item_dict['source_alias'] = alias
|
||||||
all_results[alias].append(item_dict)
|
all_results[alias].append(item_dict)
|
||||||
|
|
||||||
console.print(f"[green]Found {len(database.media_list)} results from {site_name}")
|
console.print(f"\n[green]Found {len(database.media_list)} results from {site_name}")
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
console.print(f"[bold red]Error searching {site_name}:[/bold red] {str(e)}")
|
console.print(f"[bold red]Error searching {site_name}:[/bold red] {str(e)}")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user