sora-sdk 2025.1.0.dev14__tar.gz → 2025.1.0.dev15__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 (45) hide show
  1. {sora_sdk-2025.1.0.dev14/src/sora_sdk.egg-info → sora_sdk-2025.1.0.dev15}/PKG-INFO +1 -1
  2. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/pyproject.toml +1 -1
  3. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/src/sora_sdk/sora_sdk_ext.cpython-311-darwin.so +0 -0
  4. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/src/sora_sdk/sora_sdk_ext.pyi +2 -0
  5. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15/src/sora_sdk.egg-info}/PKG-INFO +1 -1
  6. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/src/sora_sdk.egg-info/SOURCES.txt +0 -1
  7. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_openh264.py +73 -0
  8. sora_sdk-2025.1.0.dev14/tests/test_codec_preference.py +0 -124
  9. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/LICENSE +0 -0
  10. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/MANIFEST.in +0 -0
  11. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/NOTICE.md +0 -0
  12. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/README.md +0 -0
  13. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/buildbase.py +0 -0
  14. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/pypath.py +0 -0
  15. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/run.py +0 -0
  16. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/setup.cfg +0 -0
  17. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/setup.py +0 -0
  18. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/src/sora_sdk/__init__.py +0 -0
  19. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/src/sora_sdk/py.typed +0 -0
  20. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/src/sora_sdk.egg-info/dependency_links.txt +0 -0
  21. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/src/sora_sdk.egg-info/top_level.txt +0 -0
  22. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_amd_amf.py +0 -0
  23. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_apple_video_toolbox.py +0 -0
  24. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_authz.py +0 -0
  25. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_authz_simulcast.py +0 -0
  26. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_ca_cert.py +0 -0
  27. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_capability.py +0 -0
  28. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_degradation_preference.py +0 -0
  29. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_encoded_transform.py +0 -0
  30. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_intel_vpl.py +0 -0
  31. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_memory_leak.py +0 -0
  32. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_messaging.py +0 -0
  33. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_messaging_header.py +0 -0
  34. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_nvidia_video_codec_sdk.py +0 -0
  35. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_opus.py +0 -0
  36. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_re_offer_re_answer_sdp.py +0 -0
  37. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_sendonly_recvonly.py +0 -0
  38. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_signaling.py +0 -0
  39. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_signaling_message.py +0 -0
  40. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_signaling_notify.py +0 -0
  41. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_simulcast.py +0 -0
  42. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_sora_disconnect.py +0 -0
  43. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_type_disconnect.py +0 -0
  44. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_type_switched.py +0 -0
  45. {sora_sdk-2025.1.0.dev14 → sora_sdk-2025.1.0.dev15}/tests/test_vad.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sora_sdk
3
- Version: 2025.1.0.dev14
3
+ Version: 2025.1.0.dev15
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>
@@ -1,7 +1,7 @@
1
1
  [project]
2
2
  name = "sora_sdk"
3
3
  authors = [{ name = "Shiguredo Inc.", email = "contact+pypi@shiguredo.jp" }]
4
- version = "2025.1.0.dev14"
4
+ version = "2025.1.0.dev15"
5
5
  description = "WebRTC SFU Sora Python SDK"
6
6
  readme = "README.md"
7
7
  license = { file = "LICENSE" }
@@ -488,3 +488,5 @@ def create_video_codec_preference_from_implementation(arg0: SoraVideoCodecCapabi
488
488
  def enable_libwebrtc_log(arg: SoraLoggingSeverity, /) -> None: ...
489
489
 
490
490
  def get_video_codec_capability(openh264: str | None = None) -> SoraVideoCodecCapability: ...
491
+
492
+ def rtc_log(arg0: SoraLoggingSeverity, arg1: str, /) -> None: ...
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sora_sdk
3
- Version: 2025.1.0.dev14
3
+ Version: 2025.1.0.dev15
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>
@@ -21,7 +21,6 @@ tests/test_authz.py
21
21
  tests/test_authz_simulcast.py
22
22
  tests/test_ca_cert.py
23
23
  tests/test_capability.py
24
- tests/test_codec_preference.py
25
24
  tests/test_degradation_preference.py
26
25
  tests/test_encoded_transform.py
27
26
  tests/test_intel_vpl.py
@@ -6,12 +6,85 @@ import pytest
6
6
  from client import SoraClient, SoraRole
7
7
 
8
8
  from sora_sdk import (
9
+ Sora,
9
10
  SoraVideoCodecImplementation,
10
11
  SoraVideoCodecPreference,
11
12
  SoraVideoCodecType,
13
+ get_video_codec_capability,
12
14
  )
13
15
 
14
16
 
17
+ def test_openh264_get_codec_capability(setup):
18
+ openh264_path = setup.get("openh264_path")
19
+ capability = get_video_codec_capability(openh264_path)
20
+
21
+ cisco_openh264_available = False
22
+
23
+ for e in capability.engines:
24
+ if e.name == SoraVideoCodecImplementation.CISCO_OPENH264:
25
+ cisco_openh264_available = True
26
+ assert cisco_openh264_available is True
27
+
28
+ codecs = []
29
+ for e in capability.engines:
30
+ # macOS では INTERNAL の Video Toolbox が利用されるので OpenH264 は採用しないようにする
31
+ if sys.platform == "darwin":
32
+ if e.name == SoraVideoCodecImplementation.CISCO_OPENH264:
33
+ continue
34
+
35
+ for c in e.codecs:
36
+ if c.decoder or c.encoder:
37
+ # encoder/decoder どちらかが true であれば採用する
38
+ if c.decoder or c.encoder:
39
+ codecs.append(
40
+ SoraVideoCodecPreference.Codec(
41
+ type=c.type,
42
+ decoder=e.name,
43
+ encoder=e.name,
44
+ )
45
+ )
46
+
47
+ # エラーにならないことを確認する
48
+ Sora(
49
+ video_codec_preference=SoraVideoCodecPreference(
50
+ codecs=codecs,
51
+ ),
52
+ openh264=openh264_path,
53
+ )
54
+
55
+
56
+ def test_openh264_video_codec_preference(setup):
57
+ openh264_path = setup.get("openh264_path")
58
+ Sora(
59
+ video_codec_preference=SoraVideoCodecPreference(
60
+ codecs=[
61
+ SoraVideoCodecPreference.Codec(
62
+ type=SoraVideoCodecType.VP8,
63
+ decoder=SoraVideoCodecImplementation.INTERNAL,
64
+ encoder=SoraVideoCodecImplementation.INTERNAL,
65
+ ),
66
+ SoraVideoCodecPreference.Codec(
67
+ type=SoraVideoCodecType.VP9,
68
+ decoder=SoraVideoCodecImplementation.INTERNAL,
69
+ encoder=SoraVideoCodecImplementation.INTERNAL,
70
+ ),
71
+ SoraVideoCodecPreference.Codec(
72
+ type=SoraVideoCodecType.AV1,
73
+ decoder=SoraVideoCodecImplementation.INTERNAL,
74
+ encoder=SoraVideoCodecImplementation.INTERNAL,
75
+ ),
76
+ # H.264 だけは OpenH264 を利用するようにする
77
+ SoraVideoCodecPreference.Codec(
78
+ type=SoraVideoCodecType.H264,
79
+ decoder=SoraVideoCodecImplementation.CISCO_OPENH264,
80
+ encoder=SoraVideoCodecImplementation.CISCO_OPENH264,
81
+ ),
82
+ ],
83
+ ),
84
+ openh264=openh264_path,
85
+ )
86
+
87
+
15
88
  def test_openh264_sendonly_recvonly(setup):
16
89
  signaling_urls = setup.get("signaling_urls")
17
90
  channel_id_prefix = setup.get("channel_id_prefix")
@@ -1,124 +0,0 @@
1
- import sys
2
-
3
- from sora_sdk import (
4
- Sora,
5
- SoraVideoCodecImplementation,
6
- SoraVideoCodecPreference,
7
- SoraVideoCodecType,
8
- get_video_codec_capability,
9
- )
10
-
11
-
12
- # このテストでは Linux では NVIDIA Video Codec SDK > Intel VPL > OpenH264 の順で優先される
13
- # このテストでは Windows では NVIDIA Video Codec SDK > Intel VPL の順で優先される
14
- # このテストでは macOS では Video Toolbox >OpenH264 の順で優先される
15
- def test_get_codec_capability(setup):
16
- openh264_path = setup.get("openh264_path")
17
- capability = get_video_codec_capability(openh264_path)
18
-
19
- intel_vpl_available = False
20
- cisco_openh264_available = False
21
- nvidia_video_codec_sdk_available = False
22
-
23
- for e in capability.engines:
24
- if e.name == SoraVideoCodecImplementation.INTEL_VPL:
25
- intel_vpl_available = True
26
- if e.name == SoraVideoCodecImplementation.CISCO_OPENH264:
27
- cisco_openh264_available = True
28
- if e.name == SoraVideoCodecImplementation.NVIDIA_VIDEO_CODEC_SDK:
29
- nvidia_video_codec_sdk_available = True
30
-
31
- match sys.platform:
32
- case "linux":
33
- assert openh264_path is not None
34
- assert cisco_openh264_available is True
35
- case "darwin":
36
- assert openh264_path is not None
37
- assert cisco_openh264_available is True
38
- case "win32":
39
- # SDK 的には Windows は非対応だが GitHub Actions の E2E テストの OpenH264 のパスは指定してある
40
- assert openh264_path is not None
41
- assert cisco_openh264_available is True
42
-
43
- codecs = []
44
- for e in capability.engines:
45
- if sys.platform == "linux":
46
- # Intel VPL があったら Open H.264 は採用しない
47
- if intel_vpl_available and e.name == SoraVideoCodecImplementation.CISCO_OPENH264:
48
- continue
49
-
50
- # NVIDIA Video Codec SDK があったら Intel VPL は採用しない
51
- if (
52
- nvidia_video_codec_sdk_available
53
- and e.name == SoraVideoCodecImplementation.INTEL_VPL
54
- ):
55
- continue
56
-
57
- # NVIDIA Video Codec SDK があったら OpenH264 は採用しない
58
- if (
59
- nvidia_video_codec_sdk_available
60
- and e.name == SoraVideoCodecImplementation.CISCO_OPENH264
61
- ):
62
- continue
63
-
64
- # macOS では INTERNAL の Video Toolbox が利用されるので OpenH264 は採用しないようにする
65
- if sys.platform == "darwin":
66
- if e.name == SoraVideoCodecImplementation.CISCO_OPENH264:
67
- continue
68
-
69
- for c in e.codecs:
70
- if c.decoder or c.encoder:
71
- # encoder/decoder どちらかが true であれば採用する
72
- if c.decoder or c.encoder:
73
- codecs.append(
74
- SoraVideoCodecPreference.Codec(
75
- type=c.type,
76
- decoder=e.name,
77
- encoder=e.name,
78
- )
79
- )
80
-
81
- # print(e.parameters.nvcodec_gpu_device_name)
82
- # print(e.parameters.openh264_path)
83
- # print(e.parameters.version)
84
- # print(e.parameters.vpl_impl)
85
- # print(e.parameters.vpl_impl_value)
86
-
87
- Sora(
88
- video_codec_preference=SoraVideoCodecPreference(
89
- codecs=codecs,
90
- ),
91
- openh264=openh264_path,
92
- )
93
-
94
-
95
- def test_video_codec_preference(setup):
96
- openh264_path = setup.get("openh264_path")
97
- Sora(
98
- video_codec_preference=SoraVideoCodecPreference(
99
- codecs=[
100
- SoraVideoCodecPreference.Codec(
101
- type=SoraVideoCodecType.VP8,
102
- decoder=SoraVideoCodecImplementation.INTERNAL,
103
- encoder=SoraVideoCodecImplementation.INTERNAL,
104
- ),
105
- SoraVideoCodecPreference.Codec(
106
- type=SoraVideoCodecType.VP9,
107
- decoder=SoraVideoCodecImplementation.INTERNAL,
108
- encoder=SoraVideoCodecImplementation.INTERNAL,
109
- ),
110
- SoraVideoCodecPreference.Codec(
111
- type=SoraVideoCodecType.AV1,
112
- decoder=SoraVideoCodecImplementation.INTERNAL,
113
- encoder=SoraVideoCodecImplementation.INTERNAL,
114
- ),
115
- # H.264 だけは OpenH264 を利用するようにする
116
- SoraVideoCodecPreference.Codec(
117
- type=SoraVideoCodecType.H264,
118
- decoder=SoraVideoCodecImplementation.CISCO_OPENH264,
119
- encoder=SoraVideoCodecImplementation.CISCO_OPENH264,
120
- ),
121
- ],
122
- ),
123
- openh264=openh264_path,
124
- )