{"_id":"@ailivingtech/wxinlineplayer_iov","_rev":"15-5ebfa889ed466df283b1f3e3fa985874","name":"@ailivingtech/wxinlineplayer_iov","dist-tags":{"latest":"1.2.0"},"versions":{"1.0.0":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.0","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"132681a2d8dc3e915abd15aab6efd5755d7c0de2","_id":"@ailivingtech/wxinlineplayer_iov@1.0.0","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-2mYqmBXo3O5SrS2rzGBVqI9Tgefs9Gwg+Q2qHwmvGwui4oGALa2EvNfQcHqHGbgfHq1J7m0gori4BqujoOLCTw==","shasum":"957b33cb7ac1420f11698a08c298b29cb43ea864","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.0.tgz","fileCount":25,"unpackedSize":417932,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggBVVCRA9TVsSAnZWagAAs+YP/0nk84HCrTsHQnwdQih2\nSPJ6H6Rimgpx2Gohn5zukdqyY2FavdFw79StsppNaCfVTgXr2U5wP4taKLJB\nQnTOoVai7xeD03yOZAXuFX1URYLXaAHDUS3Skj2txQyuyOzldvPNbr4zvVvi\nvrCqEABg80Tg6AFVfbtZaHMLkhx3q2hAdYnztmfvazv7txbgDu7o6piEfupj\nMVaetsnO07Ej7vtKQSXfhsjMHwyLeLoJSXEKvI2kzqrTHtE+Kj1H4v8hREG3\ntycC8gfnrjG4Wvh/36RPC4GKTxIdxWU0b4EF1Eb4ITI2qPMHSB/afIAHmdc4\najADLU5QLw3NqVtBAJ3NbRqGb6ATYPoFyryASpP4619G4fjv2mhKYQDdHu7R\nCEgWHzvUwpowUzBec2f5wr1lca0DtHtBaza5y7bo2qMSfihxO8REqMEGyK8N\n9xkHmfmTdXXz8WLolMmxF1mVTFqLtGa13MSMd//0KyFmSeZBSAOvaJEqe1SV\nt5x87/pe4sXiBi8B/KxoLthuOo1lQ4t00PFeu68i97KA40bjyE6XWqFsFl8s\nBUfV2PiDcM4UOUmSfVEFObcJBJW468Uw14pkhSvqVRP8uFOqiQJvGjdTW8d/\nzjYLvY5E8gxQ5HfhWIBKfOaxorzPnRkh/Movks0XhKighuHanbbOfPYi6YNG\nxT/q\r\n=5Gx2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8joWyFDuc4dHmOwU00fXdBBh1K5ZGU8RRJtpzF1rwsgIhAJj3MJn6Yckdh44eTL8PcM7TFiGQHbfLTK+QpJH4cz7k"}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.0_1619006805350_0.3682442694729213"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.1":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.1","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"deb833c95782fd6040019ea5847b1d5e156ba37d","_id":"@ailivingtech/wxinlineplayer_iov@1.0.1","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-yB/UBT1fxm0t6ECjOhHJU6hg8Jwr/UpKFL0c4YC9tfUqgnasIinELoTWEkPIPkKBzIJgQuLr5fSkhGrT/KyEbw==","shasum":"1cc25e92a4d82908ed4ead6d9df7405000813633","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.1.tgz","fileCount":32,"unpackedSize":4863157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggNt6CRA9TVsSAnZWagAADPwP/1C8ltU7EADjgbRMH5rV\nxRl9LFcthj3PdKiq+GAMZVL/eDH7DcF+6zg8fS0m7mlxdmXAVugRwddXkSCn\nS+jNthP91aUvJXF/TXgHJzevNVAqwbl0rt6Vy/opYbci/tFAhY8nqutHVqo5\nh01fFgAvVP1IgwAMVubFIKTNCoV0SYKPQbVHmNaaLXgtJI8cBPE8h8NgHFXI\niLP4ZrGv1tVs3ikS11UPFromkU5nGPo0Ji5BknkRKSwr7foISLTwRxq2xILi\nVB/bDmksdSZNCKi3gHL9lWPZxWBOFSai8FofVFjoPuLIpNXWs1gPYZyhnyqz\nb4OtuOB+trVe555oce04UowcKVWORx3DrYt6qGzkTMA5ns/WmuoklK5TjvHL\nsvDPHnA0QlOWaWbg5yrq4Nyz+kOF9jReK7geVt2Q1tsRzjoW94elourUei5c\n8Qk5jTR6ZgtJL/w+lxz8oz5JBOSihyIZ+hsoh9Gzx87UUMQiE7Ef9DPRiK+i\noxB/wdV1qRa4E8cLfydMEbhh9QL0yEfDcBzv5iaOXWPMmXbPMQ7sm3oRJfyD\nYucaujsZc5ZvAqna84c7vYYdVpT/Kt1EgrNkZjdb80uCL1PTa9P/uYKco+BY\nhMRChAOtOyKubez6PkMDo9Se95x3LU56F+GJqVHVxzG8mtepivPal24FvKgF\nI4j5\r\n=wkkU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICv8BNt/rkwSWlaN16iH+ExbfQlQ1sI8MtZgAxcCTk6ZAiA5LFJZgJ2sGq90GA9M/E+ddq0uc/kgvxpQx95QKc8xHg=="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.1_1619057530103_0.4904517841260896"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.2":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.2","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"1286c0aecda034c6cc1c11459060f68de8c21457","_id":"@ailivingtech/wxinlineplayer_iov@1.0.2","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-q5ZDt3AYdFfltirLx8Rs6AA5cBa2RahihvHly9zkWslnFfcHnBW3MSqak2YIxYP6OWsnK9W2oo9gCvrVxb4seg==","shasum":"82949f4165bf72dbe3fd6a95ba5664e237757a3b","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.2.tgz","fileCount":32,"unpackedSize":4863579,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggq8KCRA9TVsSAnZWagAAJnAQAKM7rQEyr+mIMTtqLWD2\n3dHAYcTBcquihSYuhzq8eHaf41Fl6m6mwAdNFq7/QKq/xcH95hHKCMj2Sa7m\nEt9lUSBS43D2E0fa1oSnw6j0bWp3uReDXRlZwbsNqSKRz4WmMn7Ip+EjEL/p\nxngKQv4csxKZuMZ03Zj085X41XOPUaOS/LvnJUExlDlByNafvZ3HnVEKjHSw\nYJ7yjDpbFAvr+A1IVaHzi3Paz+GyPL/FFmM7M2IH2EUqOx3ziYUXG9ejdcgg\nIUuOzT34rM+FHdCL3oEDwZryvauWdZanm/4VjTE/nmeB1exvc5spo09QSJIy\njw2ZqwyJybsHy2CMehHatdlC8JPokCduvXktlmXGCxzLjJ8Xw9EHDvUE6JcZ\nvkRp76T7AXBh+n6rzsJ0spnzPF1naDFjnYl+B/7i5I4jj47oDBXclnwSNZry\nKX2dlPDJGZ/a65KHH5Fnaq2oEDLk2D35BspC7lTNJSCZSRQ59PC0vOtxih90\nX7juCz10or+AGIhL4V0+5ejbEdSwEjAjeUWZGxeG9fTacOMOh56IFLi0OdCt\n107zAewwfjGubNhkmKQQrrjSnQYILTr15TnMujMiGWJ42Ra4+B9tDzbPErL4\nsC/b8mttWJbwhtWDjDNNWP+6N/bvI/ue9kRErrCTBwCUKI8hilTCTSL6j9Tu\nyguE\r\n=4amh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdaHfu/7uJwR26f4YuYZJe1PqUVOugOpRFd5D7mYse4gIgOkE97uEM2t+MzYYdvmvY6JBAZ4pMWr8LPBZUVDBfLEk="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.2_1619177225998_0.5507797013192355"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.3":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.3","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"1286c0aecda034c6cc1c11459060f68de8c21457","_id":"@ailivingtech/wxinlineplayer_iov@1.0.3","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-NANi9X7cjoR8Hf9jJ9XbMRyqz1r+JV7EP8IiLyr8rZJJbzpVD149wSsgLfmxR1EJ+427uik7KSvHZKOiQsA4dA==","shasum":"76b1030a7ae5350c24eac36457af18f154e7a2cb","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.3.tgz","fileCount":32,"unpackedSize":4863606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggrOHCRA9TVsSAnZWagAAV7MP/3sVNxVMpyWMgjXOil7R\n9JwFzMqGn6L+1x10Xui44z2sYEZFsSElk/vHzreEQSvb7NbHWO+iIv8xGO22\ni0GlVsdrt8IF1SWIq+fr1mAtPuRrUTW3AFe5Fg3O5cDxh0suQm8aboZErF6h\nlydH8Rr/5ebGK31umhWPGBdDol+/ExEpl79SqpTVYVlzqgv1ILFzPaju+bZa\nBgVAzw8xkuGYSrW6gAtrhoYXJosehJBDVD24sGAvDRzei0P6BqSvMr1nN8TQ\njxgATi1bTmhJowRjYTBZjPCRFMuqZqu31itByUgUno39afqYP1zNbUwZ8S8e\nvJVh3Y2XBOfa9iHmS0RcKbEK/dsWcLvktJakG2bYYQ0FnBB6Wc4IK/hDYQJa\nS+gkqI9Ny+e/1ugfZuoScWXyHIEt/pMZMJk6krEGp+QmMoUvW1KfQmiIqEdo\nXM3Tma2A2qxBoBEepziCEuGpwhxM2v1AP9owsZMbBvkuz7jwbRm34WBof3aC\nooMS3Jst/1IsQoM9GjIOksYJpipnTyvV/0dci3IDNi6XGP85o/wLqr/fTd7Z\nSmxjzENu6EBruLl9MSz6Lb0Q8EHuNf+5b/Cnc5vyiClzxaB4ls5aendnaB7R\nxJivRX+EWk0mYgvqj+osBVII46TKoWaomlnzC0CZSqPEXFbNtKCB1EFf2L4E\nmV34\r\n=sSdC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE03UsRZUyXjeegQf0Cl/cnvoCiDF5YB3zuFyAbl8eEXAiBwlEUYD/BaTQ6X+qPdzJzypUXGwrO+kpXosorh012EZw=="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.3_1619178374777_0.5081394042528808"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.4":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.4","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"1286c0aecda034c6cc1c11459060f68de8c21457","_id":"@ailivingtech/wxinlineplayer_iov@1.0.4","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-IOPYmY2n6M8DO7+ORlW/zdZDA0MvRc5J9UCoIyTzizhECJ/I2xM2tR5RRyOxGIMpX1ETTdLIqqbY0LooU0eOOg==","shasum":"5e1b787e69b6f9d1e1fb932180c38b4a0fced23c","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.4.tgz","fileCount":32,"unpackedSize":4863428,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggrVoCRA9TVsSAnZWagAANXAP/jpQ0WBv4+KjXHoSuNJ+\nCuiMy3lyTxfU5MF1jScfQ7tFkXPFLGUSxuuZFrkDw2YHtmZtJon4Y+t3jWaq\nX1PQyqRzpuBX0ejDMR4VKWac6iHpWyOJq1xLsE0Gvu1hWl6BSqu9uCXKCd8Q\niIvG8vx7kXMA/7TqIdrjxtpBZ+XKPCPIgY7OjxiQ0PIP2SocTBh2j//go5BI\nfmfMe6r6vNA3CE44FGYioZLXRvh7RpwX1iESPEPYj4OmLaeNqket4l7ltmDo\nTsJFC9gtlK43f5dm1p9jfFJKUpDicHsInsOfKL867xJQxPUqS3OaEQRVdjEN\n9ohTBoPIFxoc52NZfz31T1EyajDl7AyG/a9P2/fngZAarA41v4LJhdCWpBac\ndFLKi0hxukPGS47vlNTpKx1QcACh6pU/ftJ5f5Iprg4h3In0RXj6pfSv7XuE\nsjMWFLVKYGaJUCld4XdtCEU5NgOruq13vNnUdyDvR7M/mOhMRa6Q8XcMboNr\nyhMaBHsBIhPSW/RPfr0dfyQpZlElwu6S/01UVbzdrNdC7U8nEqZRkriGkDai\nFT9Z9JGMIW8TBiYHDQXbUApGeuQIKTFMqISVX8hR/MXLAxAfTwj92uja+cHX\nrvvQqxPkHXHA2ewcRZcCQs8P8uSt004NVIjwBrRMMBJSD45x/+wmnxjMNk0y\niAZE\r\n=b+Ox\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA8PpqjJIwtT03bO8q9TEdRtzQ1qG5XBUk4mtggpCEVLAiEAr0VWHhJYF2FWvAQikgjq+U6NCg5ZS7XkHL95z7NbxAk="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.4_1619178855510_0.8233825931448693"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.5":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.5","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"8808cdf3e7e8bc83bed2f72c6fae6808a496816c","_id":"@ailivingtech/wxinlineplayer_iov@1.0.5","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-QP/AI9aTVOTstSC6p1zh3i0r7fKZujSBlpWdAzBNZF9e6gu1jPbjZ1aSuLAlwnyFhokeDK5Jn/opQ5UmLG79uQ==","shasum":"3237cfe9e4c3e944baa08290b84304497e7e0510","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.5.tgz","fileCount":32,"unpackedSize":4863360,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiSodCRA9TVsSAnZWagAAj/sP/jy9B5++A3kOTpT7gRc2\nx54PNWiJuKZheCZE+4dMT2lZpkL83qzVz/8zqP/dv0VcNiUYkrKhwYL6mWGM\nV5ajC4qI7g+WZ1M6eTMQIIXCxS8mvV1hamO4Uz4Bwa+IQPH3logsny45ixEm\nzcGHa8WkAiZMXMNZDYrc+t1pPI5n420HwzSomNH+VjJTmv2vbDn1FOz+Oa15\nirTiekenZ48Xe52ntHneKQ1+0NugeFjIGh2I42jrD2LLBNYkydFKurTXPX4s\nNHGGTOaQXHbeCY/7YPUs7QxwmMDG1uxoB/pXYHrcXnnIkKz2bla6Px5/yXJ2\nBl3bCEowrTJoJZEYqa6HkXoKudcbJhTPncRSnu0tPOBh4bdLIOX3b/28OnTN\nilv2EenCjdlvEvR3tjIp8V18wAWXf2W/WY2gUF25uLIp39W+s2CjKf6heZwi\njOxdMVva+096K+rhg0AQPULf1qwexp8DEThU8XZyeluQ7qI99ekRKrp7rzOv\nwL7HI8Vdq3Z0AXCOMG2MLqXDoznCDtnSPQQWNraOCzH783MPQl3miBuMzkt0\n4zykd60GtGNCLkdcfwrJXhNzB8eS5EhVXV3X3T8A/9hfNDB1O5WC05qDOuwI\nvi4UCKJhYQx1Cge/rmxNXeIcFLaZid8792KwG6QAd0L0a4RLOyLZa6xMsBwd\n/l2t\r\n=ti3H\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH6nFjDT3i7cXOXrxZIkjBbS+yJFrYflmIBB4AI8SbSIAiEAqCj0i5bztL8uqOuPS7xX9LoZ5RvbfQbGzTJxpPzJLuY="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.5_1619601948353_0.39871334434399275"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.6":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.6","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"094de0f6421e8c7fc1c0a14ed7c3b046dba64f83","_id":"@ailivingtech/wxinlineplayer_iov@1.0.6","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-AHGe8C2CW/Pp4YeZaKqWNFyi+JMBIQoswuWQtq6Sr8xuzHsfazROpobhVk3paozWD6y34f5ZRwvvYPtHiTMXbA==","shasum":"1b7a3f1c310b22602647314c156e726332dcbf21","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.6.tgz","fileCount":32,"unpackedSize":4863613,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgipf1CRA9TVsSAnZWagAAVJQP/j3ZP5aI++JUaNhtjNAl\nZhYp3K0fn5o2acSo2az0tNfz7MovH53oGn3FESQ5RmcHW+UsM5fhhIIw1KoS\nEbyzA1GJEfNXEol3skBdHgWzqFktURA3AaW3Ux4Xo4AXyc/iXXTaknjmA9P/\nCnBEhM3hLp6snUDLMpnelMi6pj28XfoACQg5oDraOGvnf306lfDdaFcLCJS7\n4WBsmWNxYrBItGlvL+5Hn6cGMmsauIvBzJuMu4fzC8b0tHCjlOaeDYWULyrp\nL8YsItBuaahF6HqGJOVS8LcigdCZTCHn+5Ypy25LLbpIoqOnUb0mIG+TeA4p\nKvZDp+md4S62gaPiF8Munc0FfEp3oi3IHR566b20kBd02NbAS5gr01gTLvWo\nMLjXmO4wOr/oiftkFtldMLdm+I16Yke5spVMgiC7OAF0ztYSj5PtCiUKzjJJ\nTyLAxSVbYZa7t7Unjbr8BFByD4mPW037MUmusqEHHIOo11zkSpj5ck5WMcJu\nnXDNiEnJWEYSH8D496qzfRgr5aChvxGO6Hz5QKf8DGe13BKJhdaLzOhSnCGJ\nwprrTQkfPMR49+MbXWFALRiLv4AyP/ln68mEqAoOAZqM11jTyBtjEnM0rt9+\njklFP6QvhmSNNtw+4SKLxYOmm+wr3g3kTUSEDCf99sPkU9aCQ+f+wlat+2xs\nFlXL\r\n=42FN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDa2zUfkGCo/5EaDPWRcAXzAfimb1J6GEudfbAB1OKUPgIgYBkTcTDfawSfrg05KKsRt2oLc8hqFfWsNZ12qL7IMno="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.6_1619695604803_0.8778656810404895"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.7":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.7","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"6db609686db1cddde6f07f8970f66d4ca7b1b707","_id":"@ailivingtech/wxinlineplayer_iov@1.0.7","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-7DNag+E7EN5H/2Avxsnx6XMvZB53Iq8GiJaN13nj2p4A7Ae0SgHIoefGITDa3vfspup8VVKtKBNqnN2gyV7IVA==","shasum":"52d3a61fbb76bc776cc2daf1fa99a682d1ca5a88","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.7.tgz","fileCount":32,"unpackedSize":4863460,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgipqfCRA9TVsSAnZWagAApxMQAI1Q3emNCA6MP0gIbad9\n4uKHRLFKskJ03aM+C/JHgErYsgke+PVuc+LL21ZddSWd9mcwwGU4TBkoyw3t\npBWAgznomm6GzRV1t+SKVKH0aUdOAaNkiF6BWjMgcNGzwXqeX1X6XxHj0cWp\njk4N+d6+3nVF06uTAfzBxMq3BGBFRTNc/toWxxWQFbTEfNgK92TS/cmDp85w\n9aUIiBOtdJMql3QN/AKViX75+HVZiEGa/5SkzIwxZyVSpTg0CpVtpZee4uGa\n8Q3X5HUlKWm49qoutjzQkvSk1mdeX3sIUOiRrAeCUWeIoFUwmYSUlnn/Z70W\nOKiMWPa8WGDopmcIs9AJM/1VMrlLZaITVxbSYgqyftnYqbWL1ZT0kvjk0Lgg\nWVhi81rVUAOIjVNF1vMMY1RgDtStG5S9SxFxh+iPYLhTdSbLLz8iKJCeJgVi\nCiyFEHAiD0O2a6OUh6t+45cG7oGY1kIeKVPyJzJpFOV3wGNGrn7bH/dZGwXQ\nfg4WXo/TtxOQ5FlvNl1Ba9PxVMJM6/6BYomiu0+MoL6a9AAJfsxxNMIL5iy5\n6BSCm9c7S5ck+fCIZewu3fLo/z2MA8DQjwme3kgTl+wuJjetnaVYXPU5XfzY\n7wHxBfZ9kwPO1YzZ5XYNeJIs9duk/W+VW60F2w6QyOE9tABura/LMg/vnj81\n9Ln6\r\n=wgUR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEBQtd3qbnkX4Lqwl5f/OoGqtPbUnVRcVRtAZlkHqBRcAiBRUtFRHKoTr6jT+zNAvvqydhQdXoPPLZbpfvSS5J992g=="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.7_1619696286806_0.05743221769432916"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.8":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.0.8","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"17231e6621672b0c5c4c2afbeb4a7383ce3f6690","_id":"@ailivingtech/wxinlineplayer_iov@1.0.8","_nodeVersion":"14.16.1","_npmVersion":"7.10.0","dist":{"integrity":"sha512-vzmk+Q5ODxwfZUIGYJaJfxCg/bkfMaz0flpOevLKKgKaASihCGfeca9BvGqCCfuAHB+wItE19WWiNQLcWY88tA==","shasum":"e796ea00fd9b2605160406d302557903672cfcd9","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.0.8.tgz","fileCount":32,"unpackedSize":4863454,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi3meCRA9TVsSAnZWagAAhiEP/i2tWi/s2IA7u+dXuKng\nJ0IFpfO70ifqnYtFHEHtsJh48tFSBnmYejDlcP9YT3LL+qjNygFj1hNajz7a\n9a5OzG+qoee/Ygl5pBSrzGRCe10STTuZoS85Vcx2GzyF1JJPebxSPjwqWcFx\n1rplkKxMqelBqI6ScPzm5FfmzT4lmn4iET8PY50NGJ4Ebp1ATBNhzcre8jsX\nOxvyXDwUmo1lv3XknLhVBCCaMo4neqjNG2UZwr6BjnjlEUMDJsykfPKCgZjP\nJEP5sVVftuhfz5BOtgEaf7e72ClcG5AjH/bkEs3Illb3gZGD1Jpau4HaKS0k\nT0ZtIC9nmQX7WemQ9/vS0p0Oegf/B7t0hgXNjrnpATG4u1mzpTCetsgF+V7f\nzQQqT7hj8KA5esob8JWwyYz7uVAp+VYjevxQYa1A0S99gDwrhKavYcEH67jM\nooluhfzdF0QoMP7I6gRGltmFJRz+qH2ywJVf/lbQ9xUSfL++p0JT4DVtV5EI\ntvPy1o89KEMruHoBMs0mq/H6bCdWW8C/DX77yv0LySZ0+9KVtj9vassOP5Ey\nq9BtkrVKYFkRJDHicHuMJIzH4pAAyd5wi2bHHs0Jc1sZ1thoxOrUhGsVY0uh\naJqLXT/6vkVeb5CyvDfxCtvFMkXEbJazAQ+vn8WAwuAqoL/JwvvINk/uWXNT\ndPKR\r\n=Q/AX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAMivThONQBiqn5xtAdTmeva8S+FD7QLoJFI7OAv6W//AiAMN/Z/lWZnPYO9X0s/zBPX3uBAELslb11iGGEbQyErqg=="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.0.8_1619753373534_0.460054698624601"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.1.0","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"d99b5bf2a2bba34a1ae0df74796d0b4b6914d203","_id":"@ailivingtech/wxinlineplayer_iov@1.1.0","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-JjZlbzRR12x9Od2Kij04ow0CHFt+0zl4nB17I5Wz7u9Vk1gBcosCP2ao1gP7KJD6ud53tnNpeAAa/GIEBt9stA==","shasum":"8af3dd98b9686879232ffd56f12a26dae8bac2fe","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.1.0.tgz","fileCount":32,"unpackedSize":4863944,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp3ahCRA9TVsSAnZWagAA3PYP/iyKUSsYnqJulvEtPzMF\njjHVtdYnoFNsyzw88eBOY0yHzDxtlVkmvf83EjXqBe4VX2EL2AT7YcazlBFD\naux51txLEkr/bh2cIa75LL7s0stKjYc+GdXC8UZFeLOvFBgj4UN+40RrJEtA\nN3hErCro6On9vzKgKFpVzP3tqwee1xlyC8TxKskDBlJpEHJYh6mIJ3RjBgl4\noe+96ZBZ1u1fgKkaL/clbcyXKILjCHsorGNYCsHEM2wc0GkUcrRFHBvz2Ker\n38QU5nJlMfmCkhNMh3EJPL9zXfnZP7HqsfxV6k1jGri4gayykoxrGYsXDEkC\n8ixf+UMGCfBi7bP/+pMCvjfslxo+35i69SnUfRbWQMjr6ifU7cJSvQGdQHqx\n9wY61dRJwAauu/3UnmqWPh3i35WhcJZ1ALpbFOcFkrugt0jviMYWbp0ztAkz\nLvwH/+ecOgRJspWkeeWnebqYjlyTB4yzghvuEn3OIpDFEX4wu+4Z1DuyHGcQ\n07k/hu4cKYRsjMaPcYxUUN68VOBgPGPZD8J1Ro4/HoFMEjzUpawl6v/+J+2S\nKNqV8kY3fyIm7ZYT05niMIeLPoaqAxL/WqlgZE8uxKqIlJUPFO5tI6GbaRW/\nG8K1Ja7L6hGqctzH1ABMy/CiubE6X1w0IN/rzbEVxo7zd0XCUDsxMG7AHW96\nSKzV\r\n=TrME\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBNjpcQAgEAizFemIR9lrB0UYD28lcWjiCKMYg+0D6tzAiBEYh7UcbS3fh2XonkkVX/e8E8ArNg60VkPt6gPaw808w=="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.1.0_1621587616890_0.37991063540038095"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.1":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.1.1","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"6d6a4a0193d5a88b554ab27fe9e3a8748fb30a02","_id":"@ailivingtech/wxinlineplayer_iov@1.1.1","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-iAccpwjGhmTWnXzm5369FiqJKdZTu2uKRpJP8HaqmktY8BfS6cABQY6HLUU+ghHbcS4pUH6gkokhuCVIJMdk1g==","shasum":"fdbf9794c3ff4efb3c4e1ac8c2e1deae8b664d18","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.1.1.tgz","fileCount":32,"unpackedSize":4864838,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgraG5CRA9TVsSAnZWagAAPxcP/13JVIA9iuGTu5ri20kY\nJPoQXBP9iaxmx4B/LbQc9R+i1D78RO+6prS5yI6R/706a89mHRa32VaSA858\nWMgkSCWQtAlVrzIaiKZ3ez+U996gDEBhO9gEaak2nZVy5nHnaQ6UVJERPQuk\nuPm0WovtigUGdhWXsKIsB15IA8kpUX1kLOZaRE9Re+eG62AoRAcS8Z6YlVGu\n7u1+Zdwzvx1HGHDbF0Zay/2bHjAlW0Myipzw4cJgLuICILKNWCFwDMUsXat9\nYjGJuyk/4aRXrF4R0ACiNVRSr08tE41TmKXhtd6kJysZFBZlGo/Y1wHm4YBu\n6hxcdYIGEgOx7xq5V4fYmQL3GyMe9rSfOfV5gSZHiwrwAWoWvyVEZCJByFOZ\nS/QNp8um5nfI4LDmSlG+/N7A1iLx7RtkOWPrR3cmic0n9zZw929BeH39T6YQ\najcK5DnmYjjfKnDfQHZGoAGta5deFGUG5KfB+CoBDchOI1THrhCrlyZSJ+uA\n1AKxz45BdY87p5hcDE2pb25S5iFXtyT+qu4J8elLyXBXqR3ia94vSO71xgG4\nV0z9o7VXm157GJF4oWmtgntZHtdQ7sSYDyAhLAPB5ZHjRjYskKaqpSSIjXa/\nqXneyb1bl4X0ivIxv0EDhP1UCJxIYdZUqPX1CgG6zCILjXijnVrri2oEWykn\nnBxr\r\n=wVQ6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpHbzgWFf2/f26YpDC1N6iwoKROrItdtojhd+dyZYawgIhAPy825q8B2wTYLh0c2ZVRUD4BCtWlADsSDDdzxfDZg4D"}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.1.1_1621991864299_0.5397629165151492"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.2":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.1.2","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"fa2e943211892981a32f7eef750d5bea1c036b61","_id":"@ailivingtech/wxinlineplayer_iov@1.1.2","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-C/xuymUOzEmMKSR1yIV6qMkIy/eUeSiC07xSd+XNTWK96Vqxlv04uZzVR9dHxwJL7miCOH5Sho/VgFqxewvjNw==","shasum":"98ce949ac51e53f242cbe7e9395b3df6bf88fc15","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.1.2.tgz","fileCount":32,"unpackedSize":4864805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrjw5CRA9TVsSAnZWagAA2iQP/0dZafuxyhrn2GbZdRlC\nj0PtWU//CA7Qo4lIp7w2LKvuKFfRpIYGP+jMM1PquzMWGTccTfi3Ssi4DsQJ\nND4v3XsPx3ectJLgbvaO0O5In183OtnZEZlq7HvU2w2RwdIgCPSxpAS1YbJo\nCbKDE9IwtbCoxW14Hc/xoR0ROadnT8++2kJf6a7fPnJBBdlJBnaXJVPcUiMT\n+p+aSuSRAW1gDKWf66fzKt/cFYzWYhkGxbhQKsEr62YSDbY5hNXyt/R28jrt\n8ZCoAUi/6YlHeHdqI46uZc70QiUY6QzYvdMKOzfmc8ENNy+UqBB1OMhjc0g8\nxvQ7gOOMRh0ckvEUknS+NLN4Ga4ly/d8yIr0YC1NCxOj9IRBMdgF5mwhDDKH\neivibymHqbkeCM9LTAQSDUw8bbc+/pnrkfctEM3pG5VJQ2KTJxNFzJf7PYK1\nDcTAIYViZkNVv3VfT5Y5Lb3sssLHTKxgKtJkddSQqxYQMDNp60mLTgQeV8d6\nfMTgt8m+snCMUq5QQcyKEzBKm2GKEfY2PdjFHiA2Z/UxBRx3Xfu5xA5axXiK\ng8UIuz3+KbSGe5eLBbNBPSV6krZs+XWDMtjeGUcd/BRjJdQSs0IiOLpIL4Lc\nAQZyUENX+VP73OUTyuveCMrYY38PDFPg0L/PFSQLsDXq1g2UH4H81vsdNlZP\nLByi\r\n=CBwP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC/RYg+ovM4aRDm/MZVKbhorCa1AcakLhJAMGA+KiCVKAiEArELyTeKcVXpl8Y4z7d1JpGzU9iwXAFpVjyGeP1SUf38="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.1.2_1622031416574_0.6171657069259784"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.2.0":{"name":"@ailivingtech/wxinlineplayer_iov","version":"1.2.0","description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","main":"index.js","author":{"name":"ailivingtech"},"license":"MIT","scripts":{"serve":"node server.js","start":"node server.js"},"dependencies":{"buffer":"^5.2.1","eventemitter3":"^3.1.0","express":"^4.17.1","inherits":"^2.0.4","mobile-detect":"^1.4.3","object-assign":"^4.1.1","promise-polyfill":"^8.1.3"},"devDependencies":{"@babel/core":"^7.11.5","@babel/plugin-proposal-class-properties":"^7.10.4","@babel/plugin-transform-arrow-functions":"^7.10.4","@babel/plugin-transform-block-scoping":"^7.11.1","@babel/plugin-transform-classes":"^7.10.4","@babel/plugin-transform-destructuring":"^7.10.4","@babel/plugin-transform-object-assign":"^7.10.4","@babel/plugin-transform-parameters":"^7.10.5","@babel/plugin-transform-template-literals":"^7.10.5","@babel/polyfill":"^7.10.4","@babel/preset-env":"^7.11.5","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-runtime":"^6.23.0","node-fetch":"^2.6.1","uglify-js":"^3.10.1"},"gitHead":"81cf49ac7a35ac09f4ab9b19b394a34001dec46c","_id":"@ailivingtech/wxinlineplayer_iov@1.2.0","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-NeDcNZnWkFeNhYO3XJTUfQVNWwi23DUgeAmngQ17K7qNpwPD0WQVfzo6wVaDkLorUEIIzyvF0qy9wGhLaN0BkQ==","shasum":"55255d9b6f640a99ffc470d501794b6908a56e6d","tarball":"https://registry.npmjs.org/@ailivingtech/wxinlineplayer_iov/-/wxinlineplayer_iov-1.2.0.tgz","fileCount":32,"unpackedSize":4863731,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1wGoCRA9TVsSAnZWagAAqm4P/RPY+CFnskiCQW6jlCyS\njbzwFeuqO6dtGWaQkrmU8Zzs7Q5q8+zmFZTzbO31UlevP06QYCwAJcUhX7dF\n9X9A3iQiLj/Ln+/Zk1Qs0j9mVHxM+s1jtjPX9yqGVzobEr0tVAL5hVYJtKVc\nrEfOn2GyF1sfH5wrHrHK29tDp8ry4JuapllOWMN6idCRJFBOuZYW/ethD53/\nTUDJknI7FJnWczPAV2N1QReJqHN8vYnh+HXBHNDz4b2jrueLbiscqK+BHhQn\n5lfwn6iKK4E3eMpLtpKIkx6cv1ci8yQK09Gx2H92BgLkLQjYZJAIjHjKidy5\n8vShsIhJqLPpZKIbXnU7tSaRIpLLeC/dm2B0w0VJOpA88mVG81klpG749kJt\n7R9cmEyEY1T0PaP2PmNQy40WyRWZ3BRwyUjenSk0hYvEngJ3nZzk1TXArobG\n/ctDjvREJhhm7ZWKVXKxDm3IRcfSOZzdObvd0ZmCtuLeHysKh+RPqvXN2/+4\nJsI85oV2WJTjnZ3bncGyQG64/XT1q6E+sF78odg37Ygo4pGa0EAO8sM6g7+Y\nmtifqxmdMDOHdczNXCenyYGfVWWNngaZKWra8q2JmUziAtAfIRgioW+pukjx\nX5E1xb2iadFSt9fV+ufmri3g3C+B3+uruq0d3+gCp4vXqImAZj/NoOvVZISP\nQitN\r\n=SeLX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICOkYCKV5EV/+HYP36AOsiyisVWilMzxZep5q222D+LXAiBJkcEVIMkmQFSjKZKdRD2MK4ONPG6eoqibqVEh65iXmg=="}]},"_npmUser":{"name":"ailivingtech","email":"yun.li@ailivingtech.com"},"directories":{},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/wxinlineplayer_iov_1.2.0_1623746165547_0.22306370003363596"},"_hasShrinkwrap":false,"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2021-04-21T12:06:45.281Z","1.0.0":"2021-04-21T12:06:45.545Z","modified":"2022-04-04T12:18:25.710Z","1.0.1":"2021-04-22T02:12:10.305Z","1.0.2":"2021-04-23T11:27:06.260Z","1.0.3":"2021-04-23T11:46:14.966Z","1.0.4":"2021-04-23T11:54:15.752Z","1.0.5":"2021-04-28T09:25:48.539Z","1.0.6":"2021-04-29T11:26:45.075Z","1.0.7":"2021-04-29T11:38:07.019Z","1.0.8":"2021-04-30T03:29:33.914Z","1.1.0":"2021-05-21T09:00:17.173Z","1.1.1":"2021-05-26T01:17:44.633Z","1.1.2":"2021-05-26T12:16:56.810Z","1.2.0":"2021-06-15T08:36:05.829Z"},"maintainers":[{"name":"ailivingtech","email":"yun.li@ailivingtech.com"}],"description":"fork from git@github.com:coffe1891/WXInlinePlayer.git","author":{"name":"ailivingtech"},"license":"MIT","readme":"![LOGO](./images/logo.png)\r\n------------------\r\n[![LICENSE](https://img.shields.io/badge/license-Anti%20996-blue.svg)](https://github.com/996icu/996.ICU/blob/master/LICENSE)\r\n[![996.icu](https://img.shields.io/badge/link-996.icu-red.svg)](https://996.icu)\r\n\r\n* [简介](https://github.com/qiaozi-tech/WXInlinePlayer#%E7%AE%80%E4%BB%8B)\r\n* [特性](https://github.com/qiaozi-tech/WXInlinePlayer#%E7%89%B9%E6%80%A7)\r\n* [兼容性](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%85%BC%E5%AE%B9%E6%80%A7)\r\n* [示例](https://github.com/qiaozi-tech/WXInlinePlayer#%E7%A4%BA%E4%BE%8B)\r\n* [如何编译](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%A6%82%E4%BD%95%E7%BC%96%E8%AF%91)\r\n* [快速开始](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B)\r\n* [API](https://github.com/qiaozi-tech/WXInlinePlayer#api)\r\n* [事件](https://github.com/qiaozi-tech/WXInlinePlayer#%E4%BA%8B%E4%BB%B6)\r\n* [初始化参数](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%88%9D%E5%A7%8B%E5%8C%96%E5%8F%82%E6%95%B0)\r\n* [如何选择解码依赖](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%A6%82%E4%BD%95%E9%80%89%E6%8B%A9%E8%A7%A3%E7%A0%81%E4%BE%9D%E8%B5%96)\r\n* [如何降低卡顿和延迟](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%A6%82%E4%BD%95%E9%99%8D%E4%BD%8E%E5%8D%A1%E9%A1%BF%E5%92%8C%E5%BB%B6%E8%BF%9F)\r\n* [性能比较](https://github.com/qiaozi-tech/WXInlinePlayer/blob/master/README.md#%E6%80%A7%E8%83%BD%E6%AF%94%E8%BE%83)\r\n* [其他问题](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%85%B6%E4%BB%96%E9%97%AE%E9%A2%98)\r\n* [项目计划](https://github.com/qiaozi-tech/WXInlinePlayer#%E9%A1%B9%E7%9B%AE%E8%AE%A1%E5%88%92)\r\n* [已知使用的产品](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%B7%B2%E7%9F%A5%E4%BD%BF%E7%94%A8%E7%9A%84%E4%BA%A7%E5%93%81)\r\n* [QQ技术支持群](https://github.com/qiaozi-tech/WXInlinePlayer#qq%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81%E7%BE%A4)\r\n* [项目捐助](https://github.com/qiaozi-tech/WXInlinePlayer#%E9%A1%B9%E7%9B%AE%E6%8D%90%E8%B5%A0)\r\n\r\n## 简介\r\n\r\n随着直播和短视频的兴起，视频由于承担了更大的信息量，因此现在已经是非常主流的运营/产品信息输出方式。但由于国内各个浏览器厂商自身的利益关系所在，他们对HTML5的Video能力做了非常多的限制，不限于：\r\n1. 禁止自动播放\r\n2. 播放器魔改为原生播放器，层级最高，不可进行HTML相关元素层叠\r\n3. 播放前后硬插广告内容\r\n4. 视频自动置顶\r\n5. 相关API和事件实现不统一\r\n6. ......\r\n\r\n其具体问题可以参考腾讯IMWeb团队编写的[《复杂帧动画之移动端Video采坑实现》](https://juejin.im/post/5d513623e51d453b72147600)。\r\n\r\n为了解决这些问题，我们通过软解FLV的方式实现了WXInlinePlayer，其用的第三方技术和平台API如下：\r\n1. [OpenH264](https://github.com/cisco/openh264)/[TinyH264](https://github.com/udevbe/tinyh264)/[de265](https://github.com/strukturag/libde265)；\r\n2. [emscripten](https://github.com/emscripten-core/emscripten)\r\n3. [WebGL](https://developer.mozilla.org/zh-CN/docs/Web/API/WebGL_API)\r\n4. [Web Audio Api](https://developer.mozilla.org/zh-CN/docs/Web/API/Web_Audio_API)\r\n\r\n同时我们也编写了WebAssembly版本的FLV Demuxer，你可以在[lib/codec](https://github.com/qiaozi-tech/WXInlinePlayer/tree/master/lib/codec)找到相关代码。\r\n\r\n## 特性\r\n\r\n1. FLV  H264/H265 点播/直播全支持\r\n2. 自由选择解码依赖，在实际gzip中，Tinyh264只需 ~180k，OpenH264 ~260k，de265 ~210k （[如何选择解码依赖](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%A6%82%E4%BD%95%E9%80%89%E6%8B%A9%E8%A7%A3%E7%A0%81%E4%BE%9D%E8%B5%96)）\r\n3. 专为移动端性能优化，内存和CPU占用稳定\r\n4. 直播延迟优化，比MSE的原生Video实现低1-2s（[如何降低卡顿和延迟](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%A6%82%E4%BD%95%E9%99%8D%E4%BD%8E%E5%8D%A1%E9%A1%BF%E5%92%8C%E5%BB%B6%E8%BF%9F)）\r\n5. 音频/视频独立支持\r\n6. 微信WebView自动播放\r\n7. 无音频动画自动播放\r\n8. 良好的移动端WebView兼容性\r\n\r\n## 兼容性\r\n兼容测试使用BrowserStack服务提供的相关机型，仅供参考：\r\n* Android 5+\r\n* iOS 10+ （含Safari及WebView）\r\n* Chrome 25+\r\n* Firefox 57+\r\n* Edge 15+\r\n* Safari 10.1+\r\n\r\n## 示例\r\n> https://qiaozi-tech.github.io/WXInlinePlayer/example/index.html\r\n\r\n## 如何编译\r\n\r\n请确保你安装过[parcel](https://parceljs.org/) / [emscripten 1.38.45](https://github.com/emscripten-core/emscripten) / [cmake](https://cmake.org/) 以及 [make](http://www.gnu.org/software/make/)，然后执行以下命令即可：\r\n```shell\r\nnpm install # 初始化工程\r\nnpm update # 更新工程有关的插件。如果网络错误，改用 cnpm update\r\nbash build.sh\r\n```\r\n最终产物会在example文件夹中。\r\n\r\n> 请注意：\r\n> * 请在*nix环境下进行build，并不保证Windows下的OpenH264的编译\r\n> * 请确保emscripten在1.38.45版本，否则会出现wasm32错误\r\n\r\n## 快速开始\r\n```html\r\n<!DOCTYPE html>\r\n<html>\r\n<head>\r\n  <meta charset=\"UTF-8\" />\r\n  <title>WXInlinePlayer</title>\r\n  <style>\r\n    * {\r\n      margin: 0;\r\n      padding: 0;\r\n    }\r\n\r\n    html,\r\n    body {\r\n      width: 100%;\r\n      height: 100%;\r\n    }\r\n  </style>\r\n</head>\r\n<body>\r\n  <canvas id=\"container\" width=\"800\" height=\"450\"></canvas>\r\n  <script src=\"./index.js\"></script>\r\n  <script>\r\n    if (WXInlinePlayer.isSupport()) {\r\n      WXInlinePlayer.init({\r\n        asmUrl: './prod.baseline.asm.combine.js',\r\n        wasmUrl: './prod.baseline.wasm.combine.js'\r\n      });\r\n\r\n      WXInlinePlayer.ready().then(() => {\r\n        const player = new WXInlinePlayer({\r\n          url: 'https://static.petera.cn/mm.flv',\r\n          $container: document.getElementById('container'),\r\n          hasVideo: true,\r\n          hasAudio: true,\r\n          volume: 1.0,\r\n          muted: false,\r\n          autoplay: true,\r\n          loop: true,\r\n          isLive: false,\r\n          chunkSize: 128 * 1024,\r\n          preloadTime: 5e2,\r\n          bufferingTime: 1e3,\r\n          cacheSegmentCount: 64,\r\n          customLoader: null\r\n        });\r\n\r\n        const { userAgent } = navigator;\r\n        const isWeChat = /MicroMessenger/i.test(userAgent);\r\n        if (!isWeChat) {\r\n          alert('click to play!');\r\n          document.body.addEventListener('click', () => {\r\n            player.play();\r\n          });\r\n        }\r\n      });\r\n    }\r\n  </script>\r\n</body>\r\n</html>\r\n```\r\n\r\n然后在工程根目录,输入命令启动server:\r\n```shell\r\nnpm run serve\r\n```\r\n然后输入网址访问demo:\r\n```\r\nhttp://localhost:8888/example/index.html\r\n```\r\n\r\n## API\r\n\r\n### Boolean WXInlinePlayer.isSupport(void)\r\n\r\n当前执行环境是否支持WXInlinePlayer。\r\n```javascript\r\nif(WXInlinePlayer.isSupport()){\r\n  console.log('WXInlinePlayer support');\r\n}\r\n```\r\n\r\n### Promise WXInlinePlayer.init(Object)\r\n\r\n初始化WXInlinePlayer，需要传入加载的H264解码库的具体地址，关于解码库的选择，请参考：[如何选择解码依赖](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%A6%82%E4%BD%95%E9%80%89%E6%8B%A9%E8%A7%A3%E7%A0%81%E4%BE%9D%E8%B5%96)。\r\n```javascript\r\nif(WXInlinePlayer.isSupport()){\r\n  WXInlinePlayer.init({\r\n    asmUrl: './prod.baseline.asm.combine.js',\r\n    wasmUrl: './prod.baseline.wasm.combine.js'\r\n  }).catch(e=>{\r\n    console.log(`WXInlinePlayer init error: ${e}`);\r\n  });\r\n}\r\n```\r\n\r\n### Promise WXInlinePlayer.ready(void)\r\n\r\nWXInlinePlayer已经准备就绪，可以安全的进行初始化操作。\r\n\r\n```javascript\r\nif(WXInlinePlayer.isSupport()){\r\n  WXInlinePlayer.init({/*.....*/});\r\n  WXInlinePlayer.ready().then(()=>{\r\n    console.log('WXInlinePlayer ready');\r\n  });\r\n}\r\n```\r\n\r\n### WXInlinePlayerInstance WXInlinePlayer(Object)\r\n\r\nWXInlinePlayer构造函数，相关初始化参数请参考：[初始化参数](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%88%9D%E5%A7%8B%E5%8C%96%E5%8F%82%E6%95%B0)。\r\n\r\n```javascript\r\nWXInlinePlayer.ready().then(()=>{\r\n  const player = new WXInlinePlayer({/*...*/});\r\n});\r\n```\r\n\r\n### void WXInlinePlayerInstance.play(void)\r\n\r\n进行视频播放。需要注意的是由于浏览器限制（不包含微信及Chrome 66版本以下），高版本已经禁用了音频自动播放，因此直接调用此方法可能并不会有作用，请在click/touchstart/touchend/touchmove等事件中让用户主动触发。\r\n\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\ndocument.body.addEventListener('click', ()=>{\r\n  player.play();\r\n});\r\n```\r\n\r\n### void WXInlinePlayerInstance.stop(void)\r\n\r\n停止整个播放器，不可被恢复(resume)。\r\n\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\nplayer.stop();\r\n```\r\n\r\n### void WXInlinePlayerInstance.pause(void)\r\n\r\n暂停当前播放。\r\n\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\nplayer.pause();\r\n```\r\n\r\n### void WXInlinePlayerInstance.resume(void)\r\n\r\n恢复由pause引起的暂停操作。\r\n\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\nplayer.resume();\r\n```\r\n\r\n### Number|void WXInlinePlayerInstance.volume(Number|void)\r\n\r\n获取/设置当前音量。\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\nconst volume = player.volume(); // get volume\r\nplayer.volume(volume); // set volume\r\n```\r\n\r\n### Boolean|void WXInlinePlayerInstance.mute(Boolean|void)\r\n\r\n获取/设置静音状态。\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\nconst muted = player.mute(); // get mute\r\nplayer.mute(muted); // set mute\r\n```\r\n\r\n### void WXInlinePlayerInstance.destroy(void)\r\n\r\n销毁播放器，释放所有内存等待回收。\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\nplayer.destroy();\r\n```\r\n\r\n### Number WXInlinePlayerInstance.getCurrentTime(void)\r\n\r\n获取当前播放时间，请注意，可能出现负值的情况请注意处理。\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\nplayer.on('timeUpdate', ()=>{\r\n  let currentTime = player.getCurrentTime();\r\n  currentTime = currentTime <= 0 ? 0 : currentTime;\r\n});\r\n```\r\n\r\n### Number WXInlinePlayerInstance.getAvaiableDuration(void)\r\n\r\n可播放时长，可理解为缓冲的时长。\r\n```javascript\r\nconst player = new WXInlinePlayer({/*...*/});\r\nplayer.on('timeUpdate', ()=>{\r\n  const duration = player.getAvaiableDuration();\r\n});\r\n```\r\n\r\n## 事件\r\n\r\n* mediaInfo(Object) - 视频相关信息，例如width/height/fps/framerate等\r\n* playing(void) - 开始/正在播放\r\n* buffering(void) - 内部帧数据不足，开始缓冲\r\n* stopped(void) - 停止播放\r\n* end(void) - 播放结束\r\n* timeUpdate(currentTime:Number) - 当前播放的进度，250ms进行一次触发\r\n* loadError({status:Number, statusText:String, detail:Object}) - 加载失败\r\n* loadSuccess(void) - 加载成功\r\n* performance({averageDecodeCost:Number, averageUnitDuration:Number}) - 编码性能检测事件，averageDecodeCost代表平均的解码消耗的时长，averageUnitDuration代表在averageDecodeCost下解码得到的可播放单元时长\r\n\r\n## 初始化参数\r\n```javascript\r\n{\r\n  url: String, // 播放地址，仅支持flv\r\n  $container: DomElement, // 绘制的canvas对象\r\n  hasVideo: Boolean, // 是否含有视频，默认true\r\n  hasAudio: Boolean, // 是否含有音频，默认true\r\n  volume: Number, // 音量，范围0~1，默认1.0\r\n  muted: Boolean, // 是否静音，默认false\r\n  autoplay: Boolean, // 是否自动播放，微信WebView/无音频视频设置此参数有效\r\n  loop: Boolean, // 循环播放，默认false，请注意处理Safari及其WebView（不包含微信）每次播放都需要人主动触发的限制\r\n  isLive: Boolean, // 是否是直播流，默认false\r\n  chunkSize: Number, // 加载/解析块大小，默认256 * 1024\r\n  preloadTime: Number, // 预加载时间，默认1000ms\r\n  bufferingTime: Number, // 缓冲时间，默认3000ms\r\n  cacheSegmentCount: Number, // 内部最大的缓存帧数量，默认256\r\n  customLoader: LoaderImpl, // 自定义loader，请参考src/loader/chunk(stream)代码\r\n}\r\n```\r\n\r\n## 如何选择解码依赖\r\n\r\n目前有3套解码库，分别是：\r\n* prod.baseline.asm.combine / prod.baseline.wasm.combine\r\n* prod.all.asm.combine / prod.all.wasm.combine\r\n* prod.h265.asm.combine / prod.h265.wasm.combine\r\n\r\n其区别在于：\r\n1. baseline文件大小更小（gzip后相比all小80k），但是只支持baseline的profile\r\n2. all的profile支持更完整（baseline/main/high），并且性能相比于baseline更好\r\n2. h265主要支持h265的flv流，此实现拓展了FLV格式，参考了金山的拓展要求，如有此需求请参考[金山的FLV拓展规范](https://github.com/ksvc/FFmpeg/wiki)\r\n\r\n我们推荐当你播放广告视频/营销视频/小动画视频等对依赖库大小敏感的时候使用baseline.asm/baseline.wasm，而在播放点播视频/直播视频时等对依赖库大小不敏感的时候使用all.asm/all.wasm。\r\n\r\n## 性能比较\r\n在开发本机上，针对同一视频，WXInlinePlayer与手淘、花椒等FFMpeg实现在内存占用和CPU占用上相差不大，WXInlinePlayer性能整体较FFMpeg方案好5-10%左右，而H265由于减少的deblock，其性能相比于FFMpeg方案好30%左右，以下为H265的播放性能对比：\r\n\r\n![性能比较](./images/benchmark.png)\r\n\r\n## 如何降低卡顿和延迟\r\n\r\nWXInlinePlayer的卡顿和延迟主要来自于3个地方：\r\n* 网络加载的延迟\r\n* 软解码的延迟\r\n* 渲染的延迟\r\n\r\n一般来说，如果在用户网络环境较好的情况下，渲染由于使用了WebGL，很难造成瓶颈（操作很单一），其中一般会因为软解码性能不足造成不停卡顿及延迟。\r\n\r\n优化因为软解码性能不足造成的延迟，我们一般从几个地方着手：\r\n1. 视频的profile：相比于main/high而言，baseline不包含B帧，解码消耗更低\r\n2. 视频帧率：过高的帧率会造成软解码跟不上，可以试着降低帧率，例如24fps\r\n3. 视频码率：码率越高，视频富含的细节越多，也越清晰，但是会消耗更多的解码性能，可以试着降低码率\r\n4. 视频分辨率：过高的视频会造成单帧传递的数量极大\r\n\r\n目前WXInlinePlayer在中高端机上解1280x720，码率1024，帧率24fps的视频比较流畅。\r\n\r\n关于以上提到的视频参数你可以通过FFmpeg查看：\r\n```shell\r\nffmpeg -i \"your.flv\"\r\n```\r\n\r\n在这里我们给出主流平台的profile/帧率/码率/分辨率供参考：\r\n\r\n平台 | 类型 | 清晰度 | profile | 帧率 | 码率 | 分辨率\r\n -|-|-|-|-|-|-\r\n虎牙|横屏|标清|High|24|500k|800x450\r\n虎牙|横屏|高清|High|24|1200k|1280x720\r\n虎牙|竖屏|高清|Main|16|1280k|540x960\r\n奇秀|竖屏|标清|High|15|307k|204x360\r\n奇秀|竖屏|高清|High|15|512k|304x540\r\n奇秀|竖屏|超清|Baseline|15|1440k|720x1280\r\n抖音|竖屏|默认|High|30|1600k（变化较多，仅供参考）|720x1280\r\n快手|竖屏|默认|High|25|2880k（变化较多，仅供参考）|720x1280\r\n\r\n我们建议你：\r\n1. 如果你想能够覆盖更多的机型，那么奇秀标清或是高清的配置适合你\r\n2. 如果你想只支持Android中高端机和iPhone6+，那么虎牙高清的配置适合你\r\n\r\nWXInlinePlayer的我们常用的低延迟配置参数如下，仅供参考，实际请根据你的直播流/点播文件配置调整：\r\n```javascript\r\n{\r\n  chunkSize: 128 * 1024,\r\n  preloadTime: 5e2,\r\n  bufferingTime: 1e3,\r\n  cacheSegmentCount: 64,\r\n}\r\n```\r\n\r\n同时，你可以使用**performance事件**来判断当前的解码性能，然后提示用户并降级到你的后备方案（例如直接video播放/静态图/序列帧等）：\r\n```javascript\r\nplayer.on('performance', ({averageDecodeCost, averageUnitDuration})=>{\r\n  const prop = averageUnitDuration / averageDecodeCost;\r\n  if(prop >= 2.0){\r\n    console.log('good performance');\r\n  }else if(prop < 2.0 && prop >= 1.0){\r\n    console.log('ok, thats fine');\r\n  }else{\r\n    console.log('bad performance');\r\n  }\r\n});\r\n```\r\n\r\n## 其他问题\r\n* *为什么不对FFmpeg精简后emscripten编译？*\r\n\r\nFFmpeg方案目前有几个比较大的问题，第一个是解码库的大小，精简后2M左右，gzip大约600k，这对于在意依赖库大小的产品是不可接受的。其次FFmpeg的方案难以被自己优化，比如WXInlinePlayer在2.0时会做多Worker的解码，这对于此类方案的修改成本是非常大的。\r\n\r\n* *为什么有些机器播放点播/直播会频繁卡顿，如何解决？*\r\n\r\n卡顿和延迟的原因比较复杂，对于WXInlinePlayer来说一般情况是解码速度跟不上播放速度，请参考[如何降低卡顿和延迟](https://github.com/qiaozi-tech/WXInlinePlayer#%E5%A6%82%E4%BD%95%E9%99%8D%E4%BD%8E%E5%8D%A1%E9%A1%BF%E5%92%8C%E5%BB%B6%E8%BF%9F)进行优化。\r\n\r\n* *为什么不对UC浏览器（iOS/Android）进行支持？*\r\n\r\nUC不管是iOS还是Android都对WebAssembly/ASM.js进行了阉割，因此索性不支持了。\r\n\r\n* *如何将现有视频文件转换成WXInlinePlayer可播放的文件？*\r\n\r\n请使用FFmpeg或是其他类似的工具，这里给出一个简单的命令示例：\r\n```shell\r\nffmpeg -i \"your.mp4\" -vcodec libx264 -acodec aac out.flv\r\n```\r\n\r\n* *如何编码H265的FLV？*\r\n\r\nWXInlinePlayer的FLV规范遵循[金山的FLV拓展规范](https://github.com/ksvc/FFmpeg/wiki)，如果需要进行相关的编码，可以参考其相关的[FFmpeg patch](https://github.com/ksvc/FFmpeg/wiki/instructions)或者[金山编写的编码器](https://github.com/ksvc/ks265codec)。\r\n\r\n## 项目计划\r\n* <del>V1.1 支持HTTP-FLV及流式解码</del>\r\n* <del>V1.1 支持音视频独立播放</del>\r\n* <del>V1.2 降低直播流延迟</del>\r\n* <del>V1.3 增加H265支持</del>\r\n* V1.4\r\n   * 增加首帧逻辑\r\n   * 重构解码器，精确缓存帧数据\r\n   * <del>SharedArrayBuffer支持，减少内存占用和CPU的拷贝性能消耗</del>\r\n* V1.5\r\n   * 增加poster参数\r\n   * 增加OffscreenCanvas的支持，提升性能和减少内存占用（Chrome 69+）\r\n   * 提供默认的播放器UI\r\n* V1.7 新增H265的SIMD支持\r\n* V1.8 新增H264的SIMD支持\r\n* V1.9 支持多Worker的GOP并行解码，提升软解性能\r\n* V1.10 支持FLV Seek操作\r\n\r\n## 已知使用的产品\r\n\r\n* [好惠买](http://h5.haohuimai1.com/)\r\n* [兔几直播](https://www.tuji.com/)\r\n* 各个安防厂商\r\n\r\n## QQ技术支持群\r\n![QQ群](./images/qq.jpeg \"QQ群\")\r\n\r\n## 项目捐赠\r\n![微信支付](./images/wepay.png \"微信支付\")  ![支付宝](./images/alipay.png \"支付宝\")\r\n","readmeFilename":"README.md"}