yanwsh / videojs-panorama

a plugin for videojs run a full 360 degree panorama video.
http://yanwsh.github.io/videojs-panorama/
Other
483 stars 160 forks source link

Top To Bottom #134

Open gen4sp opened 6 years ago

gen4sp commented 6 years ago

How to set TopToBottom or other projection? How to set 360 or 180 projection? Thanks

gen4sp commented 6 years ago

anyone? is it obvious or what ?)

pujoey commented 6 years ago

fisheye or equirectangular?? if it's equirectangular shouldn't need to do anything special. fisheye might be different. This is the setting we are using fisheye: top maxLat = -10; initLat = -10; initLon = -270; rotateX = -Math.PI; bottom maxLat = undefined; minLat = 10; initLat = 10; rotateX = 0;

gen4sp commented 6 years ago

Thanks for an answer. Yes, equirectangular but how I can show to Panorama is it Top To Bottom or Left to right for example?

pujoey commented 6 years ago

equirectangular is easy and depend on how the video is shot you can change the

minLat

minimum Lat value for camera angle. Defaults value is -85.

maxLat

max Lat value for camera angle. Defaults value is 85.

https://github.com/yanwsh/videojs-panorama#automobileorientation

On Tue, Oct 3, 2017 at 1:50 AM, Valentin notifications@github.com wrote:

Thanks for an answer. Yes, equirectangular but how I can show to Panorama is it Top To Bottom or Left to right for example?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/yanwsh/videojs-panorama/issues/134#issuecomment-333779804, or mute the thread https://github.com/notifications/unsubscribe-auth/ANR_MRhMjUtGaB5Ro0y9fmDzkIfU2Psmks5sofVugaJpZM4PpgXn .

-- [image: photo] Joey Lin Full Stack Web Developer/ Manufacturing Engineer 317-938-2531 | pujoey@gmail.com | www.joeylin.net http://www.linkedin.com/in/pujoey http://github.com/pujoey

gen4sp commented 6 years ago

I am trying to play stereo video. It works somehow on desktop (I see just mono video) But on safari iOS it looks like that:

screen shot 2017-10-04 at 18 53 07

also an error appears in a console

[Error] TypeError: undefined is not an object (evaluating 'this.playerInstance.tech({ IWillNotUseThisInPlugins: true }).el')
    getVideoEl (videojs-panorama.js:4535)
    Panorama (videojs-panorama.js:3719)
    (anonymous function) (videojs-panorama.js:4547)
    basicPluginWrapper (video2.js:23651)
    init (app.js:721)
    App (app.js:668)
    main (app.js:473)

and right after hit 'play' button

[Error] VIDEOJS: (2)
"ERROR:"
TypeError: null is not an object (evaluating 'canvas.handleResize') — videojs.js:17
    logByType (video2.js:489)
    error (video2.js:607)
    dispatcher (video2.js:1869)
    trigger (video2.js:1994)
    trigger$$1 (video2.js:2795)
    handleTechFullscreenChange_ (video2.js:21398)
    bound (video2.js:2232)
    bound (video2.js:2232)
    dispatcher (video2.js:1867)
    trigger (video2.js:1994)
    trigger$$1 (video2.js:2795)
    beginFn (video2.js:18601)
    bound (video2.js:2232)
    dispatcher (video2.js:1867)

No any errors with same setup on desktop chrome

this is my setup:

this.myPlayer.panorama({
     videoType: 'VR3603D',
      VREnable: true,
      clickToToggle: (!this.isMobile()),
      autoMobileOrientation: true,
      backToInitLat: false,
      backToInitLon: false,
      clickAndDrag: false,
      maxLat: -10,
      initLat: -10,
      Sphere: {rotateX: -Math.PI, rotateY: 0, rotateZ: 0}
});

Note: I use videojs-contrib-hls.

pujoey commented 6 years ago

Hmm 360 HLS video on safari is tricky. I'm having issue with with it also, something to do with video tech. Chrome and firefox's fine though.

"ERROR:" "(CODE:3 MEDIA_ERR_DECODE)" "The media playback was aborted due to a corruption problem or because the media used features your browser did not support."

Also, videoType should be either fisheye or equirectangular which is why your video is not playing 360

yanwsh commented 6 years ago

Yes, it's a bug still not be solved on IOS device but they solved this issue on safari desktop. Please consider use proxy to solve this issue, make sure the video source which you use have the same domain as the video player.

gen4sp commented 6 years ago

@pujoey there is VR3603D option on the code. And it works better in desktop browser - I see one 3d video, not doubled one. But on mobile it works the same and VR3603D and equirectangular

gen4sp commented 6 years ago

It seems like all setup doesn't make any effect to a player on iOS. If I change fisheye and equirectangular - it has a difference on a desktop. But on safari mobile, it ALWAYS looks the same (as on my screenshot above). Why?

gen4sp commented 6 years ago

http://wordshoot.s3-website-eu-west-1.amazonaws.com/ this is my simplified example now it doesn't work on safari at all :(

tkmn0 commented 6 years ago

Hi, In my case, the problem was Audio channels. My camera(insta360pro) can publish spatial audio that has four channels. I changed audio mode spatial to normal in my camera settings. Then I achieved play 360 3D video on HLS on safari with iPhone6(iOS10 & iOS11) using video.js & videojs-panorama.

I hope this will help. Best regards.