AVTCORE WG
Virtual Interim
September 26, 2023
08:00 - 10:00 AM Pacific Time
1
Mailing list: avt@ietf.org
Notes: https://notes.ietf.org/notes-ietf-interim-2023-avtcore-03-avtcore
Meeting link: https://datatracker.ietf.org/meeting/interim-2023-avtcore-03/session/avtcore
Virtual Interim Remote Meeting Tips
2
2
This session is being recorded
Note well
This is a reminder of IETF policies in effect on various topics such as patents or code of conduct. It is only meant to point you in the right direction. Exceptions may apply. The IETF's patent policy and the definition of an IETF "contribution" and "participation" are set forth in BCP 79; please read it carefully.
As a reminder:
�Definitive information is in the documents listed below and other IETF BCPs. For advice, please talk to WG chairs or ADs:
3
3
Note really well
4
4
About this meeting
5
Draft Status
6
Draft Status (cont’d)
7
IANA Registries
https://www.iana.org/assignments/media-types/media-types.xhtml
8
Action items from IETF 117
9
Agenda
https://datatracker.ietf.org/doc/html/draft-lemieux-avtcore-rtp-j2k-scl
https://datatracker.ietf.org/doc/html/draft-aboba-avtcore-hevc-webrtc
https://datatracker.ietf.org/doc/html/draft-ietf-avtcore-rtp-scip/ballot/
https://datatracker.ietf.org/doc/html/draft-ietf-avtcore-rtp-over-quic
https://datatracker.ietf.org/doc/html/draft-ietf-sframe-enc
draft-thatcher-avtcore-rtp-sframe
10
/
High-performance�JPEG 2000 RTP payload format
draft-lemieux-avtcore-rtp-j2k-scl
11
12
Dr. Pierre-Anthony Lemieux, Sandflow Consulting
pal@sandflow.com
Dr. David Taubman, UNSW
d.taubman@unsw.edu.au
JPEG 2000
ITU-T | ISO/IEC standard since 2001
Swiss army knife of image codecs
Royalty-free
Widely used in high-performance applications (image and video)
Continuously maintained and improved
13
Medical |
Geospatial |
Archival |
Cinema |
Studio post-production |
TV production over IP |
Part 15: High-Throughput JPEG 2000 (HTJ2K)
New part of the JPEG 2000 family (published in 2019)
Opens the door to inexpensive and high-quality streaming
14
EBU_PendulusWide_3840x2160p_50_10b_bt709_422 on 4-core Intel i7-6700 CPU @ 3.4GHz using Kakadu SDK v8.0
High-performance RTP payload for JPEG 2000
Intended for streaming of video signals encoded as a sequence of JPEG 2000 codestreams
Significant improvements over RFC 5371
Meet the needs of emerging applications, e.g., SMPTE ST 2110
15
Payload structure
One video frame/field = one image = one JPEG 2000 codestream
Two kinds of payload
16
Basic parameters
17
Media type | |
video/jpeg2000-scl | |
Header fields | |
Marker | Signals last RTP packet of a codestream |
Timestamp | Presentation time of the video frame/field to which the codestream corresponds |
Sequence number | Extended by ESEQ as in RFC 4175 |
What is sub-codestream latency?
Start transmitting parts of the encoded image before encoding of the full image is complete
Very low latencies possible (32 video lines at 1080 lines video at 24 fps = 1.2 ms)
18
Video frame
Encoder
RTP Packets
Encoded lines
Enabling sub-codestream latency
Packet loss recovery depends on identifying resync points within the codestream
JPEG 2000 PLM and PLT (packet length) marker segments cannot be used because they cannot be written until after the codestream is complete
🆕POS and PID fields of the Payload Format identify resync information in each RTP packet (if a resync point exists)
19
Resolution and quality scalability
J2K codestreams can be packetized according to discrete quality and resolution levels
QUAL and RES fields identify the quality and resolution levels present within each RTP packet
A receiver or network agent can select quality or resolution levels at the RTP packet level without parsing the codestream
20
CODESTREAM
Header
Low spatial frequencies
High spatial frequencies
FIRST BYTE
LAST BYTE
High-precision clock recovery
RTP timestamp is low resolution compared to RTP packet rate
PTSTAMP field indicates transmission time of each RTP packet in the same time base as RTP timestamp
21
Code-block caching
Improves bandwidth efficiency for mostly static video, e.g., screen content
Sender (for temporally static areas)
Receiver maintains a code-block cache
Enabled by the C field and signaled in the media type
22
Code-block: coded samples belonging to a rectangular (spatial) region within one resolution level of one component
Thank you and looking forward to your feedback!
Intended as standards track RFC
Looking for feedback
23
HEVC Profile for WebRTC
24
Bernard Aboba
Philipp Hancke
Open Issues
25
Issue 2: Out-of-band sprop-vps/sprop-sps/sprop-pps
“sprop-parameter-sets: H.264 allows sequence and picture information to be sent both in-band and out-of-band. WebRTC implementations MUST signal this information in-band. This means that WebRTC implementations MUST NOT include this parameter in the SDP they generate.”
“sprop-sps, sprop-pps, sprop-vps, sprop-sei: H.265 allows sequence and picture information to be sent both in-band and out-of-band. WebRTC implementations MUST signal this information in-band. This means that WebRTC implementations MUST NOT include these parameters in the SDP they generate, and SHOULD silently ignore these parameters if they are received.”
26
“An IDR sent MUST always be preceded by the relevant parameter sets sent in a packet (not necessarily a separate packet) with the same RTP timestamp as the IDR.”
27
“tx-mode: Implementations SHOULD NOT include this parameter within SDP.
If no tx-mode parameter is present, a value of "SRST" MUST be inferred.”
28
“max-fps, max-cpb, max-dpb, and max-br:
These parameters allow the implementation to specify that they can support certain features of H.265 at higher rates and values than those signaled by their level (set with level-id). Implementations MAY include these parameters in their SDP, but they SHOULD interpret them when receiving them, allowing them to send the highest quality of video possible.”
29
30
Issue 12: PACI packet
31
“[RFC7798] Section 4.5 defines how Temporal Scalability Control Information (TSCI) is communicated using PACI Extensions defined in [RFC7798] Section 4.4.4.2. When WebRTC implementations negotiate the use of RTP header extensions containing TSCI information, such as the Dependency Descriptor [DD], the TSCI information contained in the RTP header extensions takes precedence and implementations MUST ignore TSCI information contained in the PACI.”
32
Issue 13: RPSI RTCP feedback support
33
Issue 13: Reference Status in WebRTC
34
Comments? Next steps?
35
RTP Payload Format for SCIP
36
Dan Hanson
Mike Faller
SCIP Draft 06
37
SCIP Draft 06 (2)
38
RTP over QUIC
https://datatracker.ietf.org/doc/html/draft-ietf-avtcore-rtp-over-quic
https://datatracker.ietf.org/doc/draft-dawkins-avtcore-sdp-rtp-quic/
https://datatracker.ietf.org/doc/draft-dawkins-avtcore-sdp-rtp-quic-issues/
39
Mathis Engelbart, Jörg Ott, Spencer Dawkins
Done
STOP_SENDING, RESET_STREAM and Media Dependencies (#112)
STOP_SENDING, RESET_STREAM and Media Dependencies (#112)
Usefulness of CLOSE_STREAM and ENOUGH? (#113)
Next Steps
RTP Payload Format for SFrame
47
Peter Thatcher
Since Last Meeting (IETF 117)
48
Next Steps
49
Thank you
Special thanks to:
The Secretariat, WG Participants & ADs
50