{"action":"created","comment":{"url":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/comments/94276375","pull_request_review_id":14806640,"id":94276375,"diff_hunk":"@@ -523,3 +523,32 @@ When TextST subtitles are stored inside Matroska, the only allowed character set\n Each HDMV text subtitle stream in a Blu-ray can use one of a handful of character sets. This information is not stored in the MPEG2 Transport Stream itself but in the accompanying Clip Information file.\n \n Therefore a muxer MUST parse the accompanying Clip Information file. If the information indicates a character set other than UTF-8, it MUST re-encode all text Dialog Presentation Segments from the indicated character set to UTF-8 prior to storing them in Matroska.\n+\n+\n+# Digital Video Broadcasting (DVB) subtitles\n+\n+The specifications for the Digital Video Broadcasting subtitle bitstream format (short: DVB subtitles) can be found in the document \"ETSI EN 300 743 - Digital Video Broadcasting (DVB); Subtitling systems\". The storage of DVB subtitles in MPEG transport streams is specified in the document \"ETSI EN 300 468 - Digital Video Broadcasting (DVB); Specification for Service Information (SI) in DVB systems\".\n+\n+## Storage of DVB subtitles\n+\n+### CodecID\n+\n+The CodecID to use is `S_DVBSUB`.\n+\n+### CodecPrivate\n+\n+The CodecPrivate element is five bytes long and has the following structure:\n+\n+*    2 bytes: composition page ID (bit string, left bit first)\n+*    2 bytes: ancillary page ID (bit string, left bit first)\n+*    1 byte: subtitling type (bit string, left bit first)\n+\n+The semantics of these bytes bytes are the same as the ones described in section 6.2.41 \"Subtitling descriptor\" of ETSI EN 300 468.\n+\n+### Storage of DVB subtitles in Matroska Blocks\n+\n+Each Matroska Block consists of one or more DVB Subtitle Segments as described in segment 7.2 \"Syntax and semantics of the subtitling segment\" of ETSI EN 300 743.\n+\n+DVB Subtitle Segments are normally shown until a subsequent Subtitle Segment is encountered. Therefore the Matroska Block MAY have no Duration. In that case a player MUST display Subtitle Segments within a Matroska Block until the next Subtitle Segments are encountered.","path":"subtitles.md","position":30,"original_position":30,"commit_id":"3bb470e2ef683529835edc7741554d6f825a1cd2","original_commit_id":"d83065631aa576e77bc5012d5d59ccfd4128b599","user":{"login":"dericed","id":762604,"avatar_url":"https://avatars.githubusercontent.com/u/762604?v=3","gravatar_id":"","url":"https://api.github.com/users/dericed","html_url":"https://github.com/dericed","followers_url":"https://api.github.com/users/dericed/followers","following_url":"https://api.github.com/users/dericed/following{/other_user}","gists_url":"https://api.github.com/users/dericed/gists{/gist_id}","starred_url":"https://api.github.com/users/dericed/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dericed/subscriptions","organizations_url":"https://api.github.com/users/dericed/orgs","repos_url":"https://api.github.com/users/dericed/repos","events_url":"https://api.github.com/users/dericed/events{/privacy}","received_events_url":"https://api.github.com/users/dericed/received_events","type":"User","site_admin":false},"body":"Re: `In that case a player MUST display Subtitle Segments`. This makes it seem as if the player does not have the option to not display the subtitle, such as when the subtitle is disabled.","created_at":"2016-12-31T18:23:55Z","updated_at":"2016-12-31T18:23:55Z","html_url":"https://github.com/Matroska-Org/matroska-specification/pull/77#discussion_r94276375","pull_request_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/77","_links":{"self":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/comments/94276375"},"html":{"href":"https://github.com/Matroska-Org/matroska-specification/pull/77#discussion_r94276375"},"pull_request":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/77"}}},"pull_request":{"url":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/77","id":99809072,"html_url":"https://github.com/Matroska-Org/matroska-specification/pull/77","diff_url":"https://github.com/Matroska-Org/matroska-specification/pull/77.diff","patch_url":"https://github.com/Matroska-Org/matroska-specification/pull/77.patch","issue_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/issues/77","number":77,"state":"open","locked":false,"title":"add codec specs for DVB subtitles (codec ID S_DVBSUB)","user":{"login":"mbunkus","id":414282,"avatar_url":"https://avatars.githubusercontent.com/u/414282?v=3","gravatar_id":"","url":"https://api.github.com/users/mbunkus","html_url":"https://github.com/mbunkus","followers_url":"https://api.github.com/users/mbunkus/followers","following_url":"https://api.github.com/users/mbunkus/following{/other_user}","gists_url":"https://api.github.com/users/mbunkus/gists{/gist_id}","starred_url":"https://api.github.com/users/mbunkus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbunkus/subscriptions","organizations_url":"https://api.github.com/users/mbunkus/orgs","repos_url":"https://api.github.com/users/mbunkus/repos","events_url":"https://api.github.com/users/mbunkus/events{/privacy}","received_events_url":"https://api.github.com/users/mbunkus/received_events","type":"User","site_admin":false},"body":"This is the graphical subtitle format used by the Digital Video Broadcasting standard. There are several programs that have been writing Matroska files with such tracks for years. mkvmerge has only gained support for it after release 9.7.1.\r\n\r\nThis pull request makes that storage method official.","created_at":"2016-12-31T17:30:44Z","updated_at":"2016-12-31T18:23:55Z","closed_at":null,"merged_at":null,"merge_commit_sha":"901bbd6f15f1e285d795e4a4b5426ad25f06877c","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/77/commits","review_comments_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/77/comments","review_comment_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/issues/77/comments","statuses_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/statuses/3bb470e2ef683529835edc7741554d6f825a1cd2","head":{"label":"mbunkus:codec-specs-dvb-subtitles","ref":"codec-specs-dvb-subtitles","sha":"3bb470e2ef683529835edc7741554d6f825a1cd2","user":{"login":"mbunkus","id":414282,"avatar_url":"https://avatars.githubusercontent.com/u/414282?v=3","gravatar_id":"","url":"https://api.github.com/users/mbunkus","html_url":"https://github.com/mbunkus","followers_url":"https://api.github.com/users/mbunkus/followers","following_url":"https://api.github.com/users/mbunkus/following{/other_user}","gists_url":"https://api.github.com/users/mbunkus/gists{/gist_id}","starred_url":"https://api.github.com/users/mbunkus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbunkus/subscriptions","organizations_url":"https://api.github.com/users/mbunkus/orgs","repos_url":"https://api.github.com/users/mbunkus/repos","events_url":"https://api.github.com/users/mbunkus/events{/privacy}","received_events_url":"https://api.github.com/users/mbunkus/received_events","type":"User","site_admin":false},"repo":{"id":64010687,"name":"matroska-specification","full_name":"mbunkus/matroska-specification","owner":{"login":"mbunkus","id":414282,"avatar_url":"https://avatars.githubusercontent.com/u/414282?v=3","gravatar_id":"","url":"https://api.github.com/users/mbunkus","html_url":"https://github.com/mbunkus","followers_url":"https://api.github.com/users/mbunkus/followers","following_url":"https://api.github.com/users/mbunkus/following{/other_user}","gists_url":"https://api.github.com/users/mbunkus/gists{/gist_id}","starred_url":"https://api.github.com/users/mbunkus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbunkus/subscriptions","organizations_url":"https://api.github.com/users/mbunkus/orgs","repos_url":"https://api.github.com/users/mbunkus/repos","events_url":"https://api.github.com/users/mbunkus/events{/privacy}","received_events_url":"https://api.github.com/users/mbunkus/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mbunkus/matroska-specification","description":null,"fork":true,"url":"https://api.github.com/repos/mbunkus/matroska-specification","forks_url":"https://api.github.com/repos/mbunkus/matroska-specification/forks","keys_url":"https://api.github.com/repos/mbunkus/matroska-specification/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mbunkus/matroska-specification/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mbunkus/matroska-specification/teams","hooks_url":"https://api.github.com/repos/mbunkus/matroska-specification/hooks","issue_events_url":"https://api.github.com/repos/mbunkus/matroska-specification/issues/events{/number}","events_url":"https://api.github.com/repos/mbunkus/matroska-specification/events","assignees_url":"https://api.github.com/repos/mbunkus/matroska-specification/assignees{/user}","branches_url":"https://api.github.com/repos/mbunkus/matroska-specification/branches{/branch}","tags_url":"https://api.github.com/repos/mbunkus/matroska-specification/tags","blobs_url":"https://api.github.com/repos/mbunkus/matroska-specification/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mbunkus/matroska-specification/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mbunkus/matroska-specification/git/refs{/sha}","trees_url":"https://api.github.com/repos/mbunkus/matroska-specification/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mbunkus/matroska-specification/statuses/{sha}","languages_url":"https://api.github.com/repos/mbunkus/matroska-specification/languages","stargazers_url":"https://api.github.com/repos/mbunkus/matroska-specification/stargazers","contributors_url":"https://api.github.com/repos/mbunkus/matroska-specification/contributors","subscribers_url":"https://api.github.com/repos/mbunkus/matroska-specification/subscribers","subscription_url":"https://api.github.com/repos/mbunkus/matroska-specification/subscription","commits_url":"https://api.github.com/repos/mbunkus/matroska-specification/commits{/sha}","git_commits_url":"https://api.github.com/repos/mbunkus/matroska-specification/git/commits{/sha}","comments_url":"https://api.github.com/repos/mbunkus/matroska-specification/comments{/number}","issue_comment_url":"https://api.github.com/repos/mbunkus/matroska-specification/issues/comments{/number}","contents_url":"https://api.github.com/repos/mbunkus/matroska-specification/contents/{+path}","compare_url":"https://api.github.com/repos/mbunkus/matroska-specification/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mbunkus/matroska-specification/merges","archive_url":"https://api.github.com/repos/mbunkus/matroska-specification/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mbunkus/matroska-specification/downloads","issues_url":"https://api.github.com/repos/mbunkus/matroska-specification/issues{/number}","pulls_url":"https://api.github.com/repos/mbunkus/matroska-specification/pulls{/number}","milestones_url":"https://api.github.com/repos/mbunkus/matroska-specification/milestones{/number}","notifications_url":"https://api.github.com/repos/mbunkus/matroska-specification/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mbunkus/matroska-specification/labels{/name}","releases_url":"https://api.github.com/repos/mbunkus/matroska-specification/releases{/id}","deployments_url":"https://api.github.com/repos/mbunkus/matroska-specification/deployments","created_at":"2016-07-23T10:09:55Z","updated_at":"2016-07-23T10:09:56Z","pushed_at":"2016-12-31T18:21:31Z","git_url":"git://github.com/mbunkus/matroska-specification.git","ssh_url":"git@github.com:mbunkus/matroska-specification.git","clone_url":"https://github.com/mbunkus/matroska-specification.git","svn_url":"https://github.com/mbunkus/matroska-specification","homepage":null,"size":272,"stargazers_count":0,"watchers_count":0,"language":"XSLT","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"Matroska-Org:master","ref":"master","sha":"159e8a555680e2a9032b1b3dd07fba24540486a1","user":{"login":"Matroska-Org","id":3148284,"avatar_url":"https://avatars.githubusercontent.com/u/3148284?v=3","gravatar_id":"","url":"https://api.github.com/users/Matroska-Org","html_url":"https://github.com/Matroska-Org","followers_url":"https://api.github.com/users/Matroska-Org/followers","following_url":"https://api.github.com/users/Matroska-Org/following{/other_user}","gists_url":"https://api.github.com/users/Matroska-Org/gists{/gist_id}","starred_url":"https://api.github.com/users/Matroska-Org/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Matroska-Org/subscriptions","organizations_url":"https://api.github.com/users/Matroska-Org/orgs","repos_url":"https://api.github.com/users/Matroska-Org/repos","events_url":"https://api.github.com/users/Matroska-Org/events{/privacy}","received_events_url":"https://api.github.com/users/Matroska-Org/received_events","type":"Organization","site_admin":false},"repo":{"id":56977388,"name":"matroska-specification","full_name":"Matroska-Org/matroska-specification","owner":{"login":"Matroska-Org","id":3148284,"avatar_url":"https://avatars.githubusercontent.com/u/3148284?v=3","gravatar_id":"","url":"https://api.github.com/users/Matroska-Org","html_url":"https://github.com/Matroska-Org","followers_url":"https://api.github.com/users/Matroska-Org/followers","following_url":"https://api.github.com/users/Matroska-Org/following{/other_user}","gists_url":"https://api.github.com/users/Matroska-Org/gists{/gist_id}","starred_url":"https://api.github.com/users/Matroska-Org/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Matroska-Org/subscriptions","organizations_url":"https://api.github.com/users/Matroska-Org/orgs","repos_url":"https://api.github.com/users/Matroska-Org/repos","events_url":"https://api.github.com/users/Matroska-Org/events{/privacy}","received_events_url":"https://api.github.com/users/Matroska-Org/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Matroska-Org/matroska-specification","description":null,"fork":false,"url":"https://api.github.com/repos/Matroska-Org/matroska-specification","forks_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/forks","keys_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/teams","hooks_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/hooks","issue_events_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/issues/events{/number}","events_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/events","assignees_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/assignees{/user}","branches_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/branches{/branch}","tags_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/tags","blobs_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/git/refs{/sha}","trees_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/statuses/{sha}","languages_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/languages","stargazers_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/stargazers","contributors_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/contributors","subscribers_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/subscribers","subscription_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/subscription","commits_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/commits{/sha}","git_commits_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/git/commits{/sha}","comments_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/comments{/number}","issue_comment_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/issues/comments{/number}","contents_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/contents/{+path}","compare_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/merges","archive_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/downloads","issues_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/issues{/number}","pulls_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls{/number}","milestones_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/milestones{/number}","notifications_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/labels{/name}","releases_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/releases{/id}","deployments_url":"https://api.github.com/repos/Matroska-Org/matroska-specification/deployments","created_at":"2016-04-24T14:58:00Z","updated_at":"2016-12-28T06:22:29Z","pushed_at":"2016-12-31T18:21:33Z","git_url":"git://github.com/Matroska-Org/matroska-specification.git","ssh_url":"git@github.com:Matroska-Org/matroska-specification.git","clone_url":"https://github.com/Matroska-Org/matroska-specification.git","svn_url":"https://github.com/Matroska-Org/matroska-specification","homepage":null,"size":279,"stargazers_count":11,"watchers_count":11,"language":"XSLT","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":7,"mirror_url":null,"open_issues_count":17,"forks":7,"open_issues":17,"watchers":11,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/77"},"html":{"href":"https://github.com/Matroska-Org/matroska-specification/pull/77"},"issue":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/issues/77"},"comments":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/issues/77/comments"},"review_comments":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/77/comments"},"review_comment":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/pulls/77/commits"},"statuses":{"href":"https://api.github.com/repos/Matroska-Org/matroska-specification/statuses/3bb470e2ef683529835edc7741554d6f825a1cd2"}}}}
{"actor":{"display_login":"dericed"}}