{"id":731,"date":"2024-11-10T20:37:12","date_gmt":"2024-11-10T12:37:12","guid":{"rendered":"https:\/\/cqiot.cc\/?p=731"},"modified":"2024-11-10T20:37:15","modified_gmt":"2024-11-10T12:37:15","slug":"%e5%9b%bd%e6%a0%8728181%e5%b9%b3%e5%8f%b0%e7%bc%96%e8%af%91%e6%90%ad%e5%bb%ba","status":"publish","type":"post","link":"https:\/\/cqiot.cc\/index.php\/2024\/11\/10\/%e5%9b%bd%e6%a0%8728181%e5%b9%b3%e5%8f%b0%e7%bc%96%e8%af%91%e6%90%ad%e5%bb%ba\/","title":{"rendered":"\u56fd\u680728181\u5e73\u53f0\u7f16\u8bd1\u642d\u5efa"},"content":{"rendered":"\n<p>\u53c2\u8003\u6587\u6863\uff1a<\/p>\n\n\n\n<p>   1\u3001<a href=\"https:\/\/mp.weixin.qq.com\/s?__biz=MzkwNzIxMTExNQ==&amp;mid=2247483882&amp;idx=1&amp;sn=8bb6b3e26eab3bccb43eab48cf331294&amp;chksm=c0ddf9eef7aa70f8566ab002d64f78928036f497c43e15ebca962396dd31407af642f6d526a2&amp;cur_album_id=3378104839527890948&amp;scene=189#wechat_redirect\">GB28181\u670d\u52a1\u5668\u4fdd\u59c6\u7ea7\u7f16\u8bd1\u6559\u7a0b (qq.com)<\/a><\/p>\n\n\n\n<p>  2\u3001<a href=\"https:\/\/blog.csdn.net\/fedorayang\/article\/details\/143477054\">\u4f7f\u7528\u6700\u65b0\u7248\u7684wvp\u548cZLMediaKit\u642d\u5efaGb28181\u6d4b\u8bd5\u670d\u52a1\u5668-CSDN\u535a\u5ba2<\/a><\/p>\n\n\n\n<p>  3\u3001<a href=\"https:\/\/github.com\/ZLMediaKit\/ZLMediaKit\/wiki\/%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B\">zlm\u542f\u7528webrtc\u7f16\u8bd1\u6307\u5357 \u00b7 ZLMediaKit\/ZLMediaKit Wiki \u00b7 GitHub<\/a><\/p>\n\n\n\n<p>\u670d\u52a1\u5668\u4f7f\u7528\u7684\u662fUbuntu server 24.04.1 LTS<\/p>\n\n\n\n<p>\u5207\u6362\u5230root\u8d26\u53f7\u4e0b\u64cd\u4f5c \u6700\u597d\u5f00\u542froot\u8d26\u53f7ssh\u767b\u5f55<\/p>\n\n\n\n<p>1\u3001\u5b89\u88c5\u4f9d\u8d56<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt-get install -y openjdk-11-jre git maven nodejs build-essential npm cmake gcc openssl libssl-dev libsdl-dev libavcodec-dev libavutil-dev ffmpeg<\/code><\/pre>\n\n\n\n<p>2\u3001\u5b89\u88c5redis<\/p>\n\n\n\n<p>sudo apt update<br>sudo apt install redis-server<br>redis-server<br>systemctl status redis<br>redis-cli<\/p>\n\n\n\n<p>3\u3001\u5b89\u88c5mysql<\/p>\n\n\n\n<p>sudo apt install mysql-server mysql-client<br>systemctl status mysql<br>systemctl start mysql<br>mysql &#8211;version<br>\u914d\u7f6emysql<br>\u514d\u5bc6\u8fdb\u5165mysql<br>sudo mysql -uroot<br>your_new _password \u4fee\u6539\u6210\u7528\u6237\u5bc6\u7801<br>alter user &#8216;root&#8217;@&#8217;localhost&#8217; identified with mysql_native_password by &#8216;admin123&#8217;;<br>mysql -u root -p<br>use mysql;<br>root\u8d26\u53f7\u53ef\u4ee5\u8bbf\u95ee\u6240\u6709\u4e3b\u673a<br>update user set host=&#8217;%&#8217; where user= &#8216;root&#8217;;<br>flush privileges;<br>\u6388\u6743<br>grant all on <em>.<\/em> to &#8216;root&#8217;@&#8217;%&#8217;;<br>flush privileges;<br>quit;<br><\/p>\n\n\n\n<p>\u62f7\u8d1d\u6570\u636e\u5e93\u6587\u4ef6\u5230config\u6587\u4ef6\u5939<br>cp wvp-GB28181-pro\/\u6570\u636e\u5e93\/2.7.3\/\u521d\u59cb\u5316-mysql-2.7.3.sql config\/mysql.sql<br><em>#\u8fdb\u5165mysql<\/em> <br>mysql -u root -p<br>create DATABASE wvp; <br>use wvp; <br>source \/root\/config\/mysql.sql; <br>flush privileges; exit<\/p>\n\n\n\n<p>4\u3001\u7f16\u8bd1 zLMediakit<\/p>\n\n\n\n<p>cd ~<br>git clone https:\/\/gitee.com\/xia-chu\/ZLMediaKit <br>cd ZLMediaKit <br>git submodule update &#8211;init<br>mkdir build<br>cd build<br>cmake ..<br>make -j4<\/p>\n\n\n\n<p>\u7f16\u8bd1\u5b8c\u6210\u540e\u751f\u6210\u7684\u6587\u4ef6\u5728release\/linux\/Debug\u76ee\u5f55\u4e0b<\/p>\n\n\n\n<p>5\u3001\u7f16\u8bd1wvp-GB28181-pro<\/p>\n\n\n\n<p>cd ~<br>git clone https:\/\/github.com\/648540858\/wvp-GB28181-pro.git<br>cd wvp-GB28181-pro\/web_src\/ <br>npm &#8211;registry=https:\/\/registry.npmmirror.com install <br>npm run build<\/p>\n\n\n\n<p>\u7f16\u8bd1\u5b8c\u6210\u540e\u56de\u5230wvp-GB28181-pro\u76ee\u5f55\u6267\u884c\u53ef\u6267\u884cjar<br> mvn package<\/p>\n\n\n\n<p>\u751f\u6210WAR<br>mvn package -P war<\/p>\n\n\n\n<p>6\u3001\u4fee\u6539\u914d\u7f6e\u6587\u4ef6<\/p>\n\n\n\n<p>cd ~<br>mkdir config<br>\u62f7\u8d1d\u914d\u7f6e\u6587\u4ef6\u5230config\u6587\u4ef6\u5939 \u8def\u5f84\u4e0d\u5bf9\u81ea\u884c\u4fee\u6539<br> wvp-GB28181-pro\/target\/classes\/\u914d\u7f6e\u8be6\u60c5.yml \u62f7\u8d1d\u5230config\u76ee\u5f55 \u91cd\u547d\u540d\u4e3awvp_gb28181.yml<br> ZLMediaKit\/release\/linux\/Debug\/config.ini config<\/p>\n\n\n\n<p>\u4fee\u6539config.ini\u6587\u4ef6<br>[api]<br>#\u548c wvp_gb28181.yml \u4e2d media:secret: \u4e00\u81f4<br>secret=021334523TF8yT83wh5432W4vz25273342f7<\/p>\n\n\n\n<p>[general]<br>#\u548c wvp_gb28181.yml \u4e2d media:id: \u4e00\u81f4<br>mediaServerId=XwFtVZrtZbHJq4UV13213<\/p>\n\n\n\n<p>[http]<br>#\u548c wvp_gb28181.yml \u4e2d media:http-port: \u4e00\u81f4<br>port=7080<\/p>\n\n\n\n<p>[rtp_proxy]<br>#\u548c wvp_gb28181.yml \u4e2d media:rtp:port-range: \u4e00\u81f4<br>port_range=30000-40000<\/p>\n\n\n\n<p>\u4fee\u6539wvp_gb28181.yml\u6587\u4ef6<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>media:\n\t#\u548cZLMediaKit\u8bbe\u7f6e\u4e00\u81f4\n\tsecret: 021334523TF8yT83wh5432W4vz25273342f7\n\tid: XwFtVZrtZbHJq4UV13213\n\thttp-port: 7080\n\trtp:\n\t\tport-range: 30000,40000\n\t\n\t# &#91;\u5fc5\u987b\u4fee\u6539] zlm\u670d\u52a1\u5668\u7684\u5185\u7f51IP\n\tip: \u5b9e\u9645IP\u5730\u5740\n\thook-ip: \u5b9e\u9645IP\u5730\u5740<\/code><\/pre>\n\n\n\n<p>\u6570\u636e\u5e93\uff1a<\/p>\n\n\n\n<p>        dynamic:<br>            primary: master<br>            datasource:<br>                master:<br>                    type: com.zaxxer.hikari.HikariDataSource<br>                    driver-class-name: com.mysql.cj.jdbc.Driver<br>                    url: jdbc:mysql:\/\/127.0.0.1:3306\/wvp?useUnicode=true&amp;characterEncoding=UTF8&amp;rewriteBatchedStatements=true&amp;serverTimezone=PRC&amp;useSSL=false&amp;allowMultiQueries=true<br>                    username: root<br>                    password: admin123<br>                    hikari:<br>                        connection-timeout: 20000             # \u662f\u5ba2\u6237\u7aef\u7b49\u5f85\u8fde\u63a5\u6c60\u8fde\u63a5\u7684\u6700\u5927\u6beb\u79d2\u6570<br>                        initialSize: 50                       # \u8fde\u63a5\u6c60\u521d\u59cb\u5316\u8fde\u63a5\u6570<br>                        maximum-pool-size: 200                # \u8fde\u63a5\u6c60\u6700\u5927\u8fde\u63a5\u6570<br>                        minimum-idle: 10                       # \u8fde\u63a5\u6c60\u6700\u5c0f\u7a7a\u95f2\u8fde\u63a5\u6570<br>                        idle-timeout: 300000                  # \u5141\u8bb8\u8fde\u63a5\u5728\u8fde\u63a5\u6c60\u4e2d\u7a7a\u95f2\u7684\u6700\u957f\u65f6\u95f4\uff08\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d\uff09<br>                        max-lifetime: 1200000                 # \u662f\u6c60\u4e2d\u8fde\u63a5\u5173\u95ed\u540e\u7684\u6700\u957f\u751f\u547d\u5468\u671f\uff08\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d)  <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sip:\n    ip: \u5b9e\u9645IP\u5730\u5740\n    # &#91;\u53ef\u9009] \u6ca1\u6709\u4efb\u4f55\u4e1a\u52a1\u9700\u6c42\uff0c\u4ec5\u4ec5\u662f\u5728\u524d\u7aef\u5c55\u793a\u7684\u65f6\u5019\u7528\n    show-ip: \u5b9e\u9645IP\u5730\u5740\n    # &#91;\u53ef\u9009] 28181\u670d\u52a1\u76d1\u542c\u7684\u7aef\u53e3\n    port: 5060\n    # &#91;\u53ef\u9009]\n    domain: 4401020041\n    # &#91;\u53ef\u9009]\n    id: 44010200492000000001\n    # &#91;\u53ef\u9009] \u9ed8\u8ba4\u8bbe\u5907\u8ba4\u8bc1\u5bc6\u7801\uff0c\u540e\u7eed\u6269\u5c55\u4f7f\u7528\u8bbe\u5907\u5355\u72ec\u5bc6\u7801, \u79fb\u9664\u5bc6\u7801\u5c06\u4e0d\u8fdb\u884c\u6821\u9a8c\n    password: admin123    \n\n#web\u8bbf\u95ee\nserver:\n    port: 18080\n SSL\u6839\u636e\u9700\u6c42\u662f\u5426\u4fdd\u7559\n# &#91;\u6839\u636e\u4e1a\u52a1\u9700\u6c42\u914d\u7f6e]\nuser-settings:\n    # \u8de8\u57df\u914d\u7f6e\uff0c\u4e0d\u914d\u7f6e\u6b64\u9879\u5219\u5141\u8bb8\u6240\u6709\u8de8\u57df\u8bf7\u6c42\uff0c\u914d\u7f6e\u540e\u5219\u53ea\u5141\u8bb8\u914d\u7f6e\u7684\u9875\u9762\u7684\u5730\u5740\u8bf7\u6c42\uff0c \u53ef\u4ee5\u914d\u7f6e\u591a\u4e2a\n    allowed-origins:\n        - http:\/\/localhost:8008\n        - http:\/\/192.168.47.251:8008\n<\/code><\/pre>\n\n\n\n<p>\u8fdb\u5165config\u76ee\u5f55  \u65b0\u5efazmk.sh<\/p>\n\n\n\n<p>nano zmk.sh \u590d\u5236\u4e0b\u9762\u7684\u5185\u5bb9 \u5e76\u4fdd\u5b58<br>WVP_ZLM_PLATFORM_PATH=\/root<br>ZLMEDIAKIT_MEDIASERVER=${WVP_ZLM_PLATFORM_PATH}\/ZLMediaKit\/release\/linux\/Debug\/MediaServer<br>ZLMEDIAKIT_CONFIG_FILE=${WVP_ZLM_PLATFORM_PATH}\/config\/ZLMediaKit.ini<br>sudo ${ZLMEDIAKIT_MEDIASERVER} -c ${ZLMEDIAKIT_CONFIG_FILE}<\/p>\n\n\n\n<p>\u65b0\u5efawvp_gb28181.sh<\/p>\n\n\n\n<p>nano wvp_gb28181.sh \u62f7\u8d1d\u4e0b\u9762\u7684\u5185\u5bb9<br>WVP_ZLM_PLATFORM_PATH=\/root  <br>WVP_GB28181_JAR=${WVP_ZLM_PLATFORM_PATH}\/wvp-GB28181-pro\/target\/wvp-pro-2.7.3-10250742.jar<br>WVP_GB28181_CONFIG_FILE=${WVP_ZLM_PLATFORM_PATH}\/config\/wvp_gb28181.yml<br>sudo java -jar ${WVP_GB28181_JAR} &#8211;spring.config.location=${WVP_GB28181_CONFIG_FILE}<\/p>\n\n\n\n<p>\u5148\u8fd0\u884c zmk.sh     bash zmk.sh \u53e6\u5f00\u4e00\u4e2a\u7a97\u53e3 \u8fd0\u884cbash wvp_gb28181.sh \u67e5\u770b\u662f\u5426\u8fd0\u884c\u6b63\u5e38<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"505\" src=\"https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/1731241637135-1024x505.png\" alt=\"\" class=\"wp-image-732\" srcset=\"https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/1731241637135-1024x505.png 1024w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/1731241637135-300x148.png 300w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/1731241637135-768x379.png 768w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/1731241637135-1536x758.png 1536w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/1731241637135-670x331.png 670w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/1731241637135.png 1863w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"497\" src=\"https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1024x497.png\" alt=\"\" class=\"wp-image-733\" srcset=\"https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1024x497.png 1024w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-300x146.png 300w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-768x373.png 768w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1536x745.png 1536w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-670x325.png 670w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image.png 1861w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"496\" src=\"https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1-1024x496.png\" alt=\"\" class=\"wp-image-734\" srcset=\"https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1-1024x496.png 1024w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1-300x145.png 300w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1-768x372.png 768w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1-1536x744.png 1536w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1-670x324.png 670w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-1.png 1886w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"507\" src=\"https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-2-1024x507.png\" alt=\"\" class=\"wp-image-735\" srcset=\"https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-2-1024x507.png 1024w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-2-300x149.png 300w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-2-768x380.png 768w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-2-1536x761.png 1536w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-2-670x332.png 670w, https:\/\/cqiot.cc\/wp-content\/uploads\/2024\/11\/image-2.png 1862w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\u53c2\u8003\u6587\u6863\uff1a 1\u3001GB28181\u670d\u52a1\u5668\u4fdd\u59c6\u7ea7\u7f16\u8bd1\u6559\u7a0b (q&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-731","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/posts\/731","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/comments?post=731"}],"version-history":[{"count":1,"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/posts\/731\/revisions"}],"predecessor-version":[{"id":736,"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/posts\/731\/revisions\/736"}],"wp:attachment":[{"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/media?parent=731"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/categories?post=731"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cqiot.cc\/index.php\/wp-json\/wp\/v2\/tags?post=731"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}