rfc9695.original   rfc9695.txt 
MEDIAMAN Y. K. Muthusamy Internet Engineering Task Force (IETF) Y. K. Muthusamy
Internet-Draft Request for Comments: 9695
Intended status: Standards Track C. Ullrich Category: Standards Track C. Ullrich
Expires: 28 January 2024 27 July 2023 ISSN: 2070-1721 December 2024
The 'haptics' Top-level Media Type The 'haptics' Top-level Media Type
draft-ietf-mediaman-haptics-05
Abstract Abstract
This memo serves to register and document the 'haptics' top-level This memo registers and documents the 'haptics' top-level media type,
media type, under which subtypes for representation formats for under which subtypes for representation formats for haptics may be
haptics may be registered. This document also serves as a registered. This document also serves as a registration for a set of
registration for a set of subtypes, which are representative of some subtypes, which are representative of some existing subtypes already
existing subtypes already in use. in use.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This is an Internet Standards Track document.
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841.
This Internet-Draft will expire on 28 January 2024. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/rfc9695.
Copyright Notice Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the Copyright (c) 2024 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/ Provisions Relating to IETF Documents
license-info) in effect on the date of publication of this document. (https://trustee.ietf.org/license-info) in effect on the date of
Please review these documents carefully, as they describe your rights publication of this document. Please review these documents
and restrictions with respect to this document. Code Components carefully, as they describe your rights and restrictions with respect
extracted from this document must include Revised BSD License text as to this document. Code Components extracted from this document must
described in Section 4.e of the Trust Legal Provisions and are include Revised BSD License text as described in Section 4.e of the
provided without warranty as described in the Revised BSD License. Trust Legal Provisions and are provided without warranty as described
in the Revised BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Terminology
2. Background and Justification . . . . . . . . . . . . . . . . 3 2. Background and Justification
2.1. MPEG ISOBMFF . . . . . . . . . . . . . . . . . . . . . . 3 2.1. MPEG ISOBMFF
2.2. Haptic Sub-modalities . . . . . . . . . . . . . . . . . . 4 2.2. Haptic Sub-Modalities
2.3. Another Human Sense . . . . . . . . . . . . . . . . . . . 4 2.3. Another Human Sense
2.4. Commercial Uptake . . . . . . . . . . . . . . . . . . . . 4 2.4. Commercial Uptake
2.5. Haptic Data Formats in Use . . . . . . . . . . . . . . . 5 2.5. Haptic Data Formats in Use
2.6. Haptic Subtypes (envisioned standards) . . . . . . . . . 6 2.6. Haptic Subtypes (Envisioned Standards)
2.7. 'application' top-level type not suitable . . . . . . . . 6 2.7. 'application' Top-Level Type Not Suitable
3. Security Considerations . . . . . . . . . . . . . . . . . . . 7 3. Security Considerations
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 4. IANA Considerations
4.1. Definition and Encoding . . . . . . . . . . . . . . . . . 8 4.1. Definition and Encoding
4.2. Registration Procedure . . . . . . . . . . . . . . . . . 8 4.2. Registration Procedure
4.3. Subtype Registrations . . . . . . . . . . . . . . . . . . 8 4.3. Subtype Registrations
4.3.1. IVS Haptics Type . . . . . . . . . . . . . . . . . . 8 4.3.1. IVS Haptics Type
4.3.2. HJIF Haptics Type . . . . . . . . . . . . . . . . . . 9 4.3.2. HJIF Haptics Type
4.3.3. HMPG Haptics Type . . . . . . . . . . . . . . . . . . 10 4.3.3. HMPG Haptics Type
5. Normative References . . . . . . . . . . . . . . . . . . . . 11 5. Normative References
6. Informative References . . . . . . . . . . . . . . . . . . . 12 6. Informative References
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 Authors' Addresses
1. Introduction 1. Introduction
The term 'haptics' refers to the generation of touch-related The term 'haptics' refers to the generation of touch-related
sensations in a device or interface. Haptics is widely used in sensations in a device or interface. Haptics is widely used in
consumer devices in order to provide touch-based feedback to users. consumer devices in order to provide touch-based feedback to users.
The most common use of haptics is in mobile devices, where it is used The most common use of haptics is in mobile devices, where it is used
to provide feedback to users interacting with the touchscreen, e.g., to provide feedback to users interacting with the touchscreen, e.g.,
typing on a virtual keyboard. Haptic technologies are unlike audio typing on a virtual keyboard. Haptic technologies are unlike audio
and visual enabling technologies in the sense that they require some and visual enabling technologies in the sense that they require some
form of actuation in order to create a tactile sensation. For mobile form of actuation in order to create a tactile sensation. For mobile
phones and game controllers, these actuators are typically small phones and game controllers, these actuators are typically small
vibrating motors. For large touchscreens in vehicles, these vibrating motors. For large touchscreens in vehicles, these
actuators can be specialized piezoelectric materials. Haptic actuators can be specialized piezoelectric materials. Haptic
capabilities are found in nearly every modern smartphone and game and capabilities are found in nearly every modern smartphone, game, and
virtual reality controller, making these devices an ideal target for virtual reality controller, making these devices an ideal target for
enhanced media experiences. enhanced media experiences.
Internet Media Types [RFC6838] are used to label content carried over Internet Media Types [RFC6838] are used to label content carried over
Internet protocols. This document defines a new top-level type Internet protocols. This document defines a new top-level type,
'haptics' according to [TOPLEVEL]. This top-level type indicates 'haptics', according to [RFC9694]. This top-level type indicates
that the content specifies haptic data. Under this top-level type, that the content specifies haptic data. Under this top-level type,
different representation formats of haptics may be registered. different representation formats of haptics may be registered.
1.1. Terminology 1.1. Terminology
The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT,
SHOULD,SHOULD NOT, RECOMMENDED, NOT RECOMMENDED, MAY, and OPTIONAL in SHOULD,SHOULD NOT, RECOMMENDED, NOT RECOMMENDED, MAY, and OPTIONAL in
this document are to be interpreted as described in BCP 14 [RFC2119] this document are to be interpreted as described in BCP 14 [RFC2119]
[RFC8174] when, and only when, they appear in all capitals, as shown [RFC8174] when, and only when, they appear in all capitals, as shown
here. here.
2. Background and Justification 2. Background and Justification
Haptic signals provide an additional layer of entertainment and Haptic signals provide an additional layer of entertainment and
sensory immersion for the user, when combined with audio and video sensory immersion for the user, when combined with audio and video
signals. Haptic tracks, in separate files, can be combined with signals. Haptic tracks, in separate files, can be combined with
audio/video files and played back in sync to provide an overall audio/video files and played back in sync to provide an overall
immersive media experience (audio, visual, tactile) for the user. immersive media experience (audio, visual, tactile) for the user.
More recently, haptic tracks embedded in standard file formats such More recently, haptic tracks embedded in standard file formats, such
as ISOBMFF (ISO Base Media File Format), enable playback of the as ISOBMFF (ISO Base Media File Format), enable playback of the
haptic signals over one or more actuators, simultaneously with audio haptic signals over one or more actuators, simultaneously with audio
and video playback [ISOBMFF-IS]. Haptic signals are also part of and video playback [ISOBMFF-IS]. Haptic signals are also part of
media streams that use RTP, such as those for streaming games, XR, media streams that use RTP, such as those for streaming games, XR,
and wearables. and wearables.
2.1. MPEG ISOBMFF 2.1. MPEG ISOBMFF
Historically, there has not been a registration of formats for Historically, there has not been a registration of formats for
haptics. However, haptics was proposed as a first-order media type haptics. However, haptics was proposed as a first-order media type
(at the same level as audio and video) in ISOBMFF in April 2020. The (at the same level as audio and video) in ISOBMFF in April 2020. The
proposal has since progressed to International Standard, and was proposal has since progressed to International Standard, and was
published in January 2022 [ISOBMFF-IS]. Haptics is officially part published in January 2022 [ISOBMFF-IS]. Haptics is officially part
of the ISO/IEC 14496-12 (ISOBMFF) standard, 7th Edition. Given this of the ISO/IEC 14496-12 (ISOBMFF) standard, 7th Edition. Given this
development, a strong case can be made for haptics to be added to the development, a strong case can be made for haptics to be added to the
list of top-level media types recognized by the IETF. list of top-level media types recognized by the IETF.
We envision the following designations for haptics in mp4 files, once We envision the following designations for haptics in mp4 files, once
the top-level type 'haptics' is registered: the top-level type 'haptics' is registered:
1. 'haptics/mp4' - mp4 files with just haptic tracks and no audio or * 'haptics/mp4' - mp4 files with just haptic tracks and no audio or
video in them (e.g., streaming games, haptics files for haptic video in them (e.g., streaming games, haptics files for haptic
vests, belts, gloves, etc.) vests, belts, gloves, etc.)
2. 'video/mp4' - mp4 files with video, audio, and haptics (to ensure * 'video/mp4' - mp4 files with video, audio, and haptics (to ensure
consistency with existing mp4 files with video content) consistency with existing mp4 files with video content)
3. 'audio/mp4' - mp4 files with audio and haptics (to ensure * 'audio/mp4' - mp4 files with audio and haptics (to ensure
consistency with existing mp4 files with audio content without consistency with existing mp4 files with audio content without any
any video) video)
2.2. Haptic Sub-modalities 2.2. Haptic Sub-Modalities
There are multiple sub-modalities of haptics: There are multiple sub-modalities of haptics:
* Vibrotactile (touch, vibration) * Vibrotactile (touch, vibration)
* Kinesthetic (force feedback) * Kinesthetic (force feedback)
* Surface (surface friction) * Surface (surface friction)
* Spatial, non-contact (ultrasound) * Spatial, non-contact (ultrasound)
skipping to change at page 4, line 28 skipping to change at line 163
Therefore, designating 'haptics' as a top-level media type enables Therefore, designating 'haptics' as a top-level media type enables
the definition of data formats pertaining to these sub-modalities in the definition of data formats pertaining to these sub-modalities in
a more streamlined manner. This would not be possible if 'haptics' a more streamlined manner. This would not be possible if 'haptics'
were to be placed under other top-level types like 'audio', 'video', were to be placed under other top-level types like 'audio', 'video',
or 'application'. or 'application'.
2.3. Another Human Sense 2.3. Another Human Sense
The top-level media type 'audio' pertains to the human sense of The top-level media type 'audio' pertains to the human sense of
hearing, the top-level media type 'video' pertains to the human sense hearing; the top-level media type 'video' pertains to the human sense
of seeing, so it only makes sense for the (equally important) human of seeing; so it only makes sense for the (equally important) human
sense of touch to be represented by another top-level media type sense of touch to be represented by another top-level media type
'haptics'. Placing 'haptics' under 'audio' or 'video' is not 'haptics'. Placing 'haptics' under 'audio' or 'video' is not
reflective of the kinds of files or use cases that would need haptics reflective of the kinds of files or use cases that would need haptics
but have nothing whatsoever to do with audio or video. but have nothing whatsoever to do with audio or video.
2.4. Commercial Uptake 2.4. Commercial Uptake
Haptics is rapidly becoming a standard feature of consumer electronic Haptics is rapidly becoming a standard feature of consumer electronic
devices. For example: devices. For example:
* iPhone (206+ million units sold in 2020): native support for * iPhone (206+ million units sold in 2020): native support for
haptic encoded data haptic-encoded data
* Android (1.38+ billion units sold in 2020): API support of haptic * Android (1.38+ billion units sold in 2020): API support of haptic
buffers buffers
* W3C (HTML vibration API [W3C-Vibration]): Optionally supported in * W3C (HTML vibration API [W3C-Vibration]): Optionally supported in
mobile web browsers. W3C has also defined vibration extensions mobile web browsers. W3C has also defined vibration extensions
for gamepads [W3C-Gamepad] for gamepads [W3C-Gamepad]
* Game consoles (39+ million units sold in 2019): MS Xbox, Sony * Game consoles (39+ million units sold in 2019): MS Xbox, Sony
PlayStation, Nintendo Switch, etc. PlayStation, Nintendo Switch, etc.
skipping to change at page 5, line 48 skipping to change at line 231
II, ROG Phone 3) that are sold worldwide II, ROG Phone 3) that are sold worldwide
* 'hapt': The HAPT haptic data format is currently a vendor-specific * 'hapt': The HAPT haptic data format is currently a vendor-specific
format that is in use: format that is in use:
- In mobile haptic advertising (for W3C devices) - In mobile haptic advertising (for W3C devices)
- The following Japanese game developers use the HAPT format as - The following Japanese game developers use the HAPT format as
part of Immersion's TouchSense SDK: part of Immersion's TouchSense SDK:
o KLAB: https://www.klab.com/en/ (https://www.klab.com/en/) o KLAB: https://www.klab.com/en/
o Craft&Meister: http://www.crafts-meister.co.jp/pc/ o Craft&Meister: http://www.crafts-meister.co.jp/pc/
company_en.html (http://www.crafts-meister.co.jp/pc/ company_en.html
company_en.html)
- Tencent is using the TouchSense SDK for their popular social - Tencent is using the TouchSense SDK for their popular social
media application QQ and live streaming application NOW: media application QQ and live streaming application NOW:
Immersion-Announces-Tencent-Licenses-TouchSense-Technology- Immersion-Announces-Tencent-Licenses-TouchSense-Technology-
Deliver Deliver
(https://www.businesswire.com/news/home/20171026006443/en/ (https://www.businesswire.com/news/home/20171026006443/en/
Immersion-Announces-Tencent-Licenses-TouchSense%C2%AE- Immersion-Announces-Tencent-Licenses-TouchSense%C2%AE-
Technology-Deliver) Technology-Deliver)
Given the widespread use of these subtypes, it makes sense for Given the widespread use of these subtypes, it makes sense for
'haptics' to be a top-level media type. 'haptics' to be a top-level media type.
2.6. Haptic Subtypes (envisioned standards) 2.6. Haptic Subtypes (Envisioned Standards)
The MPEG ISOBMFF proposal included an informative annex of known The MPEG ISOBMFF proposal included an informative annex of known
haptic coding formats with proposed FourCC codes for them. These haptic coding formats with proposed FourCCs (four-character codes)
codes are not registered yet, but the plan is indeed to standardize for them. These codes are not registered yet, but the plan is indeed
these haptic coding formats in the near future. Once standardized, to standardize these haptic coding formats in the near future. Once
these types should also be registered as subtypes of the 'haptics' standardized, these types should also be registered as subtypes of
top-level media type: the 'haptics' top-level media type:
* 'hmpg': the MPEG-I haptics streamable binary coding format * 'hmpg': the MPEG-I haptics streamable binary coding format
described in ISO/IEC DIS 23090-31: Haptics coding described in ISO/IEC DIS 23090-31: Haptics coding
[MPEG-Haptics-Coding] [MPEG-Haptics-Coding]
* 'hjif': the MPEG-I haptics JSON-based interchange format described * 'hjif': the MPEG-I haptics JSON-based interchange format described
in ISO/IEC DIS 23090-31: Haptics coding [MPEG-Haptics-Coding] in ISO/IEC DIS 23090-31: Haptics coding [MPEG-Haptics-Coding]
* IEEE P1918.1.1 vibrotactile coding standard [IEEE-P191811] being * IEEE P1918.1.1 vibrotactile coding standard [IEEE-191811] being
developed under the IEEE Tactile Internet initiative as part of developed under the IEEE Tactile Internet initiative as part of
the 5G URLL profile. Format name is yet to be finalized. the 5G URLL profile. Format name is yet to be finalized.
* Enumerated effects haptic coding format (based on MIDI). Format * Enumerated effects haptic coding format (based on MIDI). Format
name is yet to be finalized. name is yet to be finalized.
* Audio-to-vibe haptic coding format (automatic audio to vibration * Audio-to-vibe haptic coding format (automatic audio-to-vibration
conversion algorithms). Format name is yet to be finalized. conversion algorithms). Format name is yet to be finalized.
2.7. 'application' top-level type not suitable 2.7. 'application' Top-Level Type Not Suitable
From the above arguments, it is clear that haptics does not really From the above arguments, it is clear that haptics does not really
belong under any other media type. To reiterate, there are three belong under any other media type. To reiterate, there are three
main reasons why the 'haptics' media type does not fit under the main reasons why the 'haptics' media type does not fit under the
'application' top-level type: 'application' top-level type:
* haptics connects to a sensory system, touch/motion, directly, and * haptics connects to a sensory system, touch/motion, directly, and
is more specific than the abstract 'application' type, and is more specific than the abstract 'application' type, and
* 'application' has historically been used for applications, i.e., * 'application' has historically been used for applications, i.e.,
skipping to change at page 7, line 25 skipping to change at line 303
Haptics are interpreted data structures that represent collections of Haptics are interpreted data structures that represent collections of
different media rendering instructions intended to be decoded and different media rendering instructions intended to be decoded and
rendered on target device hardware. Haptic data can be represented rendered on target device hardware. Haptic data can be represented
as collections of signal data and/or descriptive text in XML/JSON or as collections of signal data and/or descriptive text in XML/JSON or
a similar format. Signal data is typically not executed by endpoint a similar format. Signal data is typically not executed by endpoint
processors and represents minimal security risk. Descriptive text is processors and represents minimal security risk. Descriptive text is
typically parsed and represented in memory using standard XML data typically parsed and represented in memory using standard XML data
structures. This data is utilized to construct one or more signals structures. This data is utilized to construct one or more signals
that are sent to the endpoint device hardware. that are sent to the endpoint device hardware.
Because of the media/rendering nature of the data path for haptic Because of the media/rendering nature of the data path for haptic-
coded data the security profile of haptic data is expected to be coded data, the security profile of haptic data is expected to be
largely consistent with the security profile of visual and audio largely consistent with the security profile of visual and audio
media data. media data.
As with any synthesized media data (audio, video, and haptics), there As with any synthesized media data (audio, video, and haptics), there
is a security risk associated with execution of commands based on the is a security risk associated with execution of commands based on the
descriptive encoding either through its inherent extensibility or descriptive encoding either through its inherent extensibility or
through the insertion of arbitrary executable data in the descriptive through the insertion of arbitrary executable data in the descriptive
format itself. Indeed, media rendering systems are normally format itself. Indeed, media rendering systems are normally
implemented with a mix of user and kernel space execution since these implemented with a mix of user and kernel space execution since these
media must ultimately make their way to a hardware system. In media must ultimately make their way to a hardware system. In
skipping to change at page 8, line 11 skipping to change at line 338
properly controlled or inadvertently exceed safety levels. properly controlled or inadvertently exceed safety levels.
Implementors need to ensure that adequate measures are taken to Implementors need to ensure that adequate measures are taken to
prevent such scenarios. prevent such scenarios.
These security considerations apply to the subtype registrations These security considerations apply to the subtype registrations
described in this document as well as all future haptics described in this document as well as all future haptics
registrations. registrations.
4. IANA Considerations 4. IANA Considerations
This specification registers a new top-level type, 'haptics', and IANA has registered 'haptics' in the "Top-Level Media Types" registry
requests IANA to add it to the registry of top-level types specified defined in [RFC9694] and registered several subtypes. IANA has also
in [TOPLEVEL], adds it as an alternative value of "Type Name" in the added 'haptics' as an alternative value of "Type Name" in the media
media types registration form [Media-Type-Registration], and types registration form [Media-Type-Reg].
registers several subtypes for it.
4.1. Definition and Encoding 4.1. Definition and Encoding
'haptics' as the primary media content type indicates that the 'haptics' is the primary media content type that indicates the
content identified by it requires a certain haptics subsystem such as content identified by it requires a certain haptics subsystem such as
low-level haptics APIs, which in turn will require hardware low-level haptics APIs, which in turn will require hardware
capabilities such as one or more actuators to render the haptics capabilities such as one or more actuators to render the haptics
media. The 'haptics' media type does not provide any specific media. The 'haptics' media type does not provide any specific
information about the underlying data format and how the haptics information about the underlying data format and how the haptics
information should be interpreted -- the subtypes defined within a information should be interpreted -- the subtypes defined within a
'haptics' tree name the specific haptic formats. Unrecognized 'haptics' tree name the specific haptic formats. Unrecognized
subtypes of 'haptics' should be treated as 'application/octet- subtypes of 'haptics' should be treated as 'application/octet-
stream'. Implementations may still pass unrecognized subtypes to the stream'. Implementations may still pass unrecognized subtypes to the
haptics subsystem and associated rendering hardware. haptics subsystem and associated rendering hardware.
4.2. Registration Procedure 4.2. Registration Procedure
New haptics formats should be registered using the online form New haptics formats should be requested using the Application for a
[Media-Type-Registration]. [RFC6838] should be consulted on Media Type online form [Media-Type-Reg]. [RFC6838] should be
registration procedures. In particular, the haptics specification consulted on registration procedures. In particular, the haptics
should preferably be freely available. specification should preferably be freely available.
Note that new subtypes may define parameters. If an implementation Note that new subtypes may define parameters. If an implementation
does not recognize a parameter sub-value in the comma- separated does not recognize a parameter sub-value in the comma-separated list,
list, it should ignore the sub-value and continue processing the it should ignore the sub-value and continue processing the other sub-
other sub-values in the list. values in the list.
4.3. Subtype Registrations 4.3. Subtype Registrations
In this section, the initial entries under the top-level 'haptics' In this section, the initial entries under the top-level 'haptics'
media type are specified. They also serve as examples for future media type are specified. They also serve as examples for future
registrations. registrations.
4.3.1. IVS Haptics Type 4.3.1. IVS Haptics Type
Type name: haptics Type name: haptics
Subtype name: ivs
Required parameters: N/A Subtype name: ivs
Optional parameters: N/A Required parameters: N/A
Encoding considerations: 8bit if UTF-8; binary if UTF-16 or UTF-32 Optional parameters: N/A
Interoperability considerations: The IVS format is a device- Encoding considerations: 8bit if UTF-8; binary if UTF-16 or UTF-32
independent haptic effect coding based on the XML format. It is
designed to enable interoperability between distinct physical
endpoints. Not all devices may be able to render all effects present
in an IVS file.
Security considerations: See Section 3 of RFC XXXX. Interoperability considerations: The IVS format is a device-
independent haptic effect coding based on the XML format. It is
designed to enable interoperability between distinct physical
endpoints. Not all devices may be able to render all effects
present in an IVS file.
[Note to RFC Editor: Please replace XXXX with the number of this Security considerations: See Section 3 of RFC 9695.
RFC.]
Published specification: ISO/IEC JTC 1/SC 29/WG 2 N 0072 "Encoder Published specification: ISO/IEC JTC 1/SC 29/WG 2 N0072 "Encoder
Input Format for MPEG Haptics" [MPEG-Haptics-Encoder]. Input Format for MPEG Haptics" [MPEG-Haptics-Encoder].
Applications that use this media type: All applications that are able Applications that use this media type: All applications that are
to create, edit, or display haptic media content. able to create, edit, or display haptic media content.
Additional information: Additional information:
File extension(s): Haptic file extensions used for IVS files:
.ivs
Macintosh file type code(s): (no code specified)
Macintosh Universal Type Identifier code: N/A
Fragment Identifier: N/A
Deprecated Alias: N/A
* File extension(s): Haptic file extensions used for IVS files: .ivs Person & email address to contact for further information:
Yeshwant Muthusamy(yeshwant@yeshvik.com)
* Macintosh file type code(s): (no code specified)
* Macintosh Universal Type Identifier code: N/A
* Fragment Identifier: N/A
* Deprecated Alias: N/A
Person & email address to contact for further information: Yeshwant
Muthusamy(yeshwant@yeshvik.com)
Change controller: ISO/IEC JTC1/SC 29/WG 7 (MPEG 3D Graphics and Change controller: ISO/IEC JTC1/SC 29/WG 7 (MPEG 3D Graphics and
Haptic Coding) Haptic Coding)
4.3.2. HJIF Haptics Type 4.3.2. HJIF Haptics Type
Type name: haptics Type name: haptics
Subtype name: hjif Subtype name: hjif
Required parameters: N/A
Optional parameters: N/A Required parameters: N/A
Encoding considerations: 8bit if UTF-8; binary if UTF-16 or UTF-32 Optional parameters: N/A
Interoperability considerations: The HJIF format is a human-readable Encoding considerations: 8bit if UTF-8; binary if UTF-16 or UTF-32
haptic effect coding based on the JSON format. It is designed as an
interchange format for temporal and spatial haptic effects. The
haptic effects may target specific parts of the human body and may be
associated with a reference device description allowing haptic
rendering software to adapt the effects to available hardware.
Security considerations: See Section 3 of RFC XXXX. Interoperability considerations: The HJIF format is a human-readable
haptic effect coding based on the JSON format. It is designed as
an interchange format for temporal and spatial haptic effects.
The haptic effects may target specific parts of the human body and
may be associated with a reference device description allowing
haptic rendering software to adapt the effects to available
hardware.
[Note to RFC Editor: Please replace XXXX with the number of this Security considerations: See Section 3 of RFC 9695.
RFC.]
Published specification: ISO/IEC DIS 23090-31: Haptics coding Published specification: ISO/IEC DIS 23090-31: Haptics coding
[MPEG-Haptics-Coding]. [MPEG-Haptics-Coding].
Applications that use this media type: All applications that are able Applications that use this media type: All applications that are
to create, edit, or display haptic media content. able to create, edit, or display haptic media content.
Additional information: Additional information:
File extension(s): Haptic file extensions used for HJIF files:
.hjif
Macintosh file type code(s): (no code specified)
Macintosh Universal Type Identifier code: N/A
Fragment Identifier: N/A
Deprecated Alias: N/A
* File extension(s): Haptic file extensions used for HJIF files: Person & email address to contact for further information:
.hjif Yeshwant Muthusamy(yeshwant@yeshvik.com)
* Macintosh file type code(s): (no code specified)
* Macintosh Universal Type Identifier code: N/A
* Fragment Identifier: N/A
* Deprecated Alias: N/A
Person & email address to contact for further information: Yeshwant
Muthusamy(yeshwant@yeshvik.com)
Change controller: ISO/IEC JTC1/SC 29/WG 7 (MPEG 3D Graphics and Change controller: ISO/IEC JTC1/SC 29/WG 7 (MPEG 3D Graphics and
Haptic Coding) Haptic Coding)
4.3.3. HMPG Haptics Type 4.3.3. HMPG Haptics Type
Type name: haptics Type name: haptics
Subtype name: hmpg Subtype name: hmpg
Required parameters: N/A
Optional parameters: N/A Required parameters: N/A
Encoding considerations: binary Optional parameters: N/A
Interoperability considerations: The HMPG format is a streamable Encoding considerations: binary
binary haptic effect coding. It is designed to enable efficient
coding of temporal and spatial haptic effects. The haptic effects
may target specific parts of the human body and may be associated
with a reference device description allowing haptic rendering
software to adapt the effects to available hardware.
Security considerations: See Section 3 of RFC XXXX. Interoperability considerations: The HMPG format is a streamable
binary haptic effect coding. It is designed to enable efficient
coding of temporal and spatial haptic effects. The haptic effects
may target specific parts of the human body and may be associated
with a reference device description allowing haptic rendering
software to adapt the effects to available hardware.
[Note to RFC Editor: Please replace XXXX with the number of this Security considerations: See Section 3 of RFC 9695.
RFC.]
Published specification: ISO/IEC DIS 23090-31: Haptics coding Published specification: ISO/IEC DIS 23090-31: Haptics coding
[MPEG-Haptics-Coding]. [MPEG-Haptics-Coding].
Applications that use this media type: All applications that are able Applications that use this media type: All applications that are
to create, edit, or display haptic media content. able to create, edit, or display haptic media content.
Additional information: Additional information:
File extension(s): Haptic file extensions used for HMPG files:
.hmpg
Macintosh file type code(s): (no code specified)
Macintosh Universal Type Identifier code: N/A
Fragment Identifier: N/A
Deprecated Alias: N/A
* File extension(s): Haptic file extensions used for HMPG files: Person & email address to contact for further information:
.hmpg Yeshwant Muthusamy(yeshwant@yeshvik.com)
* Macintosh file type code(s): (no code specified)
* Macintosh Universal Type Identifier code: N/A
* Fragment Identifier: N/A
* Deprecated Alias: N/A
Person & email address to contact for further information: Yeshwant
Muthusamy(yeshwant@yeshvik.com)
Change controller: ISO/IEC JTC1/SC 29/WG 7 (MPEG 3D Graphics and Change controller: ISO/IEC JTC1/SC 29/WG 7 (MPEG 3D Graphics and
Haptic Coding) Haptic Coding)
5. Normative References 5. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC6838] Freed, N., Klensin, J., and T. Hansen, "Media Type [RFC6838] Freed, N., Klensin, J., and T. Hansen, "Media Type
Specifications and Registration Procedures", BCP 13, Specifications and Registration Procedures", BCP 13,
RFC 6838, DOI 10.17487/RFC6838, January 2013, RFC 6838, DOI 10.17487/RFC6838, January 2013,
<https://www.rfc-editor.org/info/rfc6838>. <https://www.rfc-editor.org/info/rfc6838>.
[TOPLEVEL] Dürst, M. J., "Guidelines for the Definition of New Top- [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
Level Media Types", Work in Progress, Internet-Draft, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
draft-ietf-mediaman-toplevel-03, 26 March 2023, May 2017, <https://www.rfc-editor.org/info/rfc8174>.
<https://datatracker.ietf.org/doc/draft-ietf-mediaman-
toplevel/03/>.
6. Informative References
[ISOBMFF-IS] [RFC9694] Dürst, M., "Guidelines for the Definition of New Top-Level
"ISO/IEC 14496-12 (7th Edition) Information technology — Media Types", RFC 9694, DOI 10.17487/RFC9694, December
Coding of audio-visual objects — Part 12: ISO base media 2024, <https://www.rfc-editor.org/info/rfc9694>.
file format", <https://www.iso.org/standard/83102.html>.
[MPEG-Haptics-Encoder] 6. Informative References
"Encoder Input Format for MPEG Haptics",
<https://www.mpegstandards.org/standards/
Explorations/40/>.
[AHAP] "Apple Haptic Audio Pattern", [AHAP] Apple Inc., "Representing haptic patterns in AHAP files",
Apple Developer Documentation,
<https://developer.apple.com/documentation/corehaptics/ <https://developer.apple.com/documentation/corehaptics/
representing_haptic_patterns_in_ahap_files>. representing_haptic_patterns_in_ahap_files>.
[IEEE-191811]
IEEE, "IEEE Draft Standard for Haptic Codecs for the
Tactile Internet", IEEE P1918.1.1/D3, March 2023,
<https://ieeexplore.ieee.org/document/10042202>.
[ISOBMFF-IS]
ISO/IEC, "Information technology - Coding of audio-visual
objects - Part 12: ISO base media file format", 7th
Edition, ISO/IEC 14496-12:2022, January 2022,
<https://www.iso.org/standard/83102.html>.
[Media-Type-Reg]
IANA, "Application for a Media Type",
<http://www.iana.org/form/media-types>.
[MPEG-Haptics-Coding] [MPEG-Haptics-Coding]
"ISO/IEC DIS 23090-31 Information Technology Coded ISO/IEC, "Information Technology -- Coded representation
representation of immersive media Part 31: Haptics of immersive media -- Part 31: Haptics coding", Final
coding", <https://www.iso.org/standard/86122.html>. Draft International Standard, ISO/IEC FDIS 23090-31,
<https://www.iso.org/standard/86122.html>.
[W3C-Vibration] [MPEG-Haptics-Encoder]
"W3C Vibration API (Second Edition)", MPEG, "Encoder Input Format for Haptics", MPEG 134 Meeting
<https://www.w3.org/TR/vibration/>. Document, 15 May 2021,
<https://www.mpegstandards.org/standards/
Explorations/40/>.
[W3C-Gamepad] [W3C-Gamepad]
"W3C Gamepad Extensions", W3C, "Gamepad Extensions", W3C Editor's Draft, 9 August
<https://w3c.github.io/gamepad/extensions.html>. 2024, <https://w3c.github.io/gamepad/extensions.html>.
Latest version available at
[IEEE-P191811] <https://w3c.github.io/gamepad/extensions.html>
"P1918.1.1 - Haptic Codecs for the Tactile Internet",
<https://standards.ieee.org/project/1918_1_1.html>.
[Media-Type-Registration] [W3C-Vibration]
"IANA, Application for a Media Type", W3C, "Vibration API (Second Edition)", W3C Recommendation,
<http://www.iana.org/form/media-types>. 18 October 2016,
<https://www.w3.org/TR/2016/REC-vibration-20161018/>.
Latest version available at
<https://www.w3.org/TR/vibration/>
Authors' Addresses Authors' Addresses
Yeshwant K. Muthusamy Yeshwant K. Muthusamy
600 Longwood Drive 600 Longwood Drive
Allen, TX 75013 Allen, Texas 75013
United States of America United States of America
Phone: +1 469-854-9836 Phone: +1 469-854-9836
Email: yeshwant@yeshvik.com Email: yeshwant@yeshvik.com
Chris Ullrich Chris Ullrich
311 Court Ave 311 Court Ave
Ventura, CA 93003 Ventura, California 93003
United States of America United States of America
Phone: +1 805-320-0774 Phone: +1 805-320-0774
Email: chrisullrich@gmail.com Email: chrisullrich@gmail.com
 End of changes. 78 change blocks. 
228 lines changed or deleted 212 lines changed or added

This html diff was produced by rfcdiff 1.48.