<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 2326</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RTSP</anchor>) は、3つの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日付・時刻形式</anchor>を定義しています。</p><section><h1>smtpe-time</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[30]</anchor-end> <dfn>SMPTE時刻符号</dfn></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[28]</anchor-end> <dfn><code>smtpe-time</code></dfn>
は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">媒体タイムライン</anchor>上の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時刻を表す形式<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">時刻形式</title></anchor>の1つです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="37" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[37]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">範囲</anchor>を指定する構文もあります。</p><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[31]</anchor-end> <cite xml:lang="en">RFC 2326 - Real Time Streaming Protocol (RTSP)</cite> (<time>2017-04-30 16:16:32 +09:00</time>) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/rfc2326#section-3.5">https://tools.ietf.org/html/rfc2326#section-3.5</anchor-external></li></ul></refs><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 2326</anchor> (RTSP) 3.5 SMPTE Relative Timestamps</figcaption><blockquote><p>A SMPTE relative timestamp expresses time relative to the start of
the clip. Relative timestamps are expressed as SMPTE time codes for
frame-level access accuracy. The time code has the format
hours:minutes:seconds:frames.subframes, with the origin at the start
of the clip. The default smpte format is &quot;SMPTE 30 drop&quot; format, with
frame rate is 29.97 frames per second. Other SMPTE codes MAY be
supported (such as &quot;SMPTE 25&quot;) through the use of alternative use of
&quot;smpte time&quot;. For the &quot;frames&quot; field in the time value can assume
the values 0 through 29. The difference between 30 and 29.97 frames
per second is handled by dropping the first two frame indices (values
00 and 01) of every minute, except every tenth minute. If the frame
value is zero, it may be omitted. Subframes are measured in
one-hundredth of a frame.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> SMPTE 相対時刻印は clip の開始からの相対時刻を表現します。
相対時刻印は枠位接近正確性の SMPTE 時刻符号として表現します。
時刻符号は <code><var>時</var>:<var>分</var>:<var>秒</var>:<var>枠</var>.<var>小枠</var></code>
の形式で clip の開始から起算します。既定の smpte 形式は
「SMPTE 30 drop」形式で、枠率は 29.97 枠毎秒です。他の SMPTE
符号 (「SMPTE 25」など) 
は「smpte time」の代替使用を使って対応しても<strong>構いません</strong>。
時刻値の「枠」欄は <code>0</code> から <code>29</code> の値を取ると仮定します。 30 枠毎秒と
29.97 枠毎秒の違いは、 (各十秒を除いた) 各秒の最初の2枠の索引
(値 <code>00</code> と <code>01</code>) を落として扱うことです。
枠値が零なら、省略しても構いません。
小枠は1枠の百分の一ではかります。</p><blockquote><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> smpte-range  =   smpte-type &quot;=&quot; smpte-time &quot;-&quot; [ smpte-time ]</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end>  smpte-type   =   &quot;smpte&quot; | &quot;smpte-30-drop&quot; | &quot;smpte-25&quot;
; other timecodes may be added <ins>他の時刻符号を追加可能</ins></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> smpte-time   =   1*2DIGIT &quot;:&quot; 1*2DIGIT &quot;:&quot; 1*2DIGIT [ &quot;:&quot; 1*2DIGIT ] [ &quot;.&quot; 1*2DIGIT ]</li></ul></blockquote><blockquote><p>Examples: <ins>例:</ins><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> smpte=10:12:33:20-</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> smpte=10:07:33-</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> smpte=10:07:00-10:07:33:05.01</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> smpte-25=10:07:00-10:07:33:05.01</li></ul></p></blockquote></figure></section><section><h1>npt-date</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="32" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[32]</anchor-end> <dfn><code>npt-date</code></dfn>
は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">媒体タイムライン</anchor>上の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時刻を表す形式<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">時刻形式</title></anchor>の1つです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[35]</anchor-end> 
特別な値 <dfn><code>now</code></dfn> があります。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;27</anchor-internal></src></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="36" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[36]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">範囲</anchor>を指定する構文もあります。</p><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[27]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 2326</anchor> (RTSP) 3.6 Normal Play Time</figcaption><blockquote><p>Normal play time (NPT) indicates the stream absolute position
relative to the beginning of the presentation. The timestamp consists
of a decimal fraction. The part left of the decimal may be expressed
in either seconds or hours, minutes, and seconds. The part right of
the decimal point measures fractions of a second.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> 通常演奏時刻 (NPT) は、表現のはじめからの流れ絶対位置を示します。
時刻印は小数値で構成します。
小数点の左の部分は秒又は時・分・秒を表します。
小数点の右の部分は秒の小数点以下の値をあらわします。</p><blockquote><p>The beginning of a presentation corresponds to 0.0 seconds. Negative
values are not defined. The special constant now is defined as the
current instant of a live event. It may be used only for live events.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> 表現のはじめが <code>0.0</code> 秒に相当します。負の値は未定義です。
特別な定数 <code>now</code> (今) は生中継催事の現在の瞬間として定義します。
これは生中継催事にのみ使用しても構いません。</p><blockquote><p>NPT is defined as in DSM-CC: &quot;Intuitively, NPT is the clock the
viewer associates with a program. It is often digitally displayed on
a VCR. NPT advances normally when in normal play mode (scale = 1),
advances at a faster rate when in fast scan forward (high positive
scale ratio), decrements when in scan reverse (high negative scale
ratio) and is fixed in pause mode. NPT is (logically) equivalent to
SMPTE time codes.&quot; [5]</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> NPT は DSM-CC にあるように定義されます。「直感的には、 NPT
は表示がプログラムと関連付けられた時計です。 VCR
にデジタル的に表示されることもあります。 NPT は通常演奏状態
(比率 = 1) では普通に進み、早送り (大きな正の比率)
では高速で進み、巻き戻し (大きな負の比率) 
では減り、停止状態では止まっています。 NPT は (必然的に)
SMPTE 時間符号と同値になります。」</p><blockquote><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> npt-range    =   ( npt-time &quot;-&quot; [ npt-time ] ) | ( &quot;-&quot; npt-time )</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end>   npt-time     =   &quot;now&quot; | npt-sec | npt-hhmmss</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end>   npt-sec      =   1*DIGIT [ &quot;.&quot; *DIGIT ]</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end>   npt-hhmmss   =   npt-hh &quot;:&quot; npt-mm &quot;:&quot; npt-ss [ &quot;.&quot; *DIGIT ]</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end>   npt-hh       =   1*DIGIT     ; any positive number</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end>   npt-mm       =   1*2DIGIT    ; 0-59</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end>   npt-ss       =   1*2DIGIT    ; 0-59</li></ul></blockquote><blockquote><p>Examples: <ins>例:</ins><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end>     npt=123.45-125</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end>     npt=12:05:35.3-</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end>     npt=now-</li></ul></p></blockquote><blockquote><p>The syntax conforms to ISO 8601. The npt-sec notation is optimized
for automatic generation, the ntp-hhmmss notation for consumption
by human readers. The &quot;now&quot; constant allows clients to request to
receive the live feed rather than the stored or time-delayed
version. This is needed since neither absolute time nor zero time
are appropriate for this case.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> 構文は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ISO 8601</anchor> に適合します。 <code class="ABNF">npt-sec</code>
記法は自動生成に最適化されており、 <code class="ABNF">ntp-hhmmss</code>
記法は人間が見るのに最適化されています。 <code class="ABNF">&quot;now&quot;</code>
定数により、クライアントが蓄積されている版や遅延版ではなく生中継版を受信したいと要求することが出来ます。
絶対時刻も零時刻もこの場合には不適切なので、この値が必要です。</p></figure><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="33" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[33]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ISO 8601</anchor> のどの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日時形式</anchor>への<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性</anchor>を主張しているのかは謎です。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="34" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[34]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ISO 8601の時刻形式</anchor>と似ていますが、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ISO 8601</anchor> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日の時刻</anchor>を表すもので24時を超えれません。</p></section><section><h1>絶対時刻</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">絶対時刻</anchor>として、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ISO 8601のプロファイル</anchor>が1種類定義されています。
<sw-see xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"> <anchor><code xmlns="http://www.w3.org/1999/xhtml">clock</code> (RTSP) </anchor></sw-see></p></section><section><h1>HTTP の日時形式</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="48" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[48]</anchor-end> その他に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTP</anchor> の仕様書を参照する形で
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTPの日時形式</anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="47" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;47</anchor-internal></src>
や
<code>delta-seconds</code> 
も使われています。</p><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li>
<anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="47" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[47]</anchor-end> <cite xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 2326</anchor> - Real Time Streaming Protocol (RTSP)</cite>, <time>2024-12-11T06:12:06.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://datatracker.ietf.org/doc/html/rfc2326#page-50">https://datatracker.ietf.org/doc/html/rfc2326#page-50</anchor-external></li></ul></refs></section><section><h1><code>Timestamp:</code></h1><p><sw-see xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"> <code xmlns="http://www.w3.org/1999/xhtml">Timestamp:</code> </sw-see></p></section><section><h1>メモ</h1></section></body></html>