Changeset 282439 in webkit
- Timestamp:
- Sep 14, 2021, 11:01:56 PM (5 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
-
ChangeLog (modified) (1 diff)
-
platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r282438 r282439 1 2021-09-14 Xabier Rodriguez Calvar <calvaris@igalia.com> 2 3 [GStreamer][EME] Accomodate cbcs as cipher-mode instead of mime 4 https://bugs.webkit.org/show_bug.cgi?id=230265 5 6 Reviewed by Philippe Normand. 7 8 In https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1013 9 it was decided that there should not be x-cbcs as mime type but 10 rather x-cenc with cbcs as cipher-mode. 11 12 Fly-by change, we will return GST_FLOW_NOT_SUPPORTED when we get 13 skip and crypt cbcs encryption scheme. 14 15 * platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp: 16 (transformInPlace): 17 1 18 2021-09-14 Rob Buis <rbuis@igalia.com> 2 19 -
trunk/Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp
r278075 r282439 221 221 }); 222 222 223 bool isCbcs = !g_strcmp0(gst_structure_get_string(protectionMeta->info, "cipher-mode"), "cbcs"); 224 223 225 unsigned ivSize; 224 226 if (!gst_structure_get_uint(protectionMeta->info, "iv_size", &ivSize)) { … … 228 230 if (!ivSize && !gst_structure_get_uint(protectionMeta->info, "constant_iv_size", &ivSize)) { 229 231 GST_ERROR_OBJECT(self, "No iv_size and failed to get constant_iv_size"); 232 ASSERT(isCbcs); 230 233 return GST_FLOW_NOT_SUPPORTED; 231 234 } … … 246 249 unsigned subSampleCount = 0; 247 250 // cbcs could not include the subsample_count. 248 if (!gst_structure_get_uint(protectionMeta->info, "subsample_count", &subSampleCount) 249 && !gst_structure_has_name(protectionMeta->info, "application/x-cbcs")) { 251 if (!gst_structure_get_uint(protectionMeta->info, "subsample_count", &subSampleCount) && !isCbcs) { 250 252 GST_ERROR_OBJECT(self, "Failed to get subsample_count"); 251 253 return GST_FLOW_NOT_SUPPORTED; … … 281 283 } 282 284 283 if ( gst_structure_has_field(protectionMeta->info, "crypt_byte_block") || gst_structure_has_field(protectionMeta->info, "skip_byte_block"))285 if (isCbcs && (gst_structure_has_field(protectionMeta->info, "crypt_byte_block") || gst_structure_has_field(protectionMeta->info, "skip_byte_block"))) { 284 286 GST_FIXME_OBJECT(self, "cbcs crypt/skip pattern is still unsupported"); 287 return GST_FLOW_NOT_SUPPORTED; 288 } 285 289 286 290 GstBuffer* ivBuffer = gst_value_get_buffer(value);
Note:
See TracChangeset
for help on using the changeset viewer.