)]}'
{
  "commit": "c40855e42dc76820c768a02ed273535e12dca190",
  "tree": "f1a7e3494ac1edf0e48cdae768e523642ca86ac4",
  "parents": [
    "47f9a9641699cf31879d81769e998edbc0caa782"
  ],
  "author": {
    "name": "Martin Kong",
    "email": "martinkong@google.com",
    "time": "Fri Jul 17 06:06:20 2026"
  },
  "committer": {
    "name": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Jul 22 13:13:47 2026"
  },
  "message": "Add DEFINE_JNI() to WebRTC open source\n\nWe have added some new features to JNI Zero that requires all C++\nimplementation files to have a macro call DEFINE_JNI(JavaClassName)\nat the end of the file, where JavaClassName is the name of the Java\nclass whose generated JNI Zero header file is included in the C++ file.\nThis CL adds this macro call to the end of all C++ files.\n\nBug: chromium:481689330\nChange-Id: I50abcdc0f1fe8cba20377b07577e8821d8cf9221\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/489720\nReviewed-by: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\nCommit-Queue: Martin Kong \u003cmartinkong@google.com\u003e\nReviewed-by: Danil Chapovalov \u003cdanilchap@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#48212}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "063616f870a393e68da5ea9c264ee1640e200342",
      "old_mode": 33188,
      "old_path": "rtc_tools/network_tester/jni.cc",
      "new_id": "caaa284e41056f850591fc03ee300ebec19ccb5b",
      "new_mode": 33188,
      "new_path": "rtc_tools/network_tester/jni.cc"
    },
    {
      "type": "modify",
      "old_id": "d5e1af198b8fd1cf6f4a68f9f00cc85b129b5c91",
      "old_mode": 33188,
      "old_path": "sdk/android/instrumentationtests/loggable_test.cc",
      "new_id": "8b2ab217f532a290184f9d3a8f712c08012a663d",
      "new_mode": 33188,
      "new_path": "sdk/android/instrumentationtests/loggable_test.cc"
    },
    {
      "type": "modify",
      "old_id": "587a37b72e4c340c91d5c3d05400620fc8c243ff",
      "old_mode": 33188,
      "old_path": "sdk/android/instrumentationtests/video_frame_buffer_test.cc",
      "new_id": "cbd549c1942edb97d4974dd5b769ba0d15bbf675",
      "new_mode": 33188,
      "new_path": "sdk/android/instrumentationtests/video_frame_buffer_test.cc"
    },
    {
      "type": "modify",
      "old_id": "3c8e48e00bac9b47817fea2034d21b2b7b1b2ae2",
      "old_mode": 33188,
      "old_path": "sdk/android/native_api/jni/application_context_provider.cc",
      "new_id": "18ed623ca72510a5b6e7230cff629e64278cc05b",
      "new_mode": 33188,
      "new_path": "sdk/android/native_api/jni/application_context_provider.cc"
    },
    {
      "type": "modify",
      "old_id": "16646672ba225c12abb7a81670e37707f5b07ddd",
      "old_mode": 33188,
      "old_path": "sdk/android/native_api/jni/class_loader.cc",
      "new_id": "221f43aba927486a7f99d05c9e49e29d093f3ae3",
      "new_mode": 33188,
      "new_path": "sdk/android/native_api/jni/class_loader.cc"
    },
    {
      "type": "modify",
      "old_id": "9581b2d4127076b73975586425e3e573baf3a7af",
      "old_mode": 33188,
      "old_path": "sdk/android/native_api/jni/java_types.cc",
      "new_id": "37314a6b5f067dd346a8cc79ddcfc57cb8640132",
      "new_mode": 33188,
      "new_path": "sdk/android/native_api/jni/java_types.cc"
    },
    {
      "type": "modify",
      "old_id": "bb2c31da976e9bd30ad4c7fb29912afb1e331e0e",
      "old_mode": 33188,
      "old_path": "sdk/android/native_unittests/audio_device/audio_device_unittest.cc",
      "new_id": "9c57cab732414dccf676250951ae2a48844c2aa7",
      "new_mode": 33188,
      "new_path": "sdk/android/native_unittests/audio_device/audio_device_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "d4a65391d06863c4ccb25ee5a187dbc0b4bf7507",
      "old_mode": 33188,
      "old_path": "sdk/android/native_unittests/codecs/wrapper_unittest.cc",
      "new_id": "475f33dda7c3fb804a1b08a1db73fe868defd6ba",
      "new_mode": 33188,
      "new_path": "sdk/android/native_unittests/codecs/wrapper_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "b0907e24bc563bbb557bb6863bb5b949309673e8",
      "old_mode": 33188,
      "old_path": "sdk/android/native_unittests/java_types_unittest.cc",
      "new_id": "73eff9d6cba7c39a69c0c339823a3b3a95199aca",
      "new_mode": 33188,
      "new_path": "sdk/android/native_unittests/java_types_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "dae64801f0742893cc408a1c31eeb0c336c52f3e",
      "old_mode": 33188,
      "old_path": "sdk/android/native_unittests/peerconnection/peer_connection_factory_unittest.cc",
      "new_id": "3dc9ca462ebc8cdff2cd763165bb8b6d9ff09031",
      "new_mode": 33188,
      "new_path": "sdk/android/native_unittests/peerconnection/peer_connection_factory_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "9a5144bfc65acb4c4b223aa06fbd27997a7ea6a2",
      "old_mode": 33188,
      "old_path": "sdk/android/native_unittests/video/video_source_unittest.cc",
      "new_id": "baec9a35cb6e66e14fb744c6a875c63917f82ae2",
      "new_mode": 33188,
      "new_path": "sdk/android/native_unittests/video/video_source_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "043313a8f6e471aeed62bf89bb9f963ac0f14c42",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/android_histogram.cc",
      "new_id": "80fae7dcdbbc29af10f34934f4ec7928b2163ee7",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/android_histogram.cc"
    },
    {
      "type": "modify",
      "old_id": "581b6ccb9eb255cc6ff47d7c7cb3a579a7f1fdf4",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/android_metrics.cc",
      "new_id": "0807e21313c83155b5a62e34dc07e80d616b0c38",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/android_metrics.cc"
    },
    {
      "type": "modify",
      "old_id": "932f34b212a291995240d80c31b2fde2d550fbe7",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/android_network_monitor.cc",
      "new_id": "1197bf3d7aea96866d534f12f19f553456168898",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/android_network_monitor.cc"
    },
    {
      "type": "modify",
      "old_id": "9e4f188aa0260332f5270356454332fbeed4e4b5",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/android_video_track_source.cc",
      "new_id": "69b566e3427f5b5eeaa926f3cdbce3a0f6e4b262",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/android_video_track_source.cc"
    },
    {
      "type": "modify",
      "old_id": "00255c0393b884ae08713bdb582be1b4fde03999",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/audio_device/audio_device_module.cc",
      "new_id": "c10d99de2fbe22535297cac163b9282d3b81a310",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/audio_device/audio_device_module.cc"
    },
    {
      "type": "modify",
      "old_id": "82b47b7026bdbd6fb306d325acea4ade649f789f",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/audio_device/audio_record_jni.cc",
      "new_id": "82bd274cbb6d25e0822650280e4c873d3c23d668",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/audio_device/audio_record_jni.cc"
    },
    {
      "type": "modify",
      "old_id": "ce8f295ec4c9dbdc3f313d468f57e68b53ee3eb3",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/audio_device/audio_track_jni.cc",
      "new_id": "1a6ece20ca58a41c6334e21d28e0c946235245a9",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/audio_device/audio_track_jni.cc"
    },
    {
      "type": "modify",
      "old_id": "472921bad42a4d99ab915a6f8c35734bbd18b898",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/audio_device/java_audio_device_module.cc",
      "new_id": "8fbb618448f32db1ebedf0c4795e4fd902f63643",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/audio_device/java_audio_device_module.cc"
    },
    {
      "type": "modify",
      "old_id": "6b80e117dbc936fd9f8ab66c3f3c0cfcb7cf0a7d",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/builtin_audio_decoder_factory_factory.cc",
      "new_id": "bd744173e568febb7aa55d0053e04ef7d1d7e9d5",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/builtin_audio_decoder_factory_factory.cc"
    },
    {
      "type": "modify",
      "old_id": "192abf1ec829fbfd51bc14cfd094c02c1206013e",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/builtin_audio_encoder_factory_factory.cc",
      "new_id": "d8f669f767a06b53503d84f0d338ab79cc209cc1",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/builtin_audio_encoder_factory_factory.cc"
    },
    {
      "type": "modify",
      "old_id": "99ad2f50aeee987c60b490fe305ff05013262a04",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/dav1d_codec.cc",
      "new_id": "e5082db5f78de1b7251f60b93114277088866f88",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/dav1d_codec.cc"
    },
    {
      "type": "modify",
      "old_id": "1c6aaab2d7be1b244da03f833cfbf31932fc8a74",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/egl_base_10_impl.cc",
      "new_id": "9054bf8830879e57a489fb71df6a8feae20b68fa",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/egl_base_10_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "6b18389afd9a39546b7c3b93b32d78ebc814b1cd",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/encoded_image.cc",
      "new_id": "1c7cab008f3431aab4466d2a77f0c03680bbe4dd",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/encoded_image.cc"
    },
    {
      "type": "modify",
      "old_id": "bf751e47d1d6a4915b17dd5c87b6a748acf127fb",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/environment.cc",
      "new_id": "94ff4e674eb1cd374971da12c6b2f53d06113279",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/environment.cc"
    },
    {
      "type": "modify",
      "old_id": "688cf7bb879dca3a4b29a7c14b630a77ac399d4c",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/h264_utils.cc",
      "new_id": "7e92f5ef2508817d920094958820bf59ff067402",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/h264_utils.cc"
    },
    {
      "type": "modify",
      "old_id": "e1c232a463441615028f042f7ed63b7186d4caa4",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/java_i420_buffer.cc",
      "new_id": "1d4b4b48c48cea849bb4489c55a82dec8a75901b",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/java_i420_buffer.cc"
    },
    {
      "type": "modify",
      "old_id": "d2ea7cb20e2e479248763961b68e9f8d736d7fef",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/jni_common.cc",
      "new_id": "f8738f58ab0e90d74b2ae50984a760ff72b060c8",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/jni_common.cc"
    },
    {
      "type": "modify",
      "old_id": "fa4f21c35fb5fe5065289715cfd1dbbb455fa08a",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/libaom_av1_encoder.cc",
      "new_id": "5f132f0b1a4322536690604ee069c0290a0f2642",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/libaom_av1_encoder.cc"
    },
    {
      "type": "modify",
      "old_id": "a0e5b9704ec4acf46991f06052bbb07d6d6b894e",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/logging/log_sink.cc",
      "new_id": "412cfa92c3d19f47c02fd74f847c8af7f321a018",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/logging/log_sink.cc"
    },
    {
      "type": "modify",
      "old_id": "3d63936fb32210b3d9e4c8222ff0fbd50e705be8",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/native_capturer_observer.cc",
      "new_id": "3b3b8c4249286df9cd2605a4820e6c58ebcf41a1",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/native_capturer_observer.cc"
    },
    {
      "type": "modify",
      "old_id": "f460e9c04085799a23ba230850c6dcf9850cd846",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/nv12_buffer.cc",
      "new_id": "9b3adb79a8dca797dbdc46214fb2ce0dbf39b2d1",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/nv12_buffer.cc"
    },
    {
      "type": "modify",
      "old_id": "658ac83a878497d34a0044bed6ae6a1780a88320",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/nv21_buffer.cc",
      "new_id": "454699f85331b9b0067f7bb77c1b11c21ee4119d",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/nv21_buffer.cc"
    },
    {
      "type": "modify",
      "old_id": "1fd00d173114f5f642cab1c5b9d673c2160663d6",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/add_ice_candidate_observer.cc",
      "new_id": "da57d9bf9faa8bdf385e3ce0ad09750ef39cc3d2",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/add_ice_candidate_observer.cc"
    },
    {
      "type": "modify",
      "old_id": "1ec0f44e953bd136f918c89962f5bcfc955168c6",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/audio_track.cc",
      "new_id": "38ffc2ee27161a0d15d7a59135759d95477ae902",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/audio_track.cc"
    },
    {
      "type": "modify",
      "old_id": "489f39617e494b66f60054650c819f74973707b9",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/call_session_file_rotating_log_sink.cc",
      "new_id": "f6c4940aec41448974019521d14d9b00daeb125d",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/call_session_file_rotating_log_sink.cc"
    },
    {
      "type": "modify",
      "old_id": "13711042616e5c6dd7e70af4eabfed96fc56d30e",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/crypto_options.cc",
      "new_id": "4968b63cbe63cf5f2e45a208563c99f329faa9a7",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/crypto_options.cc"
    },
    {
      "type": "modify",
      "old_id": "e3f17ac1749b74d68e3e14d9ebcabad9970752ef",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/data_channel.cc",
      "new_id": "314e663759464621497fc014806934915e9a250a",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/data_channel.cc"
    },
    {
      "type": "modify",
      "old_id": "aa77861c59da53ddd4ec3067280ad61c7ab0f012",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/dtmf_sender.cc",
      "new_id": "8a3a475fb68f032eaeb66bf992a6f57679cfe913",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/dtmf_sender.cc"
    },
    {
      "type": "modify",
      "old_id": "aa574971cc1b58dc4f3e5e4a00c103a70263ff6f",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/ice_candidate.cc",
      "new_id": "36e9de68a3e075350b7df4320e3fb8fffeced4ed",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/ice_candidate.cc"
    },
    {
      "type": "modify",
      "old_id": "d9024d6e870749db55dc19f3f0b0a45a831434e2",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/logging.cc",
      "new_id": "cf8bb180fda86e57d8237a24dad3187620063e9a",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/logging.cc"
    },
    {
      "type": "modify",
      "old_id": "97a78dd6f1d275c5f834faae42b83a8c4e9518e9",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/media_constraints.cc",
      "new_id": "a0a88134a650828f3028ae0d41ba461bc432b029",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/media_constraints.cc"
    },
    {
      "type": "modify",
      "old_id": "58d650eb746466946d97eb88d51a5ecbc7f60e9f",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/media_source.cc",
      "new_id": "1725ec7c5de36de2f2abc2b22f586bf80fc37d92",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/media_source.cc"
    },
    {
      "type": "modify",
      "old_id": "00f26a691683bf8b843d39ab51f30543d10703e7",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/media_stream.cc",
      "new_id": "3f5a2a86a681c4680ebc460a8582c87db6366207",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/media_stream.cc"
    },
    {
      "type": "modify",
      "old_id": "28c43829ff9605c850bbb2105d82b21df73ca1a5",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/media_stream_track.cc",
      "new_id": "be42254eee342671017e014e9dcaddcdb1d2af78",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/media_stream_track.cc"
    },
    {
      "type": "modify",
      "old_id": "b81e7a2ef7428753da669ef668cb34fca43db99d",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/peer_connection.cc",
      "new_id": "a12be8a69bbd76ff8eedcff4c46027dd4f56d5f5",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/peer_connection.cc"
    },
    {
      "type": "modify",
      "old_id": "fc244f81b1cd9023254396fe2b34dd6bdb769af0",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/peer_connection_factory.cc",
      "new_id": "bf0191e9ea7c681063da54ebe68f8f0cd966d4a8",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/peer_connection_factory.cc"
    },
    {
      "type": "modify",
      "old_id": "9d0361ac3e4eaa68accf0f9aa7d50e9d129515d9",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/rtc_certificate.cc",
      "new_id": "a70b300792bc4e010e19288c20f300b6e9600149",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/rtc_certificate.cc"
    },
    {
      "type": "modify",
      "old_id": "094b889775fcd0b358297849873f70bcb736ac78",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/rtc_stats_collector_callback_wrapper.cc",
      "new_id": "6aff5dcf0809f8e7311cec1c2952f7aad1344e29",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/rtc_stats_collector_callback_wrapper.cc"
    },
    {
      "type": "modify",
      "old_id": "d2b1246d3cca6a6dc9bf85bab81772a815357d95",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/rtp_capabilities.cc",
      "new_id": "9b21a1fcdfbce568826abfb36d154720fa7d95c3",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/rtp_capabilities.cc"
    },
    {
      "type": "modify",
      "old_id": "1dbf2c0faa8ac308a8abc9c48a030b9f286df7fd",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/rtp_parameters.cc",
      "new_id": "a167b9d9b70835d8c78cfafe65062a46e9d55dd2",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/rtp_parameters.cc"
    },
    {
      "type": "modify",
      "old_id": "772bbb737fa97cfd1073baac6eb20773dd9f0e4a",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/rtp_receiver.cc",
      "new_id": "6bb4393b1d6c6cfba98638b7f09ae7f6c99d1a4b",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/rtp_receiver.cc"
    },
    {
      "type": "modify",
      "old_id": "c294d9ef16f67dbdfe97556e2b1e12dc551ee5fc",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/rtp_sender.cc",
      "new_id": "d128809a0fc9079593d3fc205e3957fa6c4343d4",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/rtp_sender.cc"
    },
    {
      "type": "modify",
      "old_id": "b93d77ce7d0e31d13e1b96b4b85115bab5924813",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/rtp_transceiver.cc",
      "new_id": "695e61f0952f83e11555d322090e909899561b90",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/rtp_transceiver.cc"
    },
    {
      "type": "modify",
      "old_id": "6c813678728cf76eea569f07b309d4aa38272aae",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/sdp_observer.cc",
      "new_id": "66ce359607177c653c8ec799e0de6678d2166af4",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/sdp_observer.cc"
    },
    {
      "type": "modify",
      "old_id": "3d00af3a2bcba0561de8cde6640b3d31d525d567",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/session_description.cc",
      "new_id": "3f276181e7b0ae6218d019d0cda4def7e7da2af2",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/session_description.cc"
    },
    {
      "type": "modify",
      "old_id": "48f23c96f7768905882c93ed27595fc5157c552c",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/ssl_certificate_verifier_wrapper.cc",
      "new_id": "74deedc2f17fbf4568c33b6c0bca2645e76cd43b",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/ssl_certificate_verifier_wrapper.cc"
    },
    {
      "type": "modify",
      "old_id": "0a42bc05ddea9bc164d28eed2553a41d345d9cfd",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/stats_observer.cc",
      "new_id": "37f7647a2f05b7db1aab9b7ef09e9e49c57b3ea4",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/stats_observer.cc"
    },
    {
      "type": "modify",
      "old_id": "34e9636fd3c454fa3948282a92f7dbd54c67468f",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/pc/turn_customizer.cc",
      "new_id": "bdf631a7e71fe10fd9437cc53793c61561a80511",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/pc/turn_customizer.cc"
    },
    {
      "type": "modify",
      "old_id": "75344f3522381d4ff6d4b4492a95ef5e171be88e",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/scoped_java_ref_counted.cc",
      "new_id": "292bad33f8dae999c2fd9e065839c5b5ebf8a04c",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/scoped_java_ref_counted.cc"
    },
    {
      "type": "modify",
      "old_id": "d0d743ba75bd96e20b97c67fc3f2ae7bbe5c9cdf",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/software_video_decoder_factory.cc",
      "new_id": "86c26f7e21a7edc19f4c115fcf34403ba557af3c",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/software_video_decoder_factory.cc"
    },
    {
      "type": "modify",
      "old_id": "51c40bd62a4cb4b657cc29f26bbce3b03fa5eae2",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/software_video_encoder_factory.cc",
      "new_id": "d7959e51dd97e7803b3138c2e520d4793a68a513",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/software_video_encoder_factory.cc"
    },
    {
      "type": "modify",
      "old_id": "12fbd0052f4eb52ded354b5dce937a1654e35a35",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/timestamp_aligner.cc",
      "new_id": "3f24f276336f9cda4a2cd6df144531b5c3a66c40",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/timestamp_aligner.cc"
    },
    {
      "type": "modify",
      "old_id": "8ba7274721b2d0db2079fe1b5055a96f95dcc97a",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_codec_info.cc",
      "new_id": "eb25b4708d5de418735cbf71c0cc2bad10cabf8a",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_codec_info.cc"
    },
    {
      "type": "modify",
      "old_id": "a5433239c70e0c5a19cfc61af35c4cb4b5e14fba",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_codec_status.cc",
      "new_id": "9e9eaecdc20c82e1fc3fda79061da4b6e6781691",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_codec_status.cc"
    },
    {
      "type": "modify",
      "old_id": "e5d6a8629db16887a35e060c3ae628ab8794de05",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_decoder_factory_wrapper.cc",
      "new_id": "0caa616d859f61480e416fa41868cea0d4ccc7d3",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_decoder_factory_wrapper.cc"
    },
    {
      "type": "modify",
      "old_id": "30a7f2f3d431c4f528fcb6783bc4183fc6774913",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_decoder_fallback.cc",
      "new_id": "70ba764aec8d80db081817cc1fffc1f78b1a30f7",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_decoder_fallback.cc"
    },
    {
      "type": "modify",
      "old_id": "0bd53dda7708df83e9362fc66165d9b40df39f46",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_decoder_wrapper.cc",
      "new_id": "30ed742f035d1f2ef615ecb76c572e45b7bebf0b",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_decoder_wrapper.cc"
    },
    {
      "type": "modify",
      "old_id": "6a0e62ae23141e0238fa8d1042491a9d19915431",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_encoder_factory_wrapper.cc",
      "new_id": "778e83345a42d566b5b05474d5ab1d00cd018699",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_encoder_factory_wrapper.cc"
    },
    {
      "type": "modify",
      "old_id": "8956fd7e8764a65629c5f99ddc35092ba3e169f3",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_encoder_fallback.cc",
      "new_id": "45d0f1ac945e389836c55df024c58ee38e279ed7",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_encoder_fallback.cc"
    },
    {
      "type": "modify",
      "old_id": "57618db9ab2a22fdd334c3ee473888e8b483fe07",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_encoder_wrapper.cc",
      "new_id": "d36a769a8bf5c904628a3fc0a666ad9afeeb60bf",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_encoder_wrapper.cc"
    },
    {
      "type": "modify",
      "old_id": "d16db0edcb6bd1cafaeeec7fd3e081907826234f",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_frame.cc",
      "new_id": "1dca6f9a0bde1a15780058d8c6c2b23a4f23584f",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_frame.cc"
    },
    {
      "type": "modify",
      "old_id": "95d4d89dbaad5f7cdf4b1dce151fb41f901a0d24",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_sink.cc",
      "new_id": "a77e4facb00db738ae495a5267c84bca8b76899d",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_sink.cc"
    },
    {
      "type": "modify",
      "old_id": "e81c5250836626de00bb01df09bbb7ef00442332",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/video_track.cc",
      "new_id": "10b58ad8b328cee9a4183c4c9848b4ed67afa9ce",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/video_track.cc"
    },
    {
      "type": "modify",
      "old_id": "546ab8f564a57888841b7158a4536a78aa1d1637",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/vp8_codec.cc",
      "new_id": "25abb4410c3799394e80fdd6ec663d1964435122",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/vp8_codec.cc"
    },
    {
      "type": "modify",
      "old_id": "f4e7e5ba2360280bfc1f233fd0a5822c3fb654b1",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/vp9_codec.cc",
      "new_id": "d7ec94f20b55c60277e951c78ebc4901870143fe",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/vp9_codec.cc"
    },
    {
      "type": "modify",
      "old_id": "d05a43955aeac697feebabdf9e5b308c9bf16f81",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/wrapped_native_i420_buffer.cc",
      "new_id": "e652ebf6558ddad8e5d57a306328ed26ca7361d8",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/wrapped_native_i420_buffer.cc"
    },
    {
      "type": "modify",
      "old_id": "87e97c1da0eef8777d56b57372ce7c3c59335837",
      "old_mode": 33188,
      "old_path": "sdk/android/src/jni/yuv_helper.cc",
      "new_id": "4df3c760079f2f7d3dd6d8805eb1fbefe2236804",
      "new_mode": 33188,
      "new_path": "sdk/android/src/jni/yuv_helper.cc"
    },
    {
      "type": "modify",
      "old_id": "d3604f48f1e2a51c933914e7d3ad3a1ef4b674e0",
      "old_mode": 33188,
      "old_path": "test/android/native_test_launcher.cc",
      "new_id": "9f79341fa48abbe279b8ca9879419d65df645388",
      "new_mode": 33188,
      "new_path": "test/android/native_test_launcher.cc"
    }
  ]
}
