sora-sdk 2025.1.0.dev9__tar.gz → 2025.1.0.dev11__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 (43) hide show
  1. {sora_sdk-2025.1.0.dev9/src/sora_sdk.egg-info → sora_sdk-2025.1.0.dev11}/PKG-INFO +6 -3
  2. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/README.md +5 -1
  3. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/pyproject.toml +2 -3
  4. sora_sdk-2025.1.0.dev9/src/sora_sdk/sora_sdk_ext.cpython-310-darwin.so → sora_sdk-2025.1.0.dev11/src/sora_sdk/sora_sdk_ext.cpython-311-darwin.so +0 -0
  5. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11/src/sora_sdk.egg-info}/PKG-INFO +6 -3
  6. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/src/sora_sdk.egg-info/SOURCES.txt +1 -1
  7. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_authz_simulcast.py +12 -6
  8. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/LICENSE +0 -0
  9. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/MANIFEST.in +0 -0
  10. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/NOTICE.md +0 -0
  11. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/buildbase.py +0 -0
  12. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/pypath.py +0 -0
  13. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/run.py +0 -0
  14. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/setup.cfg +0 -0
  15. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/setup.py +0 -0
  16. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/src/sora_sdk/__init__.py +0 -0
  17. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/src/sora_sdk/py.typed +0 -0
  18. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/src/sora_sdk/sora_sdk_ext.pyi +0 -0
  19. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/src/sora_sdk.egg-info/dependency_links.txt +0 -0
  20. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/src/sora_sdk.egg-info/top_level.txt +0 -0
  21. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_apple_video_toolbox.py +0 -0
  22. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_authz.py +0 -0
  23. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_ca_cert.py +0 -0
  24. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_capability.py +0 -0
  25. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_codec_preference.py +0 -0
  26. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_degradation_preference.py +0 -0
  27. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_encoded_transform.py +0 -0
  28. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_intel_vpl.py +0 -0
  29. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_messaging.py +0 -0
  30. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_messaging_header.py +0 -0
  31. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_nvidia_video_codec_sdk.py +0 -0
  32. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_openh264.py +0 -0
  33. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_opus.py +0 -0
  34. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_re_offer_re_answer_sdp.py +0 -0
  35. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_sendonly_recvonly.py +0 -0
  36. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_signaling.py +0 -0
  37. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_signaling_message.py +0 -0
  38. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_signaling_notify.py +0 -0
  39. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_simulcast.py +0 -0
  40. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_sora_disconnect.py +0 -0
  41. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_type_disconnect.py +0 -0
  42. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/tests/test_type_switched.py +0 -0
  43. {sora_sdk-2025.1.0.dev9 → sora_sdk-2025.1.0.dev11}/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.dev9
3
+ Version: 2025.1.0.dev11
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>
@@ -187,7 +187,6 @@ Project-URL: Documentation, https://sora-python-sdk.shiguredo.jp
187
187
  Project-URL: Discord, https://discord.gg/shiguredo
188
188
  Classifier: License :: OSI Approved :: Apache Software License
189
189
  Classifier: Programming Language :: Python :: 3 :: Only
190
- Classifier: Programming Language :: Python :: 3.10
191
190
  Classifier: Programming Language :: Python :: 3.11
192
191
  Classifier: Programming Language :: Python :: 3.12
193
192
  Classifier: Programming Language :: Python :: 3.13
@@ -290,7 +289,11 @@ PyPI 経由ではインストールできません。
290
289
  ## システム条件
291
290
 
292
291
  - WebRTC SFU Sora 2024.1.0 以降
293
- - Python 3.10 以上
292
+ - Python 3.11 以上
293
+
294
+ ## Python サポートポリシー
295
+
296
+ 直近の 3 バージョンの Python をサポートします。
294
297
 
295
298
  ## 対応プラットフォーム
296
299
 
@@ -91,7 +91,11 @@ PyPI 経由ではインストールできません。
91
91
  ## システム条件
92
92
 
93
93
  - WebRTC SFU Sora 2024.1.0 以降
94
- - Python 3.10 以上
94
+ - Python 3.11 以上
95
+
96
+ ## Python サポートポリシー
97
+
98
+ 直近の 3 バージョンの Python をサポートします。
95
99
 
96
100
  ## 対応プラットフォーム
97
101
 
@@ -1,14 +1,13 @@
1
1
  [project]
2
2
  name = "sora_sdk"
3
3
  authors = [{ name = "Shiguredo Inc.", email = "contact+pypi@shiguredo.jp" }]
4
- version = "2025.1.0.dev9"
4
+ version = "2025.1.0.dev11"
5
5
  description = "WebRTC SFU Sora Python SDK"
6
6
  readme = "README.md"
7
7
  license = { file = "LICENSE" }
8
8
  classifiers = [
9
9
  "License :: OSI Approved :: Apache Software License",
10
10
  "Programming Language :: Python :: 3 :: Only",
11
- "Programming Language :: Python :: 3.10",
12
11
  "Programming Language :: Python :: 3.11",
13
12
  "Programming Language :: Python :: 3.12",
14
13
  "Programming Language :: Python :: 3.13",
@@ -57,7 +56,7 @@ build-backend = "setuptools.build_meta"
57
56
  [tool.uv]
58
57
  python-preference = "only-managed"
59
58
  dev-dependencies = [
60
- "nanobind~=2.4.0",
59
+ "nanobind~=2.5.0",
61
60
  "setuptools~=75.7",
62
61
  "build~=1.2.2.post1",
63
62
  "wheel~=0.45.1",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sora_sdk
3
- Version: 2025.1.0.dev9
3
+ Version: 2025.1.0.dev11
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>
@@ -187,7 +187,6 @@ Project-URL: Documentation, https://sora-python-sdk.shiguredo.jp
187
187
  Project-URL: Discord, https://discord.gg/shiguredo
188
188
  Classifier: License :: OSI Approved :: Apache Software License
189
189
  Classifier: Programming Language :: Python :: 3 :: Only
190
- Classifier: Programming Language :: Python :: 3.10
191
190
  Classifier: Programming Language :: Python :: 3.11
192
191
  Classifier: Programming Language :: Python :: 3.12
193
192
  Classifier: Programming Language :: Python :: 3.13
@@ -290,7 +289,11 @@ PyPI 経由ではインストールできません。
290
289
  ## システム条件
291
290
 
292
291
  - WebRTC SFU Sora 2024.1.0 以降
293
- - Python 3.10 以上
292
+ - Python 3.11 以上
293
+
294
+ ## Python サポートポリシー
295
+
296
+ 直近の 3 バージョンの Python をサポートします。
294
297
 
295
298
  ## 対応プラットフォーム
296
299
 
@@ -9,7 +9,7 @@ run.py
9
9
  setup.py
10
10
  src/sora_sdk/__init__.py
11
11
  src/sora_sdk/py.typed
12
- src/sora_sdk/sora_sdk_ext.cpython-310-darwin.so
12
+ src/sora_sdk/sora_sdk_ext.cpython-311-darwin.so
13
13
  src/sora_sdk/sora_sdk_ext.pyi
14
14
  src/sora_sdk.egg-info/PKG-INFO
15
15
  src/sora_sdk.egg-info/SOURCES.txt
@@ -84,14 +84,13 @@ def test_simulcast_authz_scale_resolution_to(
84
84
  )
85
85
  sendonly.connect(fake_video=True)
86
86
 
87
- time.sleep(5)
87
+ time.sleep(10)
88
88
 
89
89
  # "type": "offer" の SDP で Simulcast があるかどうか
90
90
  assert sendonly.offer_message is not None
91
91
  assert sendonly.offer_message["sdp"] is not None
92
92
  assert video_codec_type in sendonly.offer_message["sdp"]
93
93
  assert "a=simulcast:recv r0;r1;r2" in sendonly.offer_message["sdp"]
94
- sendonly_stats = sendonly.get_stats()
95
94
 
96
95
  assert "encodings" in sendonly.offer_message
97
96
  assert len(sendonly.offer_message["encodings"]) == 3
@@ -121,22 +120,25 @@ def test_simulcast_authz_scale_resolution_to(
121
120
  sendonly.offer_message["encodings"][0]["scalabilityMode"]
122
121
  == simulcast_encodings[0]["scalabilityMode"]
123
122
  )
123
+
124
124
  assert (
125
125
  sendonly.offer_message["encodings"][1]["scalabilityMode"]
126
126
  == simulcast_encodings[1]["scalabilityMode"]
127
127
  )
128
+
128
129
  assert (
129
130
  sendonly.offer_message["encodings"][2]["scalabilityMode"]
130
131
  == simulcast_encodings[2]["scalabilityMode"]
131
132
  )
132
133
 
133
- sendonly.disconnect()
134
-
135
134
  # "type": "answer" の SDP で Simulcast があるかどうか
136
135
  assert sendonly.answer_message is not None
137
136
  assert "sdp" in sendonly.answer_message
138
137
  assert "a=simulcast:send r0;r1;r2" in sendonly.answer_message["sdp"]
139
138
 
139
+ sendonly_stats = sendonly.get_stats()
140
+ sendonly.disconnect()
141
+
140
142
  # codec が無かったら StopIteration 例外が上がる
141
143
  sendonly_codec_stats = next(s for s in sendonly_stats if s.get("type") == "codec")
142
144
  assert sendonly_codec_stats["mimeType"] == f"video/{video_codec_type}"
@@ -170,7 +172,11 @@ def test_simulcast_authz_scale_resolution_to(
170
172
  assert s["frameHeight"] == 352
171
173
 
172
174
  # FIXME:これは libwebrtc 側の挙動を制御できず L1T2 になってしまう
173
- assert s["scalabilityMode"] == "L1T2"
175
+ scalability_mode = None
176
+ # FIXME: scalabilityMode がない場合がある
177
+ if "scalabilityMode" in s:
178
+ scalability_mode = s["scalabilityMode"]
179
+ assert s["scalabilityMode"] == "L1T2"
174
180
 
175
181
  # targetBitrate が指定したビットレートの 90% 以上、100% 以下に収まることを確認
176
182
  expected_bitrate = video_bit_rate * 1000
@@ -178,7 +184,7 @@ def test_simulcast_authz_scale_resolution_to(
178
184
  s["rid"],
179
185
  video_codec_type,
180
186
  s["encoderImplementation"],
181
- s["scalabilityMode"],
187
+ scalability_mode,
182
188
  expected_bitrate,
183
189
  s["targetBitrate"],
184
190
  s["frameWidth"],