mirror of
https://github.com/PhotonVision/photonvision
synced 2026-06-22 01:11:40 +00:00
* WIP adding second websocket handling for cameras * just more WIP * even more wip. Most java-side framework completed, but not yet debugged * IT LIVES. Still needs lots of cleanup. But we're transferring and displaying data! * moved down an architecture layer. Improved multiple-camera handling * Additional WIP to help improve smoothness and performance, though not yet tested * bugfixes galore * tweak compression * spotless * more tweaks for handling slow/intermittent streams * wpilibformat maybe? * clang-format maybe? * WIP - adding thinclient. I don't like it yet, it should be more auto-generated than it is. * thinclient formatting fixups * Reduced amount of empty send data by limiting to only one stream per client (which is all we really need). Framerate is up slightly, overhead is down. * bugfixes, faster streaming, better mjpeg compression settings, thinclient working * spotless and formatting * cmon wpiformat.... * re-added mjpg streams * added a loading GIF to imporve the feeling of responsiveness * formatting * urlparams and built-in thinclient * wpiformat * prevent wpiformat complaints * Removed uint8 array and base64 conversion from client side * Synced up js implementations for ws streaming * formatting/spotless
43 lines
1.1 KiB
JavaScript
43 lines
1.1 KiB
JavaScript
import Vue from 'vue'
|
|
import App from './App.vue'
|
|
import router from './router'
|
|
import store from './store/index'
|
|
import vuetify from './plugins/vuetify';
|
|
import msgPack from 'msgpack5';
|
|
import axios from 'axios';
|
|
import VueAxios from "vue-axios";
|
|
|
|
Vue.config.productionTip = false;
|
|
|
|
if (process.env.NODE_ENV === "production") {
|
|
Vue.prototype.$address = location.host;
|
|
} else if (process.env.NODE_ENV === "development") {
|
|
Vue.prototype.$address = location.hostname + ":5800";
|
|
}
|
|
|
|
const wsDataURL = '//' + Vue.prototype.$address + '/websocket_data';
|
|
|
|
import VueNativeSock from 'vue-native-websocket';
|
|
|
|
Vue.use(VueNativeSock, wsDataURL, {
|
|
reconnection: true,
|
|
reconnectionDelay: 100,
|
|
connectManually: true,
|
|
format: "arraybuffer",
|
|
});
|
|
Vue.use(VueAxios, axios);
|
|
Vue.prototype.$msgPack = msgPack(true);
|
|
|
|
import {dataHandleMixin} from './mixins/global/dataHandleMixin'
|
|
Vue.mixin(dataHandleMixin);
|
|
|
|
import {stateMixin} from './mixins/global/stateMixin'
|
|
Vue.mixin(stateMixin);
|
|
|
|
new Vue({
|
|
router,
|
|
store,
|
|
vuetify,
|
|
render: h => h(App)
|
|
}).$mount('#app');
|