MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-GooglePhotos

    Scheduled Pinned Locked Moved Entertainment
    294 Posts 56 Posters 341.2k Views 59 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ? Offline
      A Former User @uzair82
      last edited by

      @uzair82 There is no reason not to work. Where(position) did you put your module for fullscreen?

      1 Reply Last reply Reply Quote 0
      • K Offline
        krishnatnl @Guest
        last edited by

        @sean
        This is working fine now.
        Below is my config snippet:

        refreshInterval: 1000*30,  
        scanInterval: 1000*60*60, // too many scans might cause API quota limit also.
        //note(2018-07-29). It is some weird. API documents said temporal image url would live for 1 hour, but it might be broken shorter. So, per 10 min scanning could prevent dead url.
        
        sort: "random", //'time', 'reverse', 'random'
        showWidth: "100%", // how large the photo will be shown as. (e.g;'100%' for fullscreen)
        showHeight: "100%",
        originalWidthPx: 1920, // original size of loaded image. (related with image quality)
        originalHeightPx: 1080, // Bigger size gives you better quality, but can give you network burden.
        mode: "cover", // "cover" or "contain" (https://www.w3schools.com/cssref/css3_pr_background-size.asp)
        

        Question:
        My monitor is in Landscape mode. My Landscape pictures displays fine (Fitting exactly in screen). But portraits display in full size cropping the pic mostly and in an expanded view. Only part of image is visible since it large.

        Is there a way to “Fit the picture into the screen” when it is Portrait just like Landscape? I tried other mode. It is too small and has borders. I want the pic to fit exactly in the screen.
        My monitor is 22 inch, Full HD (1080P) if that helps.

        ? 1 Reply Last reply Reply Quote 0
        • ? Offline
          A Former User @krishnatnl
          last edited by A Former User

          @krishnatnl
          Fit the picture into the screen has obvious meaning.
          Portrait image in Landscape Area (and vice versa) Is something like real pictures in real photoframe, you cannot fit your portrait picture into the landscape frame without cutting(mode:cover) or extra margin of both left&right sides(mode:contain). The bigger difference of ratio makes the more uncomfortable looks.
          Could be the 3rd option? Give me a suggestion.

          PS
          I thought options available to consider :

          • stretch the width of portrait picture fully to fit to landscape area. It makes your person in portrait looks like a hobbit.
          • cut the top and both moderately and also stretch horizontally not too much. Not displaying entire image and not covering whole area, but it will look nicer than current issue. The only problem is, where to cut and how much to expand is not be done automatically.

          Is there any idea?

          1 Reply Last reply Reply Quote 0
          • K Offline
            krishnatnl
            last edited by

            @Sean
            Maybe i did not explain properly. I need a layout for the portrait oriented pictures to fit in the screen without disturbing the aspect Ratio.

            MODE:COVER

            • Works perfectly for the landscape oriented pictures since it is fitting the picture perfectly in the screen. There is no stretch or crop.
            • Portrait oriented pictures are cropped to landscape orientation (technically).

            MODE:CONTAIN

            • Works fine for the portrait oriented pictures i.e: The full image is visible in the screen, no crop, no stretch
            • Landscape pictures are also displayed without crop, but there are borders.

            Need something like this:
            If the pic is a Landscape oriented one, Mode should be COVER, else should be CONTAIN.
            In Other words, need an AUTO-SCALING option.

            From a programming perspective, is this feasible? If not, I will try the COVER mode but not liking black borders for all the images.

            ? 2 Replies Last reply Reply Quote 0
            • ? Offline
              A Former User @krishnatnl
              last edited by

              @krishnatnl
              In my MMM-DropboxWallpaper, I applied already that feature(automatically changing mode by ratio). I have been doubting whether it has really usefulness in real usage. Anyway I’ll consider this feature in this module too.

              1 Reply Last reply Reply Quote 0
              • ? Offline
                A Former User @krishnatnl
                last edited by

                @krishnatnl
                I’ve updated. mode:hybrid is available for changing mode:cover or mode:contain automatically by aspect ratio.

                1 Reply Last reply Reply Quote 0
                • K Offline
                  krishnatnl
                  last edited by

                  This working fine and solved my issue @Sean . Happy Holidays :)

                  1 Reply Last reply Reply Quote 0
                  • K Offline
                    krouton
                    last edited by

                    Hi Sean,

                    I keep getting the “[GPHOTO] Scan finished : 0/There is no scanned photo currently.” error however there are 3000 photos in the folder. Sometimes it will successfully scan and display the photos fine but more and more recently it fails.

                    {
                    		module: "MMM-GooglePhotos",
                    		position: "fullscreen_below",
                    		disabled: false,
                    	config: {
                    		albumId: "xxxxx", // your album id from result of `auth_and_test.js`
                    		refreshInterval: 1000*60*5,  
                    		scanInterval: 1000*60*10, // too many scans might cause API quota limit also.
                    			//note(2018-07-29). It is some weird. API documents said temporal image url would live for 1 hour, but it might be broken shorter. So, per 10 min scanning could prevent dead url.
                    
                    		sort: "random", //'time', 'reverse', 'random'
                    		showWidth: "1380px", // how large the photo will be shown as. (e.g;'100%' for fullscreen)
                    		showHeight: "1060px",
                    		originalWidthPx: 1380, // original size of loaded image. (related with image quality)
                    		originalHeightPx: 1060, // Bigger size gives you better quality, but can give you network burden.
                    		mode: "contain", // "cover" or "contain" (https://www.w3schools.com/cssref/css3_pr_background-size.asp)
                      }
                    },
                    

                    Connecting socket for: MMM-GooglePhotos
                    MMM-GooglePhotos started
                    Connecting socket for: MMM-MyCalendar
                    Starting node helper for: MMM-MyCalendar
                    Sockets connected & modules started …
                    Ready to go! Please point your browser to: http://0.0.0.0:8080
                    MMM-ModuleScheduler is removing all scheduled jobs
                    MMM-ModuleScheduler received CREATE_GLOBAL_SCHEDULE
                    MMM-ModuleScheduler is creating a global schedule for all modules using “30 6 * * *” and “00 18 * * *” with dim level 40
                    MMM-GooglePhotos initialized after loading.
                    [RCREPO] Repository scanning…
                    [GPHOTO] Scan finished : 0
                    There is no scanned photo currently.
                    [RCREPO] modules.json is updated.
                    [RCREPO] Repository scanning…
                    [GPHOTO] Scan finished : 0
                    There is no scanned photo currently.
                    [RCREPO] modules.json is updated.
                    [GPHOTO] Scan finished : 0
                    There is no scanned photo currently.
                    [RCREPO] modules.json is updated.

                    0_1544843092175_Capture.PNG
                    Inspector shows it loads the module but not an actual photo.

                    Any help would be greatly appreciated.

                    ? 2 Replies Last reply Reply Quote 0
                    • ? Offline
                      A Former User @krouton
                      last edited by

                      @krouton
                      Move to some smaller folder than try again. 3000 would be so many photos, and ther could be more in your subdirectories.

                      1 Reply Last reply Reply Quote 0
                      • ? Offline
                        A Former User @krouton
                        last edited by A Former User

                        @krouton
                        By the way, sorry for out of topic, but…
                        RCREPO seems too many times working. Scanning should be executed at start of MM once. Why did the log say so many times?
                        Would you try again after removing MMM-Remote-Control-Repository from config.js??

                        1 Reply Last reply Reply Quote 0
                        • Y Offline
                          yupwho
                          last edited by

                          @Sean , thanks a ton for this great module. My wife would have never been ok with a Smart display in our family room without having family pictures on it.
                          I have MMM-Google photos on full screen mode (monitor is in portrait mode). It works perfectly as expected - although the pictures come up as pixelated or not as sharp in lower resolution. All photos in my configured album are uploaded in full resolution. Is there any way to display it in high(est/er) resolution?

                          My configuration is as below:-

                          		{
                          		  module: "MMM-GooglePhotos",
                          		  position: "fullscreen_below",
                          		  config: {
                          		    albumId: "XXXXX", // your album id from result of `auth_and_test.js`
                          		    refreshInterval: 1000*60,  
                          		    scanInterval: 1000*60*10, // too many scans might cause API quota limit also.
                          		    //note(2018-07-29). It is some weird. API documents said temporal image url would live for 1 hour, but it might be broken shorter. So, per 10 min scanning could prevent dead url.
                          		
                          		    sort: "random", //'time', 'reverse', 'random'
                          		    showWidth: "100%", // how large the photo will be shown as. (e.g;'100%' for fullscreen)
                          		    showHeight: "100%",
                          		    originalWidthPx: 1920, // original size of loaded image. (related with image quality)
                          		    originalHeightPx: 1080, // Bigger size gives you better quality, but can give you network burden.
                          		    mode: "hybrid", // "cover" or "contain" (https://www.w3schools.com/cssref/css3_pr_background-size.asp)
                          		    //ADDED. "hybrid" : if you set as "hybrid" it will change "cover" and "contain" automatically by aspect ratio.
                          		  }
                          		},
                          
                          bheplerB 1 Reply Last reply Reply Quote 0
                          • bheplerB Offline
                            bhepler Module Developer @yupwho
                            last edited by

                            @yupwho - Hmm. If you uploaded at full resolution, they are probably higher than 1920x1080. Specifying those parameters may be causing some weird resizing artifacts.

                            As an experiment, trying taking out the orginalWidthPix and originalHeightPx parameters and see what you get.

                            Y 1 Reply Last reply Reply Quote 0
                            • Y Offline
                              yupwho @bhepler
                              last edited by

                              @bhepler Thanks! Removing it seemed to worsen the quality. I think I am going to experiment with different values here - https://en.wikipedia.org/wiki/Display_resolution#Common_display_resolutions.
                              I have tried the 2560*1440 and it looks little bit better.

                              Still looking if there is a more definite solution.

                              Thanks!

                              ? 1 Reply Last reply Reply Quote 0
                              • ? Offline
                                A Former User @yupwho
                                last edited by

                                @yupwho
                                Set originalWidthPx and originalHeightPx to higher value.

                                But dithering would be unescapable destiny. Because Max Screen Size of supported in RPI would be 1920*1080 and your pictures are larger than, so Dithering should be happened.

                                Usually Dithering - Scaling up/down, by index of 2 (e.g: X2, X4, X1/2, X1/4) would be better than other values.
                                So, dithering to 800X480 from 1600x960 could be better from 2000X1200.

                                And I think the best values would be the same size to display.
                                Because, if dithering would be happened, it would be done twice - once when your Google Photo send picture to RPI by OriginalWidth/Height and once again when my module showing it by showWidth/Height.
                                So, The best case would be all the same sizes - your picture original, OriginalWidth/Height, showWidth/Height are same. In other case, somewhat quality down is unavoidable. My module has no correction/manipulation method because this is not photoshop. sorry.

                                Y 1 Reply Last reply Reply Quote 0
                                • Y Offline
                                  yupwho @Guest
                                  last edited by

                                  @sean Thanks for the details - agreed! I am going to experiment with various config values and picture types. Awesome work with the module - works out of the box as expected!

                                  T 1 Reply Last reply Reply Quote 0
                                  • J Offline
                                    Joeysface
                                    last edited by

                                    I have been messing around with this module for a couple of days now and am really impressed with the way it works and the aspect ratio switching. I have a question though about the way the module displays pictures with borders. Would there be a way to either: display the image at the top of the frame and leave all of the black space below the image, or display two landscape images on top of each other instead of bordering the images?

                                    Thanks for any help with this.

                                    ? 1 Reply Last reply Reply Quote 0
                                    • ? Offline
                                      A Former User @Joeysface
                                      last edited by

                                      @joeysface
                                      Sorry for my poor English, I have a trouble to catch your points. If you can show me the example (simple image??) It will be a help.

                                      1 Reply Last reply Reply Quote 0
                                      • J Offline
                                        Joeysface
                                        last edited by

                                        I actually figured out one of my questions yesterday. I use this in the top right corner with a portrait aspect ratio. when a landscape photo would come up it would put the black bars on the top and bottom (I use the hybrid mode). I wanted to put the photo at the top of the container and put all the black space below the image. I was able to edit the css file to get it to work for me.

                                        1 Reply Last reply Reply Quote 0
                                        • T Offline
                                          Taxandria
                                          last edited by

                                          Hee guys.

                                          Any ideas why my magic mirror states that my config is corrupt after adding this module?

                                          Raspberry 2 | Stretch | magic Mirror latest version
                                          {
                                          module: “MMM-GooglePhotos”,
                                          position: “middle_center",
                                          config: {
                                          albumId: ["AN6D9_GC-eRw0Irq8BcuhBxYfwuHZPFlJpTKYbqRnR9xyHjFq3TjVVxzky9KqLEOxObDA4OFnB__”,"AN6D9_F2ZLhUpV8VrpCrp3MrQUh-D55YYop_hGeiMGtLMpMc_xNPI1IlGo5T7slIJRVfuyaS0jih”,“AN6D9_GByr6yyN-z5-VPgi_pxkG5KgBlWJZHwGzo3vHq_zwrxfYbudBygs0ePyzJmKRA-SQHl9Te”,“AN6D9_E6es9RyinVq9QoKxPU74pk-31H30p5sJW10o3YnzgDN33t6t-ZJRtb8PU2yPy4gKTpfBAM,AN6D9_GIGBaR1eBmI7ZUbneL8uq1dEfnVkcUlXKW0MnE-IZUSP7Kkg0mES07ah7rZtLxF6UHRSX3,AN6D9_Hr6iGqqA53-rOyZIESc-t9yFb4I_GF7ezQj1R-CSB2IVdzLRC_NpLgM3lMofKSM-TJjDkf”,“AN6D9_GIMMbpzErGJt5Z-bUB6HMDv5gKj44rZijAh_ynexuNxgJsyJ87jIBD4dp7aijzSaT8Dg7Z”,"AN6D9_EOTPePHltV88tdnuUi3nZOuNc3Luwg91K0wW4ikUrkDaLqGTYGyKbS1hmtA6bRSIp3d0bb”,“AN6D9_FiggE1yD2va8H3m7hLd_R2Ru_VfOYTxTZi6GNhlwbnw2hCVU9emnExm-9OqMps1RGH6xUU”], // your album id(s) from result of auth_and_test.js
                                          refreshInterval: 100060,
                                          scanInterval: 1000
                                          60*10, // too many scans might cause API quota limit also.
                                          //note(2018-07-29). It is some weird. API documents said temporal image url would live for 1 hour, but it might be broken shorter. So, per 10 min scanning could prevent dead url.

                                          sort: "time", //'time', 'reverse', 'random'
                                          showWidth: "800px", // how large the photo will be shown as. (e.g;'100%' for fullscreen)
                                          showHeight: "600px",
                                          originalWidthPx: 800, // original size of loaded image. (related with image quality)
                                          originalHeightPx: 600, // Bigger size gives you better quality, but can give you network burden.
                                          mode: "hybrid", // "cover" or "contain" (https://www.w3schools.com/cssref/css3_pr_background-size.asp)
                                          //ADDED. "hybrid" : if you set as "hybrid" it will change "cover" and "contain" automatically by aspect ratio.
                                          

                                          }
                                          },

                                          Appreciate your help! Thanks

                                          G 1 Reply Last reply Reply Quote 0
                                          • G Offline
                                            ganget @Taxandria
                                            last edited by

                                            @taxandria
                                            I see that there is a comma missing at line 10 in between the || needs to be a comma.

                                            sort: "time", //'time', 'reverse', 'random'|,|
                                            

                                            I’m also not sure about the difference between ” and " (notice the slight angle) being a problem or not.

                                            p.s. It’s pretty hard to read the code when only half of it is properly styled.

                                            1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 10
                                            • 11
                                            • 12
                                            • 13
                                            • 14
                                            • 15
                                            • 12 / 15
                                            • First post
                                              Last post
                                            Enjoying MagicMirror? Please consider a donation!
                                            MagicMirror created by Michael Teeuw.
                                            Forum managed by Sam, technical setup by Karsten.
                                            This forum is using NodeBB as its core | Contributors
                                            Contact | Privacy Policy