• 5 Posts
  • 24 Comments
Joined 1 year ago
cake
Cake day: June 12th, 2023

help-circle

  • I have to respectfully disagree with many of the points you mentioned, and I believe it really boils down to the different android phone models that can provide a very different user experience.

    I have been using my Xiaomi Mi 11 for a maybe 18 months now, and going through some of your points but from this phone’s perspective:

    1. iOS has smooth animations for everything, is quicker for searching and finding apps, and just plain looks better to me - the Miui interface is renowned / notorious for being a copycat of the iOS interface, so I actually see no big difference from the iOS interface. But Android being Android, it is highly customizable, and with my phone rooted, I actually have the iOS’s own San Francisco system font installed (I hated Android’s default roboto font), and have customized the main page to have two news update widgets just the way I wanted it. My background is an animated waterfall that to me looks stunning (created from my own video shot during a hiking trip). I know it is subjective, but honestly I see it the other way around. Android, with the right phone model and when setup right, can have butter smooth animations for everything, is just as quick if not quicker for searching and finding apps (I literally have the apps organized in their respective folders, never difficult to find), and it just plain looks better to me especially with the animated background of my own choice.

    2. some stutter in animations and slow app indexing through their search bar - … yeah it probably has something to do with your old phone. No problem whatsoever over here. 120Mhz refresh rate. Butter smooth all day long.

    3. iMESSAGE AND FACETIME - can’t comment here. Facetime especially can be a headache if everyone else is using an iPhone.

    4. Voice Assistant - haven’t tried Siri for years. But I have been using Google Assistant both in Android Auto and (to a lesser extent) on the phone itself. No complaints there. I have a Google Nest Audio device too and thought it integrates well with my phone and my smart home (turning lights on/off, activating the home alarm system, interfacing with Home Assistant, etc)

    5. CarPlay is quite a bit ahead here as well - hmm this is where I am really quite confused. My wireless Android Auto works extremely well with my vehicle. It starts up as soon as I enter my car in like less than one second with a totally seamless process (as in I do not need to do anything at all). With the coolwalk version of AA (released for more than 6 months already I believe), it actually has everything you mentioned that are available on Carplay: No warning message, time IS near the driver, app bar IS on the right where I sit (we have steering wheels on the right side). My AA IS smooth and is already wireless without any need for any dongle. And since my phone is rooted, I can even tweak my AA to play videos which is nice when your car is parked and you are waiting for someone for instance. Here is a snapshot:





  • The .html is so short. I will just post it here below.

    And you also need two .js files to be in the same folder. Download panolens.min.js here - click on Documentation then the 2nd link under ‘getting started’. Download three.min.js here - you need to pick version “105” and download that one.

    Put your pictures in the same folder. Take a look at the code, and change the lines to reflect the picture filenames, and also the initial picture to load. (or improve the code to look for appropriate files in a specific folder then create the dropdown list accordingly…)

    Here is the code:

    <!DOCTYPE html>
    <html>
    <head>
      <title>Pictures Viewer</title>
      <script src="three.min.js"></script>
      <script src="panolens.min.js"></script>
      <style>
        #container {
          width: 90%;
          margin: 0 auto; /* Center the container div horizontally */
        }
    
        #panorama {
          width: 100%;
          height: calc(100vw * 9 / 16); /* Set the height based on a 16:9 aspect ratio */
          margin-bottom: 1em; /* Add a margin of one line between the picture frame and the dropdown */
        }
    
        #loading-message {
          display: none;
          margin-top: 1em; /* Add a margin between the loading message and the title */
          margin-bottom: 1em; /* Add a margin at the bottom */
          font-size: 2em; /* Set the font size to 2em */
          color: green; /* Set the font color to green */
          animation: blink 0.5s infinite; /* Add the blinking animation with a duration of 0.5 seconds */
        }
    
        @keyframes blink {
          0%, 100% {
            opacity: 1;
          }
          50% {
            opacity: 0;
          }
        }
    
      </style>
    </head>
    <body>
      <h1>Pictures Viewer</h1>
      
      <div id="container">
        <div id="loading-message">Image being rendered, please wait...</div>
        <div id="panorama"></div>
    
        <label for="picture-select">Select Picture:</label>
        <select id="picture-select">
          <option value="picture1.jpg">Picture 1</option>
          <option value="picture2.jpg">Picture 2</option>
          <option value="picture3.jpg">Picture 3</option>
          <option value="picture4.jpg">Picture 4</option>
          <option value="picture5.jpg">Picture 5</option>
          <option value="picture6.jpg">Picture 6</option>
        </select>
      </div>
    
      <script>
        const panoramaElement = document.getElementById('panorama');
        const viewer = new PANOLENS.Viewer({ container: panoramaElement });
        let panorama = new PANOLENS.ImagePanorama("picture1.jpg");
        
        viewer.add(panorama);
    
        const pictureSelect = document.getElementById('picture-select');
        const loadingMessage = document.getElementById('loading-message');
    
        const showLoadingMessage = function() {
          loadingMessage.style.display = 'block'; // Show the loading message
        };
    
        const hideLoadingMessage = function() {
          loadingMessage.style.display = 'none'; // Hide the loading message
        };
    
        panorama.addEventListener('progress', showLoadingMessage);
        panorama.addEventListener('enter-fade-start', hideLoadingMessage);
    
        pictureSelect.addEventListener('change', function() {
          const selectedPicture = pictureSelect.value;
          loadingMessage.style.display = 'block'; // Show the loading message
          viewer.remove(panorama); // Remove the existing panorama from the viewer
          panorama = new PANOLENS.ImagePanorama(selectedPicture);
          viewer.add(panorama); // Add the new panorama to the viewer
          viewer.setPanorama(panorama);
          panorama.addEventListener('enter-fade-start', function() {
            loadingMessage.style.display = 'none'; // Hide the loading message when the new panorama finishes rendering
          });
        });
      </script>
    </body>
    </html>
    



  • What file format do they accept? How do I “export” that file from my insta360 X3 to upload to the app? Sorry pretty new to the insta360 scene.

    And it looks like Panorra uploaded pics are all publically available. What if I just want those with a link I send to specific people to be able to view the 360 pics? Is there any solution? Even self-hosted ones?

    Edit: found my answer with a bit of research. Both .insp and .insv seem to be proprietary formats, but the conventional way of sharing 360 photos is just plain old jpeg files, and some viewers (e.g. the Google photos app) can detect a 360 picture and change the viewing mode to panaroma. The insta360 app has an export function to generate 360 jpg pictures.

    For sharing - I have actually built a quick mini web site with the use of panolens.js and help from ChatGPT + a YouTube video. Now I dump the jpeg files into a folder and the website will let whoever has the link select a file and display it in 360 view. Problem solved.



  • Can’t watch the rest of the video after only 2 minutes. I am a Hong Konger, I know first hand HK is NOT using the NSL “to target people working in secret for a foreign power to damage our community.”

    Fact is, the HK puppet government is following CCP’s footsteps to target those who calls for democratic measures and rule of law to be applied and upheld in HK. These people, by voicing out, are now fugitives who in the eyes of the HK govt have “all violated the all encompassing NSL”. They even have a bounty on them.

    I risk crossing the red line myself by saying this. Hopefully the HK police is not yet scouring Lemmy, or I could very well be labelled as someone “who is working secretly for a foreign power” myself.

    This “reporter” is clearly spreading fake news.

    Edit: I just noticed the sidebar of this community that says “Please only post links to actual news sources, no tabloid sites, etc”. Has this post then violated the rule? How do I get in touch with the mods?