upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfiatjaf <fiatjaf@gmail.com>2025-01-20 16:24:31 -0300
committerfiatjaf <fiatjaf@gmail.com>2025-01-20 16:24:31 -0300
commitb0ab83f04d83c74c29b389c70d795a3b566c7811 (patch)
treec1f5aa3b389b770dd1b482c75e32583d4b83559a
parentcc3fbab1533d72b9a6f3fbaaac6f33bf8c0d5901 (diff)
nip71: make video events regular.
-rw-r--r--71.md28
1 files changed, 13 insertions, 15 deletions
diff --git a/71.md b/71.md
index 5edd7c6..3680626 100644
--- a/71.md
+++ b/71.md
@@ -6,9 +6,9 @@ Video Events
6 6
7`draft` `optional` 7`draft` `optional`
8 8
9This specification defines video events representing a dedicated post of externally hosted content. These video events are _addressable_ and delete-requestable per [NIP-09](09.md). 9This specification defines _video_ events representing a dedicated post of externally hosted content.
10 10
11Unlike a `kind 1` event with a video attached, Video Events are meant to contain all additional metadata concerning the subject media and to be surfaced in video-specific clients rather than general micro-blogging clients. The thought is for events of this kind to be referenced in a Netflix, YouTube, or TikTok like nostr client where the video itself is at the center of the experience. 11Unlike a `kind:1` event with a video attached, video events are meant to contain all additional metadata concerning the subject media and to be surfaced in video-specific clients rather than general micro-blogging clients. The thought is for events of this kind to be referenced in a Netflix, YouTube, or TikTok like nostr client where the video itself is at the center of the experience.
12 12
13## Video Events 13## Video Events
14 14
@@ -16,7 +16,7 @@ There are two types of video events represented by different kinds: horizontal a
16 16
17#### Format 17#### Format
18 18
19The format uses an _addressable event_ kind `34235` for horizontal videos and `34236` for vertical videos. 19The format uses a _regular event_ kind `21` for horizontal videos and `22` for vertical videos.
20 20
21The `.content` of these events is a summary or description on the video content. 21The `.content` of these events is a summary or description on the video content.
22 22
@@ -27,7 +27,7 @@ Each `imeta` tag can be used to specify a variant of the video by the `dim` & `m
27Example: 27Example:
28```json 28```json
29[ 29[
30 ["imeta", 30 ["imeta",
31 "dim 1920x1080", 31 "dim 1920x1080",
32 "url https://myvideo.com/1080/12345.mp4", 32 "url https://myvideo.com/1080/12345.mp4",
33 "x 3093509d1e0bc604ff60cb9286f4cd7c781553bc8991937befaacfdc28ec5cdc", 33 "x 3093509d1e0bc604ff60cb9286f4cd7c781553bc8991937befaacfdc28ec5cdc",
@@ -38,7 +38,7 @@ Example:
38 "fallback https://andanotherserver.com/1080/12345.mp4", 38 "fallback https://andanotherserver.com/1080/12345.mp4",
39 "service nip96", 39 "service nip96",
40 ], 40 ],
41 ["imeta", 41 ["imeta",
42 "dim 1280x720", 42 "dim 1280x720",
43 "url https://myvideo.com/720/12345.mp4", 43 "url https://myvideo.com/720/12345.mp4",
44 "x e1d4f808dae475ed32fb23ce52ef8ac82e3cc760702fca10d62d382d2da3697d", 44 "x e1d4f808dae475ed32fb23ce52ef8ac82e3cc760702fca10d62d382d2da3697d",
@@ -49,7 +49,7 @@ Example:
49 "fallback https://andanotherserver.com/720/12345.mp4", 49 "fallback https://andanotherserver.com/720/12345.mp4",
50 "service nip96", 50 "service nip96",
51 ], 51 ],
52 ["imeta", 52 ["imeta",
53 "dim 1280x720", 53 "dim 1280x720",
54 "url https://myvideo.com/720/12345.m3u8", 54 "url https://myvideo.com/720/12345.m3u8",
55 "x 704e720af2697f5d6a198ad377789d462054b6e8d790f8a3903afbc1e044014f", 55 "x 704e720af2697f5d6a198ad377789d462054b6e8d790f8a3903afbc1e044014f",
@@ -86,17 +86,15 @@ Additionally `service nip96` may be included to allow clients to search the auth
86 "id": <32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>, 86 "id": <32-bytes lowercase hex-encoded SHA-256 of the the serialized event data>,
87 "pubkey": <32-bytes lowercase hex-encoded public key of the event creator>, 87 "pubkey": <32-bytes lowercase hex-encoded public key of the event creator>,
88 "created_at": <Unix timestamp in seconds>, 88 "created_at": <Unix timestamp in seconds>,
89 "kind": 34235 | 34236, 89 "kind": 21 | 22,
90 "content": "<summary / description of video>", 90 "content": "<summary / description of video>",
91 "tags": [ 91 "tags": [
92 ["d", "<UUID>"],
93
94 ["title", "<title of video>"], 92 ["title", "<title of video>"],
95 ["published_at", "<unix timestamp>"], 93 ["published_at", "<unix timestamp>"],
96 ["alt", <description>], 94 ["alt", <description>],
97 95
98 // Video Data 96 // video Data
99 ["imeta", 97 ["imeta",
100 "dim 1920x1080", 98 "dim 1920x1080",
101 "url https://myvideo.com/1080/12345.mp4", 99 "url https://myvideo.com/1080/12345.mp4",
102 "x 3093509d1e0bc604ff60cb9286f4cd7c781553bc8991937befaacfdc28ec5cdc", 100 "x 3093509d1e0bc604ff60cb9286f4cd7c781553bc8991937befaacfdc28ec5cdc",
@@ -113,17 +111,17 @@ Additionally `service nip96` may be included to allow clients to search the auth
113 ["content-warning", "<reason>"], 111 ["content-warning", "<reason>"],
114 ["segment", <start>, <end>, "<title>", "<thumbnail URL>"], 112 ["segment", <start>, <end>, "<title>", "<thumbnail URL>"],
115 113
116 // Participants 114 // participants
117 ["p", "<32-bytes hex of a pubkey>", "<optional recommended relay URL>"], 115 ["p", "<32-bytes hex of a pubkey>", "<optional recommended relay URL>"],
118 ["p", "<32-bytes hex of a pubkey>", "<optional recommended relay URL>"], 116 ["p", "<32-bytes hex of a pubkey>", "<optional recommended relay URL>"],
119 117
120 // Hashtags 118 // hashtags
121 ["t", "<tag>"], 119 ["t", "<tag>"],
122 ["t", "<tag>"], 120 ["t", "<tag>"],
123 121
124 // Reference links 122 // reference links
125 ["r", "<url>"], 123 ["r", "<url>"],
126 ["r", "<url>"] 124 ["r", "<url>"]
127 ] 125 ]
128} 126}
129``` \ No newline at end of file 127```