286 Commits

Author SHA1 Message Date
Qiu Jianlin
abadbce1fa Update is_first_packet_in_frame flag in H.265 depacketizer
Follow H.265 spec section 7.4.2.4.4 to set is_first_packet_in_frame flag
in rtp header, to make sure we only set it to true when corresponding
NALU can be the first NALU in a frame.

Bug: chromium:384391181
Change-Id: I082c38513d9d213f8d354633539028b57777368f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/372742
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43651}
2025-01-03 05:07:21 -08:00
Tommi
f1656def75 Apply dimension checking across the YUV buffer classes.
Bug: chromium:371686447
Change-Id: I15502748c0b0036aaef3742bce27104887b77f65
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/372140
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43617}
2024-12-19 08:31:15 -08:00
Tommi
0dec0897f1 Make I420DataSize trigger a crash in case of int overflow.
Bug: chromium:371686447
Fixes: chromium:371686447
Change-Id: Icd4ef5f1edc54853445bb1542eff62e354655368
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/371900
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43588}
2024-12-17 07:25:34 -08:00
Björn Terelius
711e1a8beb Create a custom test launcher for android
Set use_default_launcher=false in rtc_test on android

Bug: webrtc:42223878
Change-Id: If05da40b420d5da8f9e0f39560eb07380ebada14
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368921
Owners-Override: Jeremy Leconte <jleconte@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43505}
2024-12-06 09:30:37 +00:00
Andreas Pehrson
4a6a7465d0 In ParseNonParameterSetNalu check BitstreamReader::Ok before returning early
~BitstreamReader() DCHECKs that the last read has been verified, so all
paths where we may leave the slice_reader instance's scope early must be
guarded by an Ok().

Bug: None
Change-Id: Ic67f87c04d1f042392c1dd6a066fdccf26e19003
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/369540
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43463}
2024-11-27 12:16:36 +00:00
Liad Rubin
9fb71e3b01 Add RTC_DCHECK_IS_ON to unittest, as death is expected with DCHECK
The problem is that in some opt builds we remove RTC_DCHECK, and hence the test that expects death through RTC_DCHECK fails. Adding RTC_DCHECK_IS_ON ensures that test is coupled with builds that include RTC_DCHECK.

Bug: webrtc:358039777
Change-Id: I7721849dc76ce976ac4a084273cedad44f96fef2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366524
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43386}
2024-11-11 10:38:08 +00:00
Fanny Linderborg
a507a08904 Calculate corruption score once the frame is decoded
Bug: webrtc:358039777
Change-Id: I291e8e505f2ea7f9f95da4c83cd7679b49f2bc56
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364600
Reviewed-by: Erik Språng <sprang@webrtc.org>
Auto-Submit: Fanny Linderborg <linderborg@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43192}
2024-10-08 13:26:00 +00:00
Philipp Hancke
5da0f2ef2a h264: ignore filler NALs, print NAL type on bitstream parsing errors
BUG=None

Change-Id: Idbde6c18a4dfb6ed6d62abb33f9b9178ef0c64b5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364123
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43173}
2024-10-04 16:18:31 +00:00
Fanny Linderborg
71bb08d769 Add converter CorruptionDetectionMessage -> FrameInstrumentationSyncData
Bug: webrtc:358039777
Change-Id: I4eec591252a4587e645d5ba6a594c21a3c284bc9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364460
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Auto-Submit: Fanny Linderborg <linderborg@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43144}
2024-10-02 13:37:29 +00:00
Fanny Linderborg
a61a25a0b1 Correct format for TODO comments
Bug: webrtc:358039777
Change-Id: Iad5f8867bcbca883b16617819ea24a965160d23e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/363802
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Fanny Linderborg <linderborg@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43089}
2024-09-27 07:17:40 +00:00
Fanny Linderborg
f4aa6953f9 Add a test that verifies that all fields are converted
Bug: webrtc:358039777
Change-Id: Ie97a3212077b1a989d2063c6dad0d41582b28bde
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/363800
Commit-Queue: Erik Språng <sprang@webrtc.org>
Auto-Submit: Fanny Linderborg <linderborg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43086}
2024-09-27 00:43:27 +00:00
Fanny Linderborg
a2d515584e Add converter from CorruptionDetectionMessage To FrameInstrumentationData
Bug: webrtc:358039777
Change-Id: I041b9a84e1f93d7e7a3d31b8f0f33c94eeca76a6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/363700
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Auto-Submit: Fanny Linderborg <linderborg@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43081}
2024-09-25 22:43:03 +00:00
Philipp Hancke
c1dc8abeeb Remove non-span NAL unit splitter and SPS parser
after cleaning up the Chromium dependency

BUG=webrtc:42225170

Change-Id: Icd3934ca51f829c55e061fc1943500435c845a8d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/362569
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Cr-Commit-Position: refs/heads/main@{#43053}
2024-09-19 17:49:37 +00:00
Fanny Linderborg
97d0427080 Add converters for corruption detection structs
Bug: webrtc:358039777
Change-Id: I05b99fe05023e83236f37fd53d96993696989ca6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361823
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Fanny Linderborg <linderborg@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43007}
2024-09-11 13:44:04 +00:00
Fanny Linderborg
6f64ae1ff5 Extract corruption detection message to its own target
Bug: webrtc:358039777
Change-Id: I6bc064aaba4c5b7f9b55215414e70e55eb0e0f64
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361864
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Fanny Linderborg <linderborg@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42977}
2024-09-06 13:32:35 +00:00
Fanny Linderborg
6e072e6bfb Rename is_key_frame to communicate_upper_bits in FrameInstrumentation*Data
This is to make it clear that this field indicate whether the upper bits
of the sequence number should be communicated. However, the current
implementation only sets the field if it is a key frame.

Bug: webrtc:358039777
Change-Id: Ic2c8b6d91499e4e5cf25b8ce9591d326d7044fb0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361402
Commit-Queue: Fanny Linderborg <linderborg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42924}
2024-09-03 10:42:18 +00:00
Fanny Linderborg
5eb8588a65 Move FrameInstrumentation*Data structs to common_video
This enables usage in, e.g., `modules/rtp_rtcp`.

R=sprang@webrtc.org

Bug: webrtc:358039777
Change-Id: I0f8aafb75938d07f338bbf7acc4ff7c15a8b0baa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361285
Commit-Queue: Fanny Linderborg <linderborg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42920}
2024-09-03 07:20:06 +00:00
Florent Castelli
8037fc6ffa Migrate absl::optional to std::optional
Bug: webrtc:342905193
No-Try: True
Change-Id: Icc968be43b8830038ea9a1f5f604307220457807
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361021
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42911}
2024-09-02 12:16:47 +00:00
Fanny Linderborg
2590d1a7d7 Add message container for the corruption detection extension
Bug: b/358039777
Change-Id: I8f0fbf4b6188293efe621a509e06763bccb800b0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/359520
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Fanny Linderborg <linderborg@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42780}
2024-08-14 12:48:49 +00:00
Yingying Ma
9847885240 Mark GenericFrameInfo as an exported symbol
Currently, webrtc can only simulate the GenericDescriptorInfo
based on codec specific info when uses HW encode acceleration.
To provide more accurate description, RTCVideoEncoder in the
chromium blink module needs to fill the generic frame info and
GenericFrameInfo should be marked as exported to chromium.

Bug: chromium:40275246
Change-Id: I34c2747ab32cfdb1be13ae3b1635242f18462de7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/323063
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42738}
2024-08-07 10:21:30 +00:00
Qiu Jianlin
fd98638726 Check empty slice in H.265 bitstream parser.
This is cherry-picked from WebKit's PR by youenn@apple.com. The original
PR: https://github.com/WebKit/WebKit/pull/31525

Bug: chromium:41480904
Change-Id: I69c7c8d5842a576fa18432fb9f85c6890b47f3ed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/358200
Commit-Queue: Jianlin Qiu <jianlin.qiu@intel.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42708}
2024-08-01 08:57:39 +00:00
Sergio Garcia Murillo
02f375da42 Check arrayview is not empty before accessing it
Bug: webrtc:353764813
No-Try: True
Change-Id: I873f115c13e23d827f3967bc505da4b9d1a70753
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/357580
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42657}
2024-07-22 07:58:22 +00:00
Sergio Garcia Murillo
45e5e385f3 Use ArrayView on H264 bitstream parsing
No-Try: true
Bug: webrtc:42225170
Change-Id: I4682f400054fee5c86ea24bebf6d703fb90074da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/354722
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42650}
2024-07-19 08:16:11 +00:00
Sergey Silkin
55d328dc25 Add ssilkin@webrtc to OWNERS in video/
Bug: none
Change-Id: Ie5b5e339634c07d260cc3e10312f97aad63fa552
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/357180
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42633}
2024-07-15 09:11:54 +00:00
Danil Chapovalov
cd8b36bb9f Fix integer underflow in H264 bitstream parser
num_ref are represented using golomb and may be very large.
BitstreamReader is generally resilent to many consenquites fail reads, but not when number of reads comparable to int limit.
This change address the issue in two ways, either one is enough, but both are helpful in their own way:

H264 parser now fails faster when number of references is too large.
BitstreamReader now is resilent to unlimited number of fail reads.

Bug: chromium:352402499
Change-Id: I19646bc3f53cd2970393d00bc143400b1fdf5473
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/357100
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42628}
2024-07-12 15:01:55 +00:00
Sergio Garcia Murillo
d03ce76147 Add support for pred_weight_table
Bug: webrtc:42229950
Change-Id: Iea2702f23b4f2ae42b2c12175ff9dd64e9c71e8b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355004
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42530}
2024-06-25 10:09:34 +00:00
Sergio Garcia Murillo
e19ce9b3db Fix is_first_packet_in_frame when receiving multiple slices per H264 frame
Bug: webrtc:346608838
Change-Id: I70ad3a952f37dde878f77d35c959c6973d283b9c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/354460
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42497}
2024-06-17 11:31:52 +00:00
Harald Alvestrand
c74412b304 Deprecate rtc::RefCountInterface
and move usages to webrtc::RefCountInterface

This CL also moves more stuff to webrtc:: and adds backwards
compatible aliases for them.

Bug: webrtc:42225969
Change-Id: Iefb8542cff793bd8aa46bef8f2f3c66a1e979d07
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/353720
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42446}
2024-06-07 09:47:26 +00:00
Florent Castelli
99c519b3fd Mass removal of absl_deps in all BUILD.gn files
Bug: webrtc:341803749
Change-Id: Id73844ba8d63b9f2f2c9391d8d8116ad0864c36d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/351540
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42372}
2024-05-23 15:09:46 +00:00
Qiu Jianlin
d9c1b335b7 Remove wrong range check for CurrRpsIdx and fix its naming.
CurrRpsIdx value is specified in spec section 7.4.7.1. CurrRpsIdx can be
non-zero and the check here makes no sense.

Bug: webrtc:13485
Change-Id: Ie7b7fab3286fdb812fca7aaf6f68bb5a8df81386
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/347764
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42122}
2024-04-19 13:56:24 +00:00
Per K
0fa90887c5 Deprecate VideoFrame::timestamp() and set_timestamp
Instead, add rtp_timestamp and set_rtp_timestamp.

Bug: webrtc:13756
Change-Id: Ic4266394003e0d49e525d71f4d830f5e518299cc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/342781
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41894}
2024-03-13 11:08:37 +00:00
Danil Chapovalov
dcc1534764 Delete rtc::TaskQueue
All usage was updated to use TaskQueueBase interface directly bypassing rtc::TaskQueue wrapper

Bug: webrtc:14169
Change-Id: I1808afd363b50448d4014d8d8402fce41b16a3ff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/341082
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41834}
2024-02-28 10:22:49 +00:00
Qiu Jianlin
c32a509da0 Export h.265 bitstream parser APIs.
This exports neccessary API as dependency for h.265 parameter sets tracker to be submitted at CL:5307256.

Bug: webrtc:13485
Change-Id: I042599472f17d12ece4fa862c3715497502a5d76
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340004
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Jianlin Qiu <jianlin.qiu@intel.com>
Cr-Commit-Position: refs/heads/main@{#41814}
2024-02-27 01:36:42 +00:00
Qiu Jianlin
cc83e32cdb Fix H.265 bitstream parser incorrect PPS reference.
H.265 bitstream parser currently always assume pps id to be 0 when
calculating the last slice QP. This assumption is incorrect.

Bug: webrtc:13485
Change-Id: I06918df035e8e4a8e68eb3002a49b824ffd5f516
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/337080
Commit-Queue: Jianlin Qiu <jianlin.qiu@intel.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41636}
2024-01-31 06:54:00 +00:00
qwu16
f43e8ebab9 Add RTP depacketizer for H265
1. Depacketize single nalu packet/AP/FU

2. Insert start code before each nalu

Bug: webrtc:13485
Change-Id: I8346f9c31e61e5d3c2c7e1bf5fdaae4018a1ff78
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/325660
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41628}
2024-01-29 12:00:19 +00:00
qwu16
a9ef127f6f Fix fuzzing issue for h265 bitstream parser
Bug: chromium:1513102
Change-Id: Ib78ecd349d4353f5729188ab2d16b9cf81043cad
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/333942
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41579}
2024-01-19 16:34:15 +00:00
Qiu Jianlin
7121680f38 Expose WebRTC H.264 SPS parser APIs.
Blink RTC video encoder will need this simplified parser to replace
current full H.264 SPS parser, to reduce parsing cost for extracting
frame size from compressed H.264 bitstream.

Bug: b:309132190
Change-Id: I6863f10bd139766d47fe4bff89143c1a91a09287
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/332468
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jianlin Qiu <jianlin.qiu@intel.com>
Cr-Commit-Position: refs/heads/main@{#41466}
2024-01-03 10:48:51 +00:00
qwu16
bd396fdffa Add rtp packetizer for H265
Bug: webrtc:13485
Change-Id: I4e7e29a7661d51e12bb2ee12e319f6cef49482d4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/318005
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41107}
2023-11-08 15:49:37 +00:00
qwu16
8db8824536 Fix use-of-uninitialized-value and integer-overflow issues reported by chromium fuzz testing
Bug: chromium:1485906,chromium:1486414
Change-Id: Ia976926fb08405c1cb03bbcfde07d2076bd6f4c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/321545
Reviewed-by: Erik Språng <sprang@google.com>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40861}
2023-10-03 14:17:06 +00:00
qwu16
8be04f459b Fix fuzzing issue reported by Chromium fuzzing test
Bug: chromium:1475195, chromium:1475944, chromium:1475909
Change-Id: Iaa9dc6570a8b70ec58efe0a64d468e1cae4cb484
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/317504
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40696}
2023-09-05 09:29:27 +00:00
qwu16
a586d4eccc Fix fuzzing test issues reported by Chromium fuzzing test
Bug: chromium:1474155,chromium:1474156
Change-Id: I382bdcc0a70f1e5c5f5b0b76206cabf8c37502e8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/317126
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40596}
2023-08-22 13:08:39 +00:00
qwu16
972f28335a Added HEVC parser for WebRTC
This is part of effort to enable HEVC for WebRTC. Parser added here to support parsing of QP/picture size for bitstream, for dynamic adaptation and stream metadata abstraction.

Bug: webrtc:13485
Change-Id: I2fbdf210e72e77989ca87ce285da174df5bedd5c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298421
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40572}
2023-08-18 17:48:11 +00:00
Andreas Pehrson
ba41b40461 webrtc_libyuv: Add support for more video types for consistency
Bug: webrtc:14830
Change-Id: I0998fb04a03745131f9f5cca878b0cdb46f3b62b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291529
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39940}
2023-04-24 19:06:25 +00:00
qwu16
603efe007d Changed sps parser and sps parser unit test case for h264, and it is working
Bug: webrtc:14967
Change-Id: I62e76f5951894883f8329cb566292fcf239da9f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296240
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39554}
2023-03-14 12:15:54 +00:00
Qiu Jianlin
cec9d00769 Fix AVC PPS parser unit test.
This fixes PPS parser unit test case that retrieves PPS id from slice header.

Bug: webrtc:14951
Change-Id: I7aeea9fe15307a683e71f4c4f3c4b89d0471eda4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255904
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39437}
2023-03-01 12:00:49 +00:00
Andreas Pehrson
7e5d9edfdf webrtc_libyuv: Raise warnings for unhandled types at compile time
Bug: webrtc:14830
Change-Id: Ib5141e585f673098bbedd2872dbd6e6ed9df4864
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291528
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39408}
2023-02-27 22:11:02 +00:00
Sergio Garcia Murillo
1389c4b594 Add 444 10 bits support for H264 and VP9
This CL adds support for I410 buffers (444 10 bits) and modify vp9 and h264 for being able to convert input buffer to it when appropiate.

Bug: webrtc:14818
Change-Id: I2fb3dc9d80c5338944c6df74dd6217a0454180d9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290721
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39123}
2023-01-17 12:32:26 +00:00
Florent Castelli
a6b9924988 Remove all usage of //rtc_base target
Bug: webrtc:9838
Change-Id: If813dbb426b4dc848185b64c0349d03fa9c059f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290986
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39116}
2023-01-16 14:36:06 +00:00
Mirko Bonadei
9d9c2d5795 Make header files self contained.
This CL adds #includes to header files in order to make them
self contained after the preprocessor pass.

Bug: b/251890128
Change-Id: I81c3ba38fb8ab8a2bbd151ba99aa871fae9f1b1b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/278422
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38327}
2022-10-08 08:38:36 +00:00
Artem Titov
9b73159888 Add support for NV12 frame generator
Bug: b/240540204
Change-Id: Id2205e8bd0dfd59476dcd68c32c4981f98b51422
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/278402
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38322}
2022-10-07 14:30:31 +00:00