Skip to content

Commit

Permalink
Merge branch 'release/2024.1.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
miosakuma committed Feb 20, 2024
2 parents 6dbcbbb + f790d9b commit 7273287
Show file tree
Hide file tree
Showing 41 changed files with 1,600 additions and 414 deletions.
2 changes: 1 addition & 1 deletion .github/actions/download/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ inputs:
runs:
using: composite
steps:
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: ${{ inputs.platform }}_python-${{ inputs.python_version }}
path: ${{ inputs.platform }}_python-${{ inputs.python_version }}
Expand Down
82 changes: 58 additions & 24 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ on:
paths-ignore:
- "doc/**"
- "**.md"
# 毎日日本時間(JST)の14:00(UTCの5:00)に実行します。
# ただし、週末は除きます。
schedule:
- cron: "0 5 * * 1-5"

jobs:
build_linux_macos:
Expand All @@ -30,6 +34,7 @@ jobs:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
exclude:
# Jetson は Python 3.8 のみ作成する
- platform: { name: ubuntu-20.04_armv8_jetson }
Expand All @@ -38,10 +43,12 @@ jobs:
python_version: "3.10"
- platform: { name: ubuntu-20.04_armv8_jetson }
python_version: "3.11"
- platform: { name: ubuntu-20.04_armv8_jetson }
python_version: "3.12"
runs-on: ${{ matrix.platform.runs_on }}
timeout-minutes: 60
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- run: |
sudo apt-get update
sudo apt-get -y install libva-dev libdrm-dev
Expand Down Expand Up @@ -73,7 +80,7 @@ jobs:
# Jetson 向け
- name: Set up QEMU
if: ${{ matrix.platform.name == 'ubuntu-20.04_armv8_jetson' }}
uses: docker/setup-qemu-action@v2
uses: docker/setup-qemu-action@v3
- run: |
sudo apt-get install -y multistrap binutils-aarch64-linux-gnu
# multistrap に insecure なリポジトリからの取得を許可する設定を入れる
Expand All @@ -96,13 +103,13 @@ jobs:
ARCHFLAGS: ${{ matrix.platform.archflags }}
- name: Upload Artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.platform.name }}_python-${{ matrix.python_version }}
path: "dist/"

build_windows:
runs-on: windows-2019
runs-on: windows-2022
timeout-minutes: 60
strategy:
fail-fast: false
Expand All @@ -112,9 +119,10 @@ jobs:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "${{ matrix.python_version }}"
cache: "pip"
Expand All @@ -123,7 +131,7 @@ jobs:
- run: python -m build

- name: Upload Artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: windows-2019_python-${{ matrix.python_version }}
path: dist/
Expand All @@ -146,17 +154,20 @@ jobs:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
exclude:
- platform: { name: ubuntu-20.04_armv8_jetson }
python_version: "3.9"
- platform: { name: ubuntu-20.04_armv8_jetson }
python_version: "3.10"
- platform: { name: ubuntu-20.04_armv8_jetson }
python_version: "3.11"
- platform: { name: ubuntu-20.04_armv8_jetson }
python_version: "3.12"
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: ${{ matrix.platform.name }}_python-${{ matrix.python_version }}
path: dist
Expand All @@ -182,6 +193,14 @@ jobs:
with:
password: ${{ secrets.PYPI_API_TOKEN }}

- name: Slack Notification
if: failure()
uses: rtCamp/action-slack-notify@v2
env:
SLACK_CHANNEL: sora-python-sdk
SLACK_COLOR: danger
SLACK_TITLE: Build failed
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
create-release:
if: contains(github.ref, 'tags/202')
needs:
Expand All @@ -190,33 +209,40 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: ./.github/actions/download
with: { "platform": "ubuntu-22.04_x86_64", "python_version": "3.8" }
- uses: ./.github/actions/download
with: {"platform":"ubuntu-22.04_x86_64", "python_version":"3.8"}
with: { "platform": "ubuntu-22.04_x86_64", "python_version": "3.9" }
- uses: ./.github/actions/download
with: {"platform":"ubuntu-22.04_x86_64", "python_version":"3.9"}
with: { "platform": "ubuntu-22.04_x86_64", "python_version": "3.10" }
- uses: ./.github/actions/download
with: {"platform":"ubuntu-22.04_x86_64", "python_version":"3.10"}
with: { "platform": "ubuntu-22.04_x86_64", "python_version": "3.11" }
- uses: ./.github/actions/download
with: {"platform":"ubuntu-22.04_x86_64", "python_version":"3.11"}
with: { "platform": "ubuntu-22.04_x86_64", "python_version": "3.12" }
- uses: ./.github/actions/download
with: {"platform":"ubuntu-20.04_armv8_jetson", "python_version":"3.8"}
with:
{ "platform": "ubuntu-20.04_armv8_jetson", "python_version": "3.8" }
- uses: ./.github/actions/download
with: { "platform": "macos-13_arm64", "python_version": "3.8" }
- uses: ./.github/actions/download
with: {"platform":"macos-13_arm64", "python_version":"3.8"}
with: { "platform": "macos-13_arm64", "python_version": "3.9" }
- uses: ./.github/actions/download
with: {"platform":"macos-13_arm64", "python_version":"3.9"}
with: { "platform": "macos-13_arm64", "python_version": "3.10" }
- uses: ./.github/actions/download
with: {"platform":"macos-13_arm64", "python_version":"3.10"}
with: { "platform": "macos-13_arm64", "python_version": "3.11" }
- uses: ./.github/actions/download
with: {"platform":"macos-13_arm64", "python_version":"3.11"}
with: { "platform": "macos-13_arm64", "python_version": "3.12" }
- uses: ./.github/actions/download
with: {"platform":"windows-2019", "python_version":"3.8"}
with: { "platform": "windows-2019", "python_version": "3.8" }
- uses: ./.github/actions/download
with: {"platform":"windows-2019", "python_version":"3.9"}
with: { "platform": "windows-2019", "python_version": "3.9" }
- uses: ./.github/actions/download
with: {"platform":"windows-2019", "python_version":"3.10"}
with: { "platform": "windows-2019", "python_version": "3.10" }
- uses: ./.github/actions/download
with: {"platform":"windows-2019", "python_version":"3.11"}
with: { "platform": "windows-2019", "python_version": "3.11" }
- uses: ./.github/actions/download
with: { "platform": "windows-2019", "python_version": "3.12" }
- name: Env to output
run: |
echo "package_paths<<EOF" >> $GITHUB_OUTPUT
Expand All @@ -226,5 +252,13 @@ jobs:
- name: Release
uses: softprops/action-gh-release@v1
with:
files:
${{ steps.env.outputs.package_paths }}
files: ${{ steps.env.outputs.package_paths }}
prerelease: ${{ contains(github.ref, 'dev') }}
- name: Slack Notification
if: failure()
uses: rtCamp/action-slack-notify@v2
env:
SLACK_CHANNEL: sora-python-sdk
SLACK_COLOR: danger
SLACK_TITLE: Release failed
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,6 @@ src/sora_sdk/model_coeffs/*
# パッケージ
/dist
/wheelhouse

# E2E テスト用
.env
2 changes: 1 addition & 1 deletion .python-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.8.16
3.8.18
19 changes: 5 additions & 14 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,13 @@
"reportMissingImports": "none",
"reportUnusedImport": "information"
},
"python.linting.flake8Enabled": true,
"python.linting.flake8Args": ["--max-line-length=120"],
"python.linting.enabled": true,
"python.formatting.autopep8Args": [
"--max-line-length",
"120",
"--experimental"
],
"[python]": {
"editor.formatOnSave": true,
"editor.formatOnSaveMode": "file",
"editor.codeActionsOnSave": {
"source.organizeImports": true
"source.organizeImports": "explicit"
},
"editor.defaultFormatter": "ms-python.autopep8"
"editor.defaultFormatter": "charliermarsh.ruff"
},
"[cpp]": {
"editor.formatOnSave": true
Expand Down Expand Up @@ -126,9 +118,8 @@
"__memory": "cpp"
},
"C_Cpp.errorSquiggles": "disabled",
"editor.tabSize": 2, // nanobind 周りでエラーが消えないので全部消す
// nanobind 周りでエラーが消えないので全部消す
"editor.tabSize": 2,
"python.analysis.typeCheckingMode": "off",
"cSpell.words": ["dtype", "imshow", "samplerate", "sounddevice"],
"python.formatting.provider": "none",
"ansible.python.interpreterPath": "/Users/voluntas/.venvs/default/bin/python"
"cSpell.words": ["dtype", "imshow", "samplerate", "sounddevice"]
}
62 changes: 62 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,68 @@

## develop

## 2024.1.0

**2024-02-20**

- [CHANGE] フォーマッターを Ruff に変更する
- @voluntas
- [CHANGE] SoraAudioSource.on_data の引数名を変更
- @tnoho
- [CHANGE] SoraVideoSource.on_captured の引数名を変更
- @tnoho
- [CHANGE] SoraVAD.analyze の引数名を変更
- @tnoho
- [CHANGE] SoraConnection.on_track の引数を SoraMediaTrack に変更
- @tnoho
- [UPDATE] auditwheel を `6.0.0` にアップデートする
- @voluntas
- [UPDATE] build を `1.0.3` にアップデートする
- @voluntas
- [UPDATE] wheel を `0.42.0` にアップデートする
- @voluntas
- [UPDATE] build を `1.0.3` にアップデートする
- @voluntas
- [UPDATE] pytest を `8.0.0` にアップデートする
- @voluntas
- [UPDATE] setuptools の最小を `69.1` にする
- @voluntas
- [UPDATE] ruff の最小を `0.2.2` にする
- @voluntas
- [UPDATE] nanobind の最小を `1.8.0` にする
- @voluntas
- [UPDATE] actions/setup-python@v5 に上げる
- @voluntas
- [UPDATE] SoraMediaTrack を追加
- @tnoho
- [UPDATE] Sora C++ SDK のバージョンを `2024.1.0` に上げる
- WebRTC m116 で cricket::Codec は protected になったので cricket::CreateVideoCodec に修正する
- WebRTC m118 でパッケージディレクトリが変更されたためそれに追従する
- WebRTC m120 の webrtc::EncodedImage API の変更に追従する
- WEBRTC_BUILD_VERSION を `m120.6099.1.2` に上げる
- BOOST_VERSION を `1.83.0` に上げる
- CMAKE_VERSION を `3.28.1` に上げる
- @voluntas @miosakuma
- [UPDATE] ForwardingFilter に version と metadata を追加する
- `Sora 2023.2.0` へ追従
- `C++ SDK 2024.1.0` へ追従
- @miosakuma
- [UPDATE] NVIDIA JetPack を `5.1.2` に上げる
- @miosakuma
- [UPDATE] OpenH264 を `v2.4.1` に上げる
- @voluntas
- [ADD] GitHub Actions workflows/build.yml を平日 14:00 JST 定期実行する
- @voluntas
- [ADD] 発話区間の検出が可能な SoraVAD の追加
- @tnoho
- [ADD] リアルタイム性を重視した AudioStreamSink の追加
- @tnoho
- [ADD] AudioStreamSink が返す音声フレームとして pickle が可能な AudioFrame を追加
- @tnoho
- [FIX] `pyproject.toml``[rye.tool]``virtual = true` を追加する
- これで Windows ビルド失敗の原因である `--e file:.` が消える
- @voluntas

## 2023.3.1

**2023-07-13**
Expand Down
2 changes: 2 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -74,11 +74,13 @@ nanobind_add_module(
src/dummy_audio_mixer.cpp
src/sora.cpp
src/sora_audio_sink.cpp
src/sora_audio_stream_sink.cpp
src/sora_audio_source.cpp
src/sora_connection.cpp
src/sora_factory.cpp
src/sora_log.cpp
src/sora_sdk_ext.cpp
src/sora_vad.cpp
src/sora_video_sink.cpp
src/sora_video_source.cpp
)
Expand Down
10 changes: 5 additions & 5 deletions NOTICE.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
Sora Python SDK

Copyright 2023-2023, tnoho (Original Author)
Copyright 2023-2023, Wandbox LLC (Original Author)
Copyright 2023-2023, Shiguredo Inc.
Copyright 2023-2024, tnoho (Original Author)
Copyright 2023-2024, Wandbox LLC (Original Author)
Copyright 2023-2024, Shiguredo Inc.

# Sora C++ SDK

https://github.com/shiguredo/sora-cpp-sdk

```
Copyright 2021-2023, Wandbox LLC (Original Author)
Copyright 2021-2023, Shiguredo Inc.
Copyright 2021-2024, Wandbox LLC (Original Author)
Copyright 2021-2024, Shiguredo Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
Loading

0 comments on commit 7273287

Please sign in to comment.