{"id":1210,"date":"2017-06-12T17:09:38","date_gmt":"2017-06-12T08:09:38","guid":{"rendered":"http:\/\/blog.moramcnt.com\/?p=1210"},"modified":"2017-06-12T17:11:01","modified_gmt":"2017-06-12T08:11:01","slug":"%ec%9a%b0%eb%b6%84%ed%88%ac-%ec%84%9c%eb%b2%84%ec%97%90-%eb%8b%a4%ec%9c%88%ec%8a%a4%ed%8a%b8%eb%a6%ac%eb%b0%8d%ec%84%9c%eb%b2%84dss-%ec%84%a4%ec%b9%98","status":"publish","type":"post","link":"http:\/\/blog.moramcnt.com\/?p=1210","title":{"rendered":"\uc6b0\ubd84\ud22c \uc11c\ubc84\uc5d0 \ub2e4\uc708\uc2a4\ud2b8\ub9ac\ubc0d\uc11c\ubc84(DSS) \uc124\uce58"},"content":{"rendered":"<p>\ub2e4\uc74c\uc740 \ub2e4\uc708\uc2a4\ud2b8\ub9ac\ubc0d\uc11c\ubc84(Darwin Streaming Sever 6.0.3)\ub97c \uc6b0\ubd84\ud22c(Ubuntu 16.04.1)\uc5d0 \uc124\uce58\ud558\uace0 \ub09c\ud6c4, \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4.<br \/>\n1. \uacc4\uc815\uc0dd\uc131<\/p>\n<pre>\r\naddgroup --system qtss\r\nadduser --system --no-create-home --ingroup qtss qtss\r\n<\/pre>\n<p>2. \uc18c\uc2a4 \ub2e4\uc6b4\ub85c\ub4dc \ubc0f \ud328\uce58<\/p>\n<pre>\r\ncd \/usr\/local\/src\r\nwget https:\/\/github.com\/macosforge\/dss\/releases\/download\/6.0.3\/DarwinStreamingSrvr6.0.3-Source.tar\r\ntar xvf DarwinStreamingSrvr6.0.3-Source.tar\r\nwget http:\/\/blog.moramcnt.com\/wp-content\/uploads\/2017\/06\/dss-6.0.3.patch\r\npatch -p0 < dss-6.0.3.patch\r\n\r\nwget http:\/\/blog.moramcnt.com\/wp-content\/uploads\/2017\/06\/dss-hh-20080728-1.patch\r\npatch -p0 < dss-hh-20080728-1.patch\r\n<\/pre>\n<p>3. Makefile \uc218\uc815<\/p>\n<pre>\r\ncd DarwinStreamingSrvr6.0.3-Source\/\r\nvi Makefile.POSIX\r\n<\/pre>\n<p>LIBS\uc758 \ub05d\uc5d0 -ldl \ucd94\uac00<\/p>\n<pre>\r\nLIBS = $(CORE_LINK_LIBS) -lCommonUtilitiesLib -lQTFileLib -ldl\r\n<\/pre>\n<p>4. QTFileInfo.tproj \ud30c\uc77c\uc758 Makefile \uc218\uc815<\/p>\n<pre>\r\nvim .\/QTFileTools\/QTFileInfo.tproj\/Makefile.POSIX\r\n<\/pre>\n<p>LIBS\uc758 \ub05d\uc5d0 -lpthread \ucd94\uac00<\/p>\n<pre>\r\nLIBS = $(CORE_LINK_LIBS) -lCommonUtilitiesLib  -lQTFileExternalLib ..\/..\/CommonUtilitiesLib\/libCommonUtilitiesLib.a -lpthread\r\n<\/pre>\n<p>5. QTFileTest.tproj \ud30c\uc77c\uc758 Makefile \uc218\uc815<\/p>\n<pre>\r\nvim .\/QTFileTools\/QTFileTest.tproj\/Makefile.POSIX\r\n<\/pre>\n<p>LIBS\uc758 \ub05d\uc5d0 -lpthread \ucd94\uac00<\/p>\n<pre>\r\nlQTFileExternalLib ..\/..\/CommonUtilitiesLib\/libCommonUtilitiesLib.a ..\/..\/QTFileLib\/libQTFileExternalLib.a -lpthread\r\n<\/pre>\n<p>6. QTSampleLister.tproj \ud30c\uc77c\uc758 Makefile \uc218\uc815<\/p>\n<pre>\r\nvim .\/QTFileTools\/QTSampleLister.tproj\/Makefile.POSIX\r\n<\/pre>\n<p>LIBS\uc758 \ub05d\uc5d0 -lpthread \ucd94\uac00<\/p>\n<pre>\r\nlQTFileExternalLib ..\/..\/CommonUtilitiesLib\/libCommonUtilitiesLib.a ..\/..\/QTFileLib\/libQTFileExternalLib.a -lpthread\r\n<\/pre>\n<p>7. QTTrackInfo.tproj \ud30c\uc77c\uc758 Makefile \uc218\uc815<\/p>\n<pre>\r\nvim .\/QTFileTools\/QTTrackInfo.tproj\/Makefile.POSIX\r\n<\/pre>\n<p>LIBS\uc758 \ub05d\uc5d0 -lpthread \ucd94\uac00<\/p>\n<pre>\r\nlQTFileExternalLib ..\/..\/CommonUtilitiesLib\/libCommonUtilitiesLib.a ..\/..\/QTFileLib\/libQTFileExternalLib.a -lpthread\r\n<\/pre>\n<p>8. \ube4c\ub4dc<br \/>\n   - \uc131\uacf5\ud558\uac8c \ub418\uba74 DarwinStreamingSrvr-Linux \ud3f4\ub354 \uc0dd\uc131<\/p>\n<pre>\r\n.\/Buildit install \r\n<\/pre>\n<p>9. \ubc29\ud654\ubcbd \uc624\ud508<\/p>\n<pre>\r\nufw allow 554\/tcp\r\nufw allow 1220\/tcp\r\n<\/pre>\n<p>10. \uc124\uce58<br \/>\n - DarwinStreamingSrvr-Linux \ud3f4\ub354\ub85c \uc774\ub3d9\ud558\uc5ec \uc124\uce58<\/p>\n<pre>\r\ncd DarwinStreamingSrvr-Linux\r\n.\/Install\r\n<\/pre>\n<p>11. \uc6f9\ucf58\uc194 \uc811\uc18d<br \/>\n - http:\/\/xx.xx.xx.xx:1220\/ \uc73c\ub85c \uc811\uc18d<br \/>\n   \uadf8\ub7ec\ub098, \uc544\ub798\uc640 \uac19\uc774 \ud14d\uc2a4\ud2b8\uac00 \ucd9c\ub825\uc548\ub418\ub294 \uacbd\uc6b0\uac00 \ubc1c\uc0dd\ud558\uc600\ub2e4.<\/p>\n<p><a href=\"http:\/\/blog.moramcnt.com\/wp-content\/uploads\/2017\/06\/\ub85c\uadf8\uc778_\uba54\uc2dc\uc9c0\ucd9c\ub825\uc548\ub428.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.moramcnt.com\/wp-content\/uploads\/2017\/06\/\ub85c\uadf8\uc778_\uba54\uc2dc\uc9c0\ucd9c\ub825\uc548\ub428.png\" alt=\"\" width=\"707\" height=\"458\" class=\"alignnone size-full wp-image-1219\" \/><\/a><\/p>\n<p>   \ub2e4\ud589\ud788 \uad6c\uae00\ub9c1 \uacb0\uacfc  \uc544\ub798 \uc0ac\uc774\ud2b8\uc5d0\uc11c \ud574\uacb0\ucc45\uc744 \ucc3e\uc744 \uc218 \uc788\uc5c8\ub2e4.<br \/>\n   https:\/\/vk.com\/wingcatlab?w=wall-99790498_55<\/p>\n<p>11.1 streamingadminserver.pl \ud30c\uc77c \uc218\uc815<\/p>\n<pre>\r\ncd DarwinStreamingSrvr-Linux\r\nvi streamingadminserver.pl\r\n<\/pre>\n<p>\uc0c1\ub2e8\uc5d0 \uc544\ub798\uc640 \uac19\uc774 use Data::Dumper; \ub97c \ucd94\uac00\ud55c\ub2e4.<\/p>\n<pre>\r\n# Require needed libraries\r\npackage streamingadminserver;\r\nuse Socket;\r\nuse POSIX;\r\nuse Sys::Hostname;\r\n\r\nuse Data::Dumper;\r\n<\/pre>\n<p>1433 \ub77c\uc778 \uc815\ub3c4\uc5d0 $ENV{\"LMSG\"} = Dumper($messages{\"en\"}); \ub97c \uc544\ub798\uc640 \uac19\uc774 \ucd94\uac00<\/p>\n<pre>\r\n$ENV{\"GENREFILE\"} = 'genres';\r\n$ENV{\"COOKIES\"} = $header{'cookie'};\r\n$ENV{\"COOKIE_EXPIRE_SECONDS\"} = $config{\"cookieExpireSeconds\"};\r\n$ENV{\"LANGDIR\"} = $langDir;\r\n$ENV{\"LANGUAGE\"} = $language;\r\n$ENV{\"SSL_AVAIL\"} = $ssl_available;\r\n$ENV{\"HTTPS\"} =  \"ON\" if ($use_ssl);\r\n\r\n$ENV{\"LMSG\"} = Dumper($messages{\"en\"});\r\n<\/pre>\n<p>11.2 parse_xml.cgi \ud30c\uc77c \uc218\uc815<br \/>\n  - parse_xml.cgi \ud30c\uc77c\uc744 \uc5f4\uc5b4 sub foundString \uc774\ub77c\ub294 \uc11c\ube0c\ub8e8\ud2f4\uc744 \ucc3e\ub294\ub2e4.<\/p>\n<pre>\r\nvi .\/AdminHtml\/parse_xml.cgi\r\n<\/pre>\n<p>\ub9c8\uc9c0\ub9c9 \ub9ac\ud134\ud558\ub294 \ubd80\ubd84\uc778<br \/>\nreturn \"$messages{$name}\";<br \/>\n\ub97c \uc544\ub798\uc640 \uac19\uc774 \ub300\uccb4\ud55c\ub2e4.<\/p>\n<pre>\r\n$lmsg = $ENV{\"LMSG\"};\r\n my %copied_hash = %{ eval $lmsg };\r\n return $copied_hash{$name};\r\n<\/pre>\n<p>\uadf8\ub7f0\ud6c4 \ub2e4\uc2dc .\/Install \uba85\ub839\uc73c\ub85c \uc7ac \uc124\uce58<\/p>\n<pre>\r\n.\/Install\r\n<\/pre>\n<p><a href=\"http:\/\/blog.moramcnt.com\/wp-content\/uploads\/2017\/06\/\ub85c\uadf8\uc778.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.moramcnt.com\/wp-content\/uploads\/2017\/06\/\ub85c\uadf8\uc778.png\" alt=\"\" width=\"605\" height=\"361\" class=\"alignnone size-full wp-image-1220\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\ub2e4\uc74c\uc740 \ub2e4\uc708\uc2a4\ud2b8\ub9ac\ubc0d\uc11c\ubc84(Darwin Streaming Sever 6.0.3)\ub97c \uc6b0\ubd84\ud22c(Ubuntu 16.04.1)\uc5d0 \uc124\uce58\ud558\uace0 \ub09c\ud6c4, \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. 1. \uacc4\uc815\uc0dd\uc131 addgroup &#8211;system qtss adduser &#8211;system &#8211;no-create-home &#8211;ingroup qtss qtss 2. \uc18c\uc2a4 \ub2e4\uc6b4\ub85c\ub4dc \ubc0f \ud328\uce58 cd \/usr\/local\/src wget https:\/\/github.com\/macosforge\/dss\/releases\/download\/6.0.3\/DarwinStreamingSrvr6.0.3-Source.tar tar xvf DarwinStreamingSrvr6.0.3-Source.tar wget http:\/\/blog.moramcnt.com\/wp-content\/uploads\/2017\/06\/dss-6.0.3.patch patch -p0 < dss-6.0.3.patch wget http:\/\/blog.moramcnt.com\/wp-content\/uploads\/2017\/06\/dss-hh-20080728-1.patch patch -p0 < dss-hh-20080728-1.patch 3. Makefile \uc218\uc815 cd DarwinStreamingSrvr6.0.3-Source\/ vi Makefile.POSIX LIBS\uc758 \ub05d\uc5d0 [&hellip;]\n<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[2,25],"tags":[29,28],"class_list":["post-1210","post","type-post","status-publish","format-standard","hentry","category-2","category-25","tag-darwin-streaming-server","tag-dss"],"_links":{"self":[{"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=\/wp\/v2\/posts\/1210","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1210"}],"version-history":[{"count":14,"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=\/wp\/v2\/posts\/1210\/revisions"}],"predecessor-version":[{"id":1226,"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=\/wp\/v2\/posts\/1210\/revisions\/1226"}],"wp:attachment":[{"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1210"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1210"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.moramcnt.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1210"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}