Managing thumbnails on the Synology Photostation

Last update : September 16, 2013

To upload photos or videos to the Synology Photostation, you can use five different tools. In all cases, thumbnails for photos and videos are created in several resolutions at the upload process.

1. Synology Assistant

Snap_synassis

Synology Assistant

The Uploader feature has been removed in version 4.3-4206, released on 27.8.2013.

2. Synology Photostation Uploader

Synology Upload Tool

Synology Upload Tool

Version 1.0-038, released on 27.8.2013, only supports bulk uploads (source is a folder).

3. Photostation Album Charger

Synology Album Upload Tool

Synology Album Upload Tool

4. Synology Filestation Charger

Synology Filestation Charger

Synology Filestation Charger

5. Windows Explorer in local network

Windows File System

Windows File System

The two first tools (Synology Assistant and Photostation Uploader) are more efficient because the CPU of the computer is used to do the conversion and the thumbnail creation, whereas the CPU of the Synology Diskstation is used in the three other ways.

The free software ImageMagick is used by the Synology Diskstation to handle images and thumbnails.The Synology DMS 4.2 system (and later) create several thumbnails for each photo or video uploaded in the Photostation (shared system folder photo). These thumbnails are saved in a hidden folder named @eaDir, created in each album folder. Subfolders with the name of the photo or video, including the extension, are created inside the @eaDir folder. Such a subfolder contains the following thumbnails :

DMS 4.2 – Photo Station 5

Photos :

Filename Max width or height (pixels)
 SYNOPHOTO:THUMB_B.jpg  640
 SYNOPHOTO:THUMB_L.jpg  800
 SYNOPHOTO:THUMB_M.jpg  320
 SYNOPHOTO:THUMB_S.jpg  120
 SYNOPHOTO:THUMB_XL.jpg  1.280

Videos :

Filename Max width or height (pixels)
SYNOPHOTO:THUMB_B.jpg 640
SYNOPHOTO:THUMB_L.jpg 800
SYNOPHOTO:THUMB_M.jpg 320
SYNOPHOTO:THUMB_S.jpg 120
SYNOPHOTO:THUMB_XL.jpg 1.280
SYNOPHOTO:VIDEO_SCREENSHOT.jpg video original

DMS 4.3 – Photo Station 6

Photos :

Filename Max width or height (pixels)
SYNOPHOTO_THUMB_B.jpg 640
SYNOPHOTO_THUMB_M.jpg 320
SYNOPHOTO_THUMB_PREVIEW.jpg 160
SYNOPHOTO_THUMB_S.jpg 120
SYNOPHOTO_THUMB_XL.jpg 1.280

Videos :

Filename Max width or height (pixels)
SYNOPHOTO:THUMB_M.jpg 320
SYNOPHOTO:THUMB_XL.jpg video original
SYNOPHOTO:VIDEO_SCREENSHOT.jpg video original

Display of thumbnails

The short dimension of the thumbnail is calculated with the aspect ratio of the original photo or video. If the video is rotated (metadata Rotation=xx), for instance by using an iPhone, the thumbnails are also rotated and displayed as expected. Metadata are not saved to the thumbnails.

DMS 4.2 – Photo Station 5

The photo-thumbnails are displayed as follows :

Application Qualité Mode simple Mode détaillé Info Agrandissement Vignette Diaporama
PC M M M L S XL
DSphoto+ Normal S S S L S L
DSphoto+ High M M M XL M XL

The video-thumbnails are displayed as follows :

Application Qualité Mode simple Mode détaillé Info Videocover Vignette
PC M M M XL S
DSphoto+ Normal S S S L S
DSphoto+ High M M M XL M

DMS 4.3 – Photo Station 6

The photo-thumbnails are displayed in M-size in all list-, time-line-, mosaic- and info-views, independent of the quality setting (normal/high) in DSphoto+. The photos are displayed in XL-size in the enlarged- or slide-show-views. The sizes B and S are used in other Synology multimedia apps like the multimedia server. The video-thumbnails are also displayed in M-size for overviews and in the original size (XL) for viewing.

Replacement of thumbnails

Sometimes it’s necessary to replace the automatic generated thumbnails, for example if the thumbnail for a video is not representative. The replacement can be done with the Synology web console. One problem is the character : in PhotoStation 5 which is not supported in filenames in Windows systems. Thumbnails created before an update to Photo Station version 6 contain such characters. A temporary name for the uploaded file can be changed in the webconsole with the command

> mv old_name new_name

in the correspondent folder (mouse support in the web console). The change can also be done in the command line interface (CLI) with the Putty client. It’s necessary in this case to change the directory with the command

> cd ../volume1/photo/album_folder/@eaDir/image_folder
> dir
> mv old_name new_name

It’s important to check if the read-write properties of the changed files are set to 755, otherwise they should be modified with CHMOD.

The cover pictures for an album are located in the @eaDir folder at the same level as the album folder. Inside this folder are subfolders with the same album names, containing a file SYNOPHOTO:ALBUM.cover. It’s a text file with the filename of the cover photo, nothing else. If no cover photo is defined, the first image in the album is used as default cover. If a movie is selected as a cover image, the filename of the video is listed in the SYNOPHOTO:ALBUM.cover text file.

A second file SYNOPHOTO:ALBUM.sort is in the same @eaDir folder. A content example is shown below :

{"type":"3","order":"0","list":["IMG0001.jpg","IMG0002.jpg","IMG0003.jpg"]}

The following list provides some links to webpages with additional informations about this topic :

JPEG Chroma Subsampling

The JPEG compressed file format can produce significant reductions in file size through lossy compression. The compression techniques take advantage of the limitations of the human eye by discarding additional image details that may not be as noticeable to the human observer.

Humans are much more sensitive to changes in luminance (brightness) than  to chrominance (color) differences. JPEG can discard a lot more color information than luminance in the compression process. Chroma subsampling is the process whereby the color information in the image is sampled at a lower resolution than the original. JPEG translates 8-bit RGB data (Red, Green, Blue) into 8-bit YCbCr data (Luminance, Chroma Blue, Chroma Red).

The different levels of YCbCr subsampling are :

  • 4:4:4 – The resolution of chrominance information is preserved at the same rate as the luminance information. (1×1, subsampling disabled)
  • 4:2:2 – Half of the horizontal resolution in the chrominance is dropped, while the full resolution is retained in the vertical direction, with respect to the luminance. (2×1 chroma subsampling)
  • 4:1:1 – Only a quarter of the chrominance information is preserved in the horizontal direction with respect to the luminance information
  • 4:2:0 – With respect to the information in the luminance channel, the chrominance resolution in both the horizontal and vertical directions is cut in half (2×2 chroma subsampling)

JPEG chroma subsampling is not a particularly good mechanism for compressing images used in the medical field where the chrominance may be equally as important as the luminance.

Photoshop uses different chroma subsampling levels depending on the Quality settings:

  • 2×2 Chroma Subsampling – Save Quality 0-6 or Save For Web Quality 0-50
  • No Chroma Subsampling – Save As Quality 7-12  or Save For Web Quality 51-100

Additional informations about JPEG Chroma subsampling are available at the following links :

Video X264 encoding

Last update : September 17, 2013

I wanted to know the best X264 parameters to encode my personal movies with ffmpeg for my family website. I rendered 375 frames (15 seconds) from the open-source Big-Buck-Bunny image files (360-png) with different settings, starting at frame 1.113. This post refers to my former post about AVC (H264) video settings.

The common parameters for the encoding are :

  • -vcodec libx264
  • -f image2
  • -pix_fmt yuv420p (chroma subsampling : 4:2:0)
  • -tune animation
  • resolution (pal) : 640 x 360 pixels
  • frame rate : 25 fps

1st Test

The ffmpeg settings for the first test series are :

  • -preset veryslow
  • -profile:v baseline
  • -level 3
  • -refs 1

The value of the Constant Rate Factor (CRF) was changed from 20 to 32, in steps of 3. Here are the results :

CRF Filesize (KB) Videostream (Kbps) Bits/(Pixel*Frame)
 20  2.430  1.326  0.230
 23  1.472  802  0.139
 26  877  478  0.083
 29  531  289  0.050
 32  338  183  0.032

ffmpeg_crf

Visually the quality difference between the movies with an CRF = 20 and CRF = 32 is not perceptible. These are snapshots of the two movies :

CRF = 20  Size = 39,6 KB

CRF = 20  Image size = 39,6 KB

CRF = 32 Size = 32,6 KB

CRF = 32  Image size = 32,6 KB

2nd Test

The ffmpeg settings for the second test series are :

  • -crf : 20
  • -profile:v baseline
  • -level 3
  • -refs 1

The three presets veryslow, medium and ultrafast have been used. Here are the results :

Preset Filesize (KB) Videostream (Kbps) Bits/(Pixel*Frame)
veryslow 2.430 1.326 0.230
medium 2.729 1.489 0.258
ultrafast 5.276 2.880 0.500

ffmpeg_preset

Presets are designed to reduce the work needed to generate sane, efficient commandlines to trade off compression efficiency against encoding speed. The default preset is medium. If you specify a preset, the changes it makes will be applied before all other parameters are applied.

The X264 settings of the different presets are :

ultrafast

  • –no-8x8dct
  • –aq-mode 0
  • –b-adapt 0
  • –bframes 0
  • –no-cabac
  • –no-deblock
  • –no-mbtree
  • –me dia
  • –no-mixed-refs
  • –partitions none
  • –rc-lookahead 0
  • –ref 1
  • –scenecut 0
  • –subme 0
  • –trellis 0
  • –no-weightb
  • –weightp 0

veryslow

  • –b-adapt 2
  • –bframes 8
  • –direct auto
  • –me umh
  • –merange 24
  • –partitions all
  • –ref 16
  • –subme 10
  • –trellis 2
  • –rc-lookahead 60

3rd Test

The ffmpeg settings for the third test series are :

  • -preset veryslow
  • -crf : 20
  • -profile:v baseline
  • -level 3

The numer of reference frames was changed to the values 1, 2, 4, 8 and 16. Here are the results :

Ref frames Filesize (KB) Videostream (Kbps) Bits/(Pixel*Frame)
1 2.430 1.326 0.230
2 2.378 1.297 0.225
4 2.203 1.201 0.209
8 2.079 1.134 0.197
16 2.027 1.106 0.192

ffmpeg_ref_frames

4th Test

The ffmpeg settings for the fourth test series are :

  • -crf : 20
  • -profile:v main
  • -level 3

The numer of reference frames was changed to the values 4, 8 and 16 for the two presets veryslow and medium (4 is the minimum number of reference frames of the main profile). Here are the results :

Preset Ref frames Filesize (KB) Videostream (Kbps) Bits/(Pixel*Frame)
 veryslow 4 1.517 826 0.143
 veryslow 8 1.411 768 0.133
 veryslow 16 1.389 756 0.131
 medium 4 1.700 926 0.161
 medium 8 1.636 891 0.155
medium 16 1.607 875 0.152

ffmpeg_ref_frames_x

5th Test

The ffmpeg settings for the fifth test series are :

  • -preset veryslow
  • -crf : 20

The profiles and levels have been changed. Here are the results :

Profile@Level Filesize (KB) Videostream (Kbps) Bits/(Pixel*Frame)
baseline@3.0 2.430 1.326 0.230
main@3.0 1.517 826 0.143
high@3.0 1.405 765 0.133

ffmpeg_profiles

Profiles are not set by default in X264. If a profile is specified, it overrides all other settings, so that a compatible stream will be guaranteed.

The X264 settings of the different profiles are :

baseline

  • –no-8x8dct
  • –bframes 0
  • –no-cabac
  • –cqm flat
  • –weightp 0
  • No interlaced
  • No lossless

main

  • –no-8x8dct
  • –cqm flat
  • No lossless

high

  • No lossless

A level inside a profile specifies the maximum picture resolution, frame rate and bit rate that a decoder may use.

The complete detailed informations about settings are available in the x264.exe inbuild documentation, accessible with the command x264 –fullhelp .

The following list provides some links to websites with more informations about ffmpeg and x264 video encoding :

5.1 Surround Sound and FLAC

Suggested configuration for 5.1 music listening (Wikipedia)

Suggested configuration for 5.1 music listening (Wikipedia)

Five point one (5.1) is the name for six channel surround sound multichannel digital audio systems, most commonly used in commercial cinemas and home theaters. It uses 5 full bandwidth channels (the “five”) and one low-frequency effects channel (the “point one”). The 5.1 system is used by Dolby Digital (AC3 codec), Sony Dynamic Digital Sound (SDDS), Digital Theater Systems (DTS), and Dolby Pro Logic II.

All 5.1 systems use the same speaker channels and configuration, having a front left (L) and right (R), a center channel (C), two surround channels (SL and SR) and a subwoofer (LFE).

Audio files for 5.1 systems are often encoded with the lossless FLAC codec. FLAC is an open format with royalty-free licensing and a reference implementation which is free software. FLAC has support for metadata tagging, album cover art, and fast seeking.

Lossy compression and encoding schemes for digital audio are MP3 and its successor AAC (Advanced Audio Coding). AAC has been standardized by ISO and IEC, as part of the MPEG-2 and MPEG-4 specifications. AAC is the standard audio format for YouTube, Apple (iPhone, iPod, iPad, …) and Sony devices (Playstation, Walkman, …). AAC is more advanced than the Dolby Digital AC3 codec.

Open Source Films

Last update : July 9, 2013

Open source films (open-content movies, free-content movies or open movies) are films which are produced and distributed by using free and open-source software methodologies. Their sources are freely available and the licenses used meet the demands of the Open Source Initiative (OSI) and the Free Cultural Works.

A list of free-content films is available at Wikipedia.

Here are the open source films where the sources are available.

1. Films made by Blender Institute, part of the Blender Foundation, a non-profit organization, chaired by Ton Roosendaal, responsible for the development of Blender, an open source program for three-dimensional modeling  :

Open source film Elephants Dream

Elephants Dream

This 10 minutes short movie is about complexities of a machine and how the characters deal with this complexity and ambiguity.

Open source film Big Buck Bunny

Big Buck Bunny

This short-animated movie is about three critters that poke fun at other jungle animals including a big rabbit called Big Buck Bunny. Therefore Big Buck starts to seek vengeance for himself and his beloved butterflies.

Open source film Sintel

Sintel

A girl called Sintel is searching for her dragon friend Scales.

Open source film Tears of Steal

Tears of Steel

This open source film is about a group of warriors and scientists, who gathered at the Oude Kerk in Amsterdam to stage a crucial event from the past, in a desperate attempt to rescue the world from destructive robots.

The Blender Institute created also an open video game, called Yo Frankie!, based on the universe and characters of the film Big Buck Bunny.

2. Open source films made by other creators and teams :

The boy who never slept

Boy who never slept

This film is about a 23 year-old writer who has felt in love with a 16 year old school girl.

.re_potemkin

.re_potemkin

This project is a re-build of the 1925 silent movie Battleship Potemkin which is in public domain now.

Oceania

Oceania

A story of two teenagers who deal with their shattered family-life in a small California coastal town.

Sita Sings the Blues

Sita Sings the Blues

This 80-minutes animated feature film has been created by a single person and is based on the renowned Indian Sanskrit epic The Ramayana.

Jathias Wager

Jathias Wager

A science fiction film about a young man living in an isolated community of humans who must make a life changing decision about his future species.

Valkaama

Valkaama

Three young people are searching for a utopian society in northern Finland called Valkaama; a society that is full of harmony, peace and poetry.

More than ten additional open-content films will be released in the next future.

Different compressed and lossless encoded versions of open-source films are available at Xiph.org. More informations about open source films are provided at the following links :

Cooltext Graphics Generator and Vector Studio

Cool Text is a free graphics generator for web pages and anywhere else you need an impressive logo without a lot of design work. Online since 1998, Cooltext servers have rendered over 300 million free images. Cooltext features a free font archive with over 1,200 fonts available and offers also automatic button creation.

image  created with Cooltext Graphics Generator

Image created with Cooltext Graphics Generator

Cooltext was founded by Bryan Livingston, a small business owner (Livingston Technologies) and computer programmer living in Lehi, Utah. He is also the author of the now free vector drawing program Vector Studio.

Screenshots

Last update: August 9, 2016

Screenshots, screen dumps or screen captures are images taken by the computer user to record the visible items displayed on the monitor or another visual output device.

Windows
Print Screen for screenshotsThe windows key PrtScnSysRq captures the entire screen and copies it to the clipboard. You find this key at the upper right of your keyboard. Holding down the Alt key when pressing the PrtScnSysRq key, Windows captures only the currently active window and copies it to the clipboard. In Windows 10, use the Windows Log key together with the PrtScnSysRq key to capture the whole screen which is saved into a Screenshots Folder inside the Pictures directory.

If you want to capture regions or windows with scrolling or other features, you need a special software. My favorite tool is Hypersnap. I use the licensed version 6.81.03. The current available version, with more features, is 8.04.02.

There exist also screen-capture tools as extensions or plugins for web browsers, for example Awesome Screenshot.

To test how a web page looks on different real browsers and different operating systems, you can use Browsershots run by a community cooperation. Public beta for Browsershots started in February 2005. The screenshots are made on distributed computers that are run by volunteers. The results are uploaded to a central server. Everybody can add URLs to the job queue on this server, the usage is free, but you can buy priority processing.

Properties of command prompt window

Properties of command prompt

Command Prompt Window
The marked content or the full content of the command prompt window is copied to the clipboard with the menu popped up by right clicking the window. The properties of the command prompt window can be changed in the pop-up menu Properties by right-clicking in its title bar.

Apple iOS
To take screenshots on an Apple iOS device, you press first the Sleep/Wake (Lock) button and than at once the Home button. The screen flashes white. The device captures the entire screen and saves it as a photo in .jpg format. You find the results in the photo app inside the Camera Roll folder on an iPhone / iPod Touch or inside Saved Photos folder on an iPad.

A web scroll capture app to take screenshots of scrolling web pages, developed by Jaye Jung, is available for free at the Apple AppStore.

Android
As of Android 4.0, screenshots can be taken by pressing and holding the Volume Down button and the Sleep/Wake button. They are stored in.png format in the Gallery app inside the Screenshots folder.

Most Android screenshot apps on the market offering more features require root access. One app, Screenshot Ultimate, has been designed to replace every other screenshot app out there by using over 10 different capture methods. Unfortunately, this app is incredibly buggy, unstable and complicated.

Blackberry
To take screenshots of a Blackberry screen, have a look at an earlier post.

Apple Mac
To capture the entire screen, press Command (⌘)-Shift-3. The screenshot is added to your desktop. To capture an area of the screen, press Command (⌘)-Shift-4, and then drag the crosshair pointer to select the area. To capture a specific window, press Command (⌘)-Shift-4, press the Space bar, move the camera pointer over the window to highlight it, and then click. Learn more at the Apple support website.

Linux Debian
An open-source feature-rich screenshot program for Linux is Shutter. Pressing the print-key takes a copy of the whole screen. Screenshots are saved into the Pictures folder.

Shutter Screenshot Linux Program

Shutter Screenshot Linux Program

Android’s Jelly Bean 4.1.1. user guide

The main Android’s buttons are :

  • Home-16 : Home
  • Back-16 : Back
  • Recent-Apps-16 : Recent
  • Menu-16 : Menu

A running app is minimized by tapping the Home icon. A recently used app is revealed by tapping the Recent icon. To see more recent apps, slide down. To switch to an app, tap a screenshot from the Recent apps list. To clear a recent app from the list, swipe it sideways. You don’t need to close a running app for every instance on the Android system. If you want however to stop an app, run the Settings app, tap Applications under DEVICE, select the app you want to close, tap the Force stop button and tap OK to confirm. At  the same settings you can uninstall the app. To rearrange icons on the screen, touch and hold any icon for a second and drag the icon to a different spot on the screen. You can also drag an icon to the left or right edge of the screen until it starts sliding to drop the icon to another screen.  To remove an icon, touch and hold it until the Remove icon appears on the top, the drag and drop the icon over the Remove icon.

To group similar apps together, you can create a folder by holding an icon for a second to reveal a create folder button at the top of the screen. Give it a name and drag the wanted icons into this folder. You can rename a folder at any time by tapping its name to rename. To turn off Auto-Correction, open the app Settings and select Language & input under PERSONAL and enter the keyboard tab to change the options.

The following list provides links to additional informations about this topic :

UPnP Technology and Test Tools

Universal Plug and Play (UPnP) is a set of networking protocols that permits networked devices, such as personal computers, printers, gateways, servers and mobile devices to seamlessly discover each other’s presence on the network and establish functional network services for data sharing, communications, and entertainment. UPnP is intended primarily for residential networks. No special device driver support is necessary, common network protocols are used (TCP/IP, HTTP, XML, SOAP). UPnP uses UDP port 1900 and TCP port 2869.

The UPnP technology is promoted by the UPnP Forum. Formed in October 1999, the UPnP Forum is an industry initiative of more than 1000 leading companies in computing, printing, networking, consumer electronics and home appliances. A huge library of UPnP resources is available at the website of the UPnP Forum.

UPnP was published as an international standard, ISO/IEC 29341, in December 2008.

The foundation for UPnP networking is IP addressing, either by DHCP or by AutoIP (zero configuration networking). The next step in UPnP networking is discovery, based on the Simple Service Discovery Protocol (SSDP). SSDP allows a device to advertise its services to control points, for example to media servers (Serviio) on the network. The next step is to learn more about the discovered device and its capabilities by retrieving the device’s XML description from the URL provided by the device in the discovery message. Now the control point can send actions to a device’s service using the Simple Object Access Protocol (SOAP).

An additional capability of UPnP networking is event notification, or eventing. The event notification protocol defined in the UPnP Device Architecture is known as General Event Notification Architecture (GENA). The final step in UPnP networking is presentation, usually by providing an URL of a webpage loaded in a browser.

UPnP AV is an audio and video extension of UPnP, referenced in specifications published by other organizations, including the Digital Living Network Alliance (DLNA).

Problems with UPnP are lack of authentication and vulnerabilities with the risk that UPnP devices can be accessed and/or manipulated by malicious web sites.

A complete set of open source tools for creating and testing UPnP solutions is provided by Intel. They include Device Spy, a generic control point, and Device Builder, a code generation tool. In all, there are 11 tools in this package that range from low-level debugging to full reference tools :

  • Device Spy
  • Device Sniffer
  • Network Light
  • Device Builder
  • Device Relay
  • Device Validator
  • Service Author
  • AV Media Controller
  • AV Media Server
  • AV Media Renderer
  • AV Wizard

Network Light is a software model of an UPnP device to show the basic functions of the UPnP protocol. The light can be switched on/off or dimmed. The following snaps show how

network_light

UPnP Network Light OFF / ON / DIMMED

UPnP Device Spy Tool

UPnP Device Spy Tool

setLoadLevelTarget

UPnP Device Spy Tool : Invoke action DIM 50%

UPnP Device Spy Tool : Invoke action ON

UPnP Device Spy Tool : Invoke action ON

UPnP Device Sniffer Tool

UPnP Device Sniffer Tool

Another UPnP test tool, called UPnP Inspector, has been developed by Coherence. The Inspector is an UPnP Device and Service analyzer, and a debugging tool, based on the Coherence DLNA/UPnP framework. It is loosely modeled after the Intel UPnP Device Spy and Device Validator.

UPnP Inspector

UPnP Inspector

UPnP Inspector logs

UPnP Inspector logs

UPnP Inspector action

UPnP Inspector action

UPnP Inspector details

UPnP Inspector details