Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Client and stream processing updates #506

Merged
merged 68 commits into from
Sep 13, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
6264b40
Enable HLS and adaptive HLS live streams
MoojMidge May 25, 2023
63999db
Update server request log messages
MoojMidge May 25, 2023
db2cf73
Add default IP param to IP address setting getter
MoojMidge May 25, 2023
d9585ce
Add some basic error handling for https session
MoojMidge May 25, 2023
8a68806
Merge branch 'requests'
MoojMidge May 25, 2023
e7a32ce
Merge branch 'captions'
MoojMidge May 25, 2023
878a98d
Merge branch 'live_streams'
MoojMidge May 25, 2023
bb2e46e
Implement original single stream live HLS playback
MoojMidge May 28, 2023
96cdb0c
Merge branch 'live_streams'
MoojMidge May 28, 2023
3367f25
Fix live stream settings options when MPD disabled
MoojMidge May 30, 2023
19a09cc
Merge branch 'live_streams'
MoojMidge May 30, 2023
6ca3762
Remove Authorisation header from HLS request
MoojMidge May 31, 2023
8fbebef
Merge branches 'captions' and 'live_streams'
MoojMidge May 31, 2023
db7f8d0
Merge branch 'captions'
MoojMidge May 31, 2023
a3212f2
Merge branch 'stream_selection'
MoojMidge Jun 10, 2023
8304be5
Merge branch 'stream_selection'
MoojMidge Jun 10, 2023
e983ce8
Merge branch 'stream_selection'
MoojMidge Jun 14, 2023
2201d8c
Merge branch 'stream_selection'
MoojMidge Jun 15, 2023
4346fcf
Merge branch 'stream_selection'
MoojMidge Jun 16, 2023
2ba69cc
Standardise/change "dash" in names to "mpd"
MoojMidge Jun 19, 2023
5bbca4b
Fix evaluation of single ISA capability
MoojMidge Jun 19, 2023
7fd9fab
Improve stream quality and features selection
MoojMidge Jun 19, 2023
3f7cada
Standardise setting attribute order
MoojMidge Jun 19, 2023
3834a94
Improve MPD manifest language sorting
MoojMidge Jun 20, 2023
e96c59c
Fix incorrect return on create directory failure
MoojMidge Jun 20, 2023
a17d442
Fix sorting of stream chooser
MoojMidge Jun 20, 2023
83275ed
Move get_language_name to kodion context class
MoojMidge Jun 20, 2023
762d2f2
Fix sorting of ISA audio chooser
MoojMidge Jun 20, 2023
53fdcdd
Fix filtering streams when auto selection disabled
MoojMidge Jun 20, 2023
df9aae4
Code tidy up
MoojMidge Jun 21, 2023
d873bbd
Partially fix use history settings
MoojMidge Jun 22, 2023
80a54d0
Fixes for throttling and restricted videos
MoojMidge Jun 22, 2023
c672535
Improve client building
MoojMidge Jun 25, 2023
1ed9ca2
Fix errors in fetching captions
MoojMidge Jun 25, 2023
c5bc18b
Dont copy headers if they are not being modified
MoojMidge Jun 25, 2023
0158ea5
Fix json argument of _request redefining import
MoojMidge Jun 25, 2023
ec85ac0
Code tidy up
MoojMidge Jun 25, 2023
ad964ec
Allow mulltiple params in call to _set_query_param
MoojMidge Jul 2, 2023
3c01ce0
Simplify and tidy up code
MoojMidge Jul 2, 2023
b9cc7eb
Fix default caption selection
MoojMidge Jul 2, 2023
907745a
Simplify update of MPD stream format details
MoojMidge Jul 2, 2023
a1b07ab
Split up _generate_mpd_manifest
MoojMidge Jul 2, 2023
7207004
Use default caption language to label audio track
MoojMidge Jul 2, 2023
42c2b2e
Simplify language detection & show ASR indication
MoojMidge Jul 4, 2023
6ad2c1f
Allow cookies to be used from player page request
MoojMidge Jul 4, 2023
8fb81aa
Make request timeout a parameter of _request
MoojMidge Jul 13, 2023
43673f8
Fix regression with non-logged in playback
MoojMidge Jul 13, 2023
2daba48
Improve error/debug logging
MoojMidge Jul 13, 2023
242c4ea
Update and tidy up client details
MoojMidge Jul 13, 2023
6f944f9
Use client specific api keys
MoojMidge Jul 13, 2023
4ba6339
Code tidy up
MoojMidge Jul 13, 2023
97cfcc1
(Re)Allow tv api key use
MoojMidge Jul 23, 2023
c8cad14
Fix for missing hls manifest url
MoojMidge Jul 23, 2023
e0a4a40
Fix different bitrate label vs ISA stream selector
MoojMidge Jul 25, 2023
7e45b4e
Fix incorrect level for declaring manifest_url
MoojMidge Jul 25, 2023
f2d3c65
Add timeout and error handling for api requests
MoojMidge Aug 8, 2023
091ea7a
Add timeout, fix incorrect args for Session.get
MoojMidge Aug 8, 2023
f4eaceb
Fix incorrect httpd request address
MoojMidge Aug 10, 2023
4c617c5
Settings name import tidy up
MoojMidge Aug 10, 2023
0088114
Merge branch 'master' into master
MoojMidge Aug 11, 2023
41dcf2e
Allow manual make-release workflow trigger
MoojMidge Aug 11, 2023
f2ad3ac
Update make-release workflow for manual run on forks
MoojMidge Aug 11, 2023
198d321
Update unofficial.patch
MoojMidge Sep 12, 2023
27c3e0d
Add backwords compatibility for Matrix
MoojMidge Sep 12, 2023
79fa542
Remove unused code
MoojMidge Sep 12, 2023
fec69cf
Update make-release workflow formatting and permissions
MoojMidge Sep 12, 2023
4625c02
Update submit-release workflow for Matrix
MoojMidge Sep 13, 2023
6975aa7
7.0.2
MoojMidge Aug 30, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 72 additions & 8 deletions .github/workflows/make-release.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
# Based on https://github.com/im85288/service.upnext/blob/master/.github/workflows/release.yml
name: Make Release
on:
workflow_dispatch:
push:
tags:
- 'v*'
- '*-dev'

jobs:
release:
if: github.repository == 'anxdpanic/plugin.video.youtube'

if: github.repository == 'anxdpanic/plugin.video.youtube' || github.event_name == 'workflow_dispatch'
name: Make Release
runs-on: ubuntu-20.04
permissions:
contents: write

steps:
- name: Release Status
Expand All @@ -38,11 +40,12 @@ jobs:
- name: Get Changelog
id: changelog
run: |
changes=$(xmlstarlet sel -t -v '//news' -n addon.xml)
changes="${changes//'%'/'%25'}"
changes="${changes//$'\n'/'%0A'}"
changes="${changes//$'\r'/'%0D'}"
echo "changes=$changes" >> $GITHUB_OUTPUT
readarray -t changes < <(xmlstarlet sel -t -v '//news' -n addon.xml)
echo "body<<${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_OUTPUT
for change in "${changes[@]}"; do
echo "${change}" >> $GITHUB_OUTPUT
done
echo "${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_OUTPUT
working-directory: ${{ github.event.repository.name }}

- name: Create Zip (Nexus)
Expand Down Expand Up @@ -77,6 +80,45 @@ jobs:
echo "filename=$filename" >> $GITHUB_OUTPUT
working-directory: ${{ github.event.repository.name }}

- name: Create Zip (Matrix)
id: zip-matrix
run: |
git reset
git checkout .
git clean -fdx
mv .git ..
rm -rf .??*
rm *.md
version=$(xmlstarlet sel -t -v 'string(/addon/@version)' addon.xml)
xmlstarlet ed -L -u '/addon/requires/import[@addon="xbmc.python"]/@version' -v '3.0.0' addon.xml
xmlstarlet ed -L -d '/addon/requires/import[@addon="script.module.infotagger"]' addon.xml
filename=${{ github.event.repository.name }}-${version}.matrix.1.zip
cd ..
zip -r $filename ${{ github.event.repository.name }}
mv .git ${{ github.event.repository.name }}
echo "filename=$filename" >> $GITHUB_OUTPUT
working-directory: ${{ github.event.repository.name }}

- name: Create Zip (Matrix-Unofficial)
id: zip-unofficial-matrix
run: |
git reset
git checkout .
git clean -fdx
git apply .patches/unofficial.patch
mv .git ..
rm -rf .??*
rm *.md
version=$(xmlstarlet sel -t -v 'string(/addon/@version)' addon.xml)
xmlstarlet ed -L -u '/addon/requires/import[@addon="xbmc.python"]/@version' -v '3.0.0' addon.xml
xmlstarlet ed -L -d '/addon/requires/import[@addon="script.module.infotagger"]' addon.xml
filename=${{ github.event.repository.name }}-unofficial-${version}.matrix.1.zip
cd ..
zip -r $filename ${{ github.event.repository.name }}
mv .git ${{ github.event.repository.name }}
echo "filename=$filename" >> $GITHUB_OUTPUT
working-directory: ${{ github.event.repository.name }}

- name: Create Release
id: create-release
uses: actions/create-release@v1
Expand All @@ -85,7 +127,7 @@ jobs:
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
body: ${{ steps.changelog.outputs.changes }}
body: ${{ steps.changelog.outputs.body }}
draft: false
prerelease: ${{ steps.release.outputs.pre-release }}

Expand All @@ -110,3 +152,25 @@ jobs:
asset_name: ${{ steps.zip-unofficial-nexus.outputs.filename }}
asset_path: ${{ steps.zip-unofficial-nexus.outputs.filename }}
asset_content_type: application/zip

- name: Upload Zip (Matrix)
id: upload-matrix
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create-release.outputs.upload_url }}
asset_name: ${{ steps.zip-matrix.outputs.filename }}
asset_path: ${{ steps.zip-matrix.outputs.filename }}
asset_content_type: application/zip

- name: Upload Zip (Matrix-Unofficial)
id: upload-unofficial-matrix
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create-release.outputs.upload_url }}
asset_name: ${{ steps.zip-unofficial-matrix.outputs.filename }}
asset_path: ${{ steps.zip-unofficial-matrix.outputs.filename }}
asset_content_type: application/zip
32 changes: 30 additions & 2 deletions .github/workflows/submit-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@ jobs:
git config --global user.name "anxdpanic"
git config --global user.email "[email protected]"

- name: Staging for Official Repository (Isengard)
id: stage-isengard
- name: Staging for Official Repository (Nexus)
id: stage-nexus
run: |
mv .git ..
rm -rf .??*
Expand All @@ -60,3 +60,31 @@ jobs:
GH_USERNAME: anxdpanic
GH_TOKEN: ${{ secrets.ADDON_SUBMISSION_TOKEN }}
EMAIL: [email protected]

- name: Staging for Official Repository (Matrix)
id: stage-matrix
run: |
git reset --hard ${{ github.sha }}
git checkout .
git clean -fdx
mv .git ..
rm -rf .??*
mv ../.git .
rm *.md
version=$(xmlstarlet sel -t -v 'string(/addon/@version)' addon.xml)
xmlstarlet ed -L -u '/addon/@version' -v "${version}+matrix.1" addon.xml
xmlstarlet ed -L -u '/addon/requires/import[@addon="xbmc.python"]/@version' -v '3.0.0' addon.xml
xmlstarlet ed -L -d '/addon/requires/import[@addon="script.module.infotagger"]' addon.xml
git add .
git commit -m "Kodi 19 Patch"
working-directory: ${{ github.event.repository.name }}

- name: Submit to Official Repository (Matrix)
id: submit-matrix
run: |
submit-addon -r repo-plugins -b matrix --pull-request ${{ github.event.repository.name }}
working-directory: ${{ github.event.repository.name }}
env:
GH_USERNAME: anxdpanic
GH_TOKEN: ${{ secrets.ADDON_SUBMISSION_TOKEN }}
EMAIL: [email protected]
Loading
Loading