sora-sdk 2025.3.0.dev3__tar.gz → 2025.3.0.dev5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of sora-sdk might be problematic. Click here for more details.

Files changed (46) hide show
  1. {sora_sdk-2025.3.0.dev3/src/sora_sdk.egg-info → sora_sdk-2025.3.0.dev5}/PKG-INFO +1 -1
  2. sora_sdk-2025.3.0.dev5/VERSION +1 -0
  3. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/pyproject.toml +3 -3
  4. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/run.py +9 -12
  5. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/setup.py +8 -3
  6. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/src/sora_sdk/__init__.py +19 -0
  7. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/src/sora_sdk/sora_sdk_ext.cpython-311-darwin.so +0 -0
  8. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5/src/sora_sdk.egg-info}/PKG-INFO +1 -1
  9. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/src/sora_sdk.egg-info/SOURCES.txt +2 -1
  10. sora_sdk-2025.3.0.dev5/tests/test_version.py +17 -0
  11. sora_sdk-2025.3.0.dev3/VERSION +0 -1
  12. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/LICENSE +0 -0
  13. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/MANIFEST.in +0 -0
  14. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/README.md +0 -0
  15. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/buildbase.py +0 -0
  16. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/pypath.py +0 -0
  17. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/setup.cfg +0 -0
  18. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/src/sora_sdk/py.typed +0 -0
  19. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/src/sora_sdk/sora_sdk_ext.pyi +0 -0
  20. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/src/sora_sdk.egg-info/dependency_links.txt +0 -0
  21. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/src/sora_sdk.egg-info/top_level.txt +0 -0
  22. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_amd_amf.py +0 -0
  23. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_apple_video_toolbox.py +0 -0
  24. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_authz.py +0 -0
  25. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_authz_simulcast.py +0 -0
  26. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_ca_cert.py +0 -0
  27. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_capability.py +0 -0
  28. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_degradation_preference.py +0 -0
  29. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_encoded_transform.py +0 -0
  30. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_intel_vpl.py +0 -0
  31. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_messaging.py +0 -0
  32. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_messaging_header.py +0 -0
  33. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_nvidia_video_codec_sdk.py +0 -0
  34. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_openh264.py +0 -0
  35. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_openh264_simulcast.py +0 -0
  36. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_opus.py +0 -0
  37. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_re_offer_re_answer_sdp.py +0 -0
  38. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_sendonly_recvonly.py +0 -0
  39. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_signaling.py +0 -0
  40. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_signaling_message.py +0 -0
  41. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_signaling_notify.py +0 -0
  42. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_simulcast.py +0 -0
  43. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_sora_disconnect.py +0 -0
  44. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_type_disconnect.py +0 -0
  45. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_type_switched.py +0 -0
  46. {sora_sdk-2025.3.0.dev3 → sora_sdk-2025.3.0.dev5}/tests/test_vad.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sora_sdk
3
- Version: 2025.3.0.dev3
3
+ Version: 2025.3.0.dev5
4
4
  Summary: WebRTC SFU Sora Python SDK
5
5
  Home-page: https://github.com/shiguredo/sora-python-sdk
6
6
  Author-email: "Shiguredo Inc." <contact+pypi@shiguredo.jp>
@@ -0,0 +1 @@
1
+ 2025.3.0.dev5
@@ -20,14 +20,14 @@ Documentation = "https://sora-python-sdk.shiguredo.jp"
20
20
  Discord = "https://discord.gg/shiguredo"
21
21
 
22
22
  [build-system]
23
- requires = ["setuptools==80.8", "wheel==0.45.1"]
23
+ requires = ["setuptools==80.9", "wheel==0.45.1"]
24
24
  build-backend = "setuptools.build_meta"
25
25
 
26
26
  [tool.uv]
27
27
  python-preference = "only-managed"
28
28
  dev-dependencies = [
29
29
  "nanobind==2.7.0",
30
- "setuptools==80.8",
30
+ "setuptools==80.9",
31
31
  "build==1.2.2.post1",
32
32
  "wheel==0.45.1",
33
33
  "typing-extensions",
@@ -37,7 +37,7 @@ dev-dependencies = [
37
37
  "ruff",
38
38
  "pyjwt",
39
39
  "pytest-repeat",
40
- # "ty",
40
+ "ty",
41
41
  "pydantic-settings",
42
42
  "pyright",
43
43
  ]
@@ -31,7 +31,7 @@ from buildbase import (
31
31
  mkdir_p,
32
32
  read_version_file,
33
33
  )
34
- from pypath import get_python_include_dir, get_python_library, get_python_version
34
+ from pypath import get_python_include_dir, get_python_version
35
35
 
36
36
  BASE_DIR = os.path.abspath(os.path.dirname(__file__))
37
37
 
@@ -174,6 +174,7 @@ AVAILABLE_TARGETS = [
174
174
  "macos_arm64",
175
175
  "ubuntu-22.04_x86_64",
176
176
  "ubuntu-24.04_x86_64",
177
+ "ubuntu-22.04_armv8",
177
178
  "ubuntu-24.04_armv8",
178
179
  "ubuntu-22.04_armv8_jetson",
179
180
  ]
@@ -200,6 +201,8 @@ def main():
200
201
  platform = Platform("ubuntu", "22.04", "x86_64")
201
202
  elif args.target == "ubuntu-24.04_x86_64":
202
203
  platform = Platform("ubuntu", "24.04", "x86_64")
204
+ elif args.target == "ubuntu-22.04_armv8":
205
+ platform = Platform("ubuntu", "22.04", "armv8")
203
206
  elif args.target == "ubuntu-24.04_armv8":
204
207
  platform = Platform("ubuntu", "24.04", "armv8")
205
208
  elif args.target == "ubuntu-22.04_armv8_jetson":
@@ -252,13 +255,8 @@ def main():
252
255
  cmake_args.append(f"-DSORA_DIR={cmake_path(sora_info.sora_install_dir)}")
253
256
  cmake_args.append(f"-DOPENH264_DIR={cmake_path(os.path.join(install_dir, 'openh264'))}")
254
257
  python_version = get_python_version()
255
- cmake_args.append(f"-DPYTHON_VERSION_STRING={python_version}")
256
- cmake_args.append(f"-DPYTHON_INCLUDE_DIR={get_python_include_dir(python_version)}")
257
- cmake_args.append(f"-DPYTHON_EXECUTABLE={cmake_path(sys.executable)}")
258
- python_library = get_python_library(python_version)
259
- if python_library is None:
260
- raise Exception("Failed to get Python library")
261
- cmake_args.append(f"-DPYTHON_LIBRARY={cmake_path(python_library)}")
258
+ cmake_args.append(f"-DPython_INCLUDE_DIR={get_python_include_dir(python_version)}")
259
+ cmake_args.append(f"-DPython_EXECUTABLE={cmake_path(sys.executable)}")
262
260
 
263
261
  if platform.target.os == "ubuntu":
264
262
  # クロスコンパイルの設定。
@@ -282,7 +280,8 @@ def main():
282
280
 
283
281
  if platform.build.arch != platform.target.arch:
284
282
  sysroot = os.path.join(install_dir, "rootfs")
285
- nb_cmake_dir = cmdcap(["uv", "run", "python", "-m", "nanobind", "--cmake_dir"])
283
+ python_version = get_python_version()
284
+ python_version_short = ".".join(python_version.split(".")[:2])
286
285
  cmake_args += [
287
286
  "-DCMAKE_SYSTEM_NAME=Linux",
288
287
  "-DCMAKE_SYSTEM_PROCESSOR=aarch64",
@@ -293,10 +292,8 @@ def main():
293
292
  "-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH",
294
293
  "-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH",
295
294
  "-DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=BOTH",
296
- f"-DPython_ROOT_DIR={cmake_path(os.path.join(sysroot, 'usr', 'include', 'python3.12'))}",
297
295
  f"-DCMAKE_SYSROOT={sysroot}",
298
- f"-DNB_CMAKE_DIR={nb_cmake_dir}",
299
- "-DNB_SUFFIX=.cpython-312-aarch64-linux-gnu.so",
296
+ f"-DNB_SUFFIX=.cpython-{python_version_short.replace('.', '')}-aarch64-linux-gnu.so",
300
297
  ]
301
298
  elif platform.target.os == "macos":
302
299
  sysroot = cmdcap(["xcrun", "--sdk", "macosx", "--show-sdk-path"])
@@ -24,12 +24,15 @@ def run_setup(build_platform, target_platform):
24
24
  if target_platform.os == "jetson":
25
25
  plat = "manylinux_2_17_aarch64.manylinux2014_aarch64"
26
26
  elif target_platform.os == "ubuntu" and target_platform.arch == "armv8":
27
- plat = "manylinux_2_17_aarch64.manylinux2014_aarch64"
27
+ if target_platform.osver == "22.04":
28
+ plat = "manylinux_2_31_aarch64"
29
+ if target_platform.osver == "24.04":
30
+ plat = "manylinux_2_35_aarch64"
28
31
  elif target_platform.os == "ubuntu" and target_platform.arch == "x86_64":
29
32
  if target_platform.osver == "22.04":
30
- plat = "manylinux_2_17_x86_64.manylinux2014_x86_64"
33
+ plat = "manylinux_2_31_x86_64"
31
34
  if target_platform.osver == "24.04":
32
- plat = "manylinux_2_17_x86_64.manylinux2014_x86_64"
35
+ plat = "manylinux_2_35_x86_64"
33
36
 
34
37
  class bdist_wheel(_bdist_wheel):
35
38
  def finalize_options(self):
@@ -62,6 +65,8 @@ def main():
62
65
  target = os.getenv("SORA_SDK_TARGET")
63
66
  if target is None:
64
67
  target_platform = build_platform
68
+ elif target == "ubuntu-22.04_armv8":
69
+ target_platform = PlatformTarget("ubuntu", "22.04", "armv8")
65
70
  elif target == "ubuntu-24.04_armv8":
66
71
  target_platform = PlatformTarget("ubuntu", "24.04", "armv8")
67
72
  elif target == "ubuntu-22.04_armv8_jetson":
@@ -1,5 +1,24 @@
1
1
  from .sora_sdk_ext import * # noqa: F401,F403
2
2
 
3
+ # インストールされたパッケージの場合は importlib.metadata から取得
4
+ # 開発環境の場合は VERSION ファイルから取得
5
+ try:
6
+ from importlib.metadata import version, PackageNotFoundError
7
+ try:
8
+ __version__ = version("sora_sdk")
9
+ except PackageNotFoundError:
10
+ # パッケージがインストールされていない場合(開発環境)
11
+ import os
12
+ _version_file = os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))), "VERSION")
13
+ if os.path.exists(_version_file):
14
+ with open(_version_file, "r") as f:
15
+ __version__ = f.read().strip()
16
+ else:
17
+ __version__ = "unknown"
18
+ except ImportError:
19
+ # Python 3.8 以前の互換性のため
20
+ __version__ = "unknown"
21
+
3
22
  """
4
23
  sink はそれぞれ track が必要で参照を保持する必要がある
5
24
  しかしながら、 sink の C++ 側で shared_ptr として track を持つと、
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sora_sdk
3
- Version: 2025.3.0.dev3
3
+ Version: 2025.3.0.dev5
4
4
  Summary: WebRTC SFU Sora Python SDK
5
5
  Home-page: https://github.com/shiguredo/sora-python-sdk
6
6
  Author-email: "Shiguredo Inc." <contact+pypi@shiguredo.jp>
@@ -39,4 +39,5 @@ tests/test_simulcast.py
39
39
  tests/test_sora_disconnect.py
40
40
  tests/test_type_disconnect.py
41
41
  tests/test_type_switched.py
42
- tests/test_vad.py
42
+ tests/test_vad.py
43
+ tests/test_version.py
@@ -0,0 +1,17 @@
1
+ import os
2
+ import sora_sdk
3
+
4
+
5
+ def test_version():
6
+ """sora_sdk.__version__ が取得できることを確認"""
7
+ assert hasattr(sora_sdk, "__version__")
8
+ assert isinstance(sora_sdk.__version__, str)
9
+ assert sora_sdk.__version__ != "unknown"
10
+
11
+ # VERSION ファイルの内容と一致することを確認
12
+ version_file = os.path.join(os.path.dirname(os.path.dirname(__file__)), "VERSION")
13
+ with open(version_file, "r") as f:
14
+ expected_version = f.read().strip()
15
+
16
+ assert sora_sdk.__version__ == expected_version
17
+ print(f"sora_sdk.__version__ = {sora_sdk.__version__}")
@@ -1 +0,0 @@
1
- 2025.3.0.dev3