A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita audio rust zig deno mpris rockbox mpd
at master 180 lines 8.2 kB view raw
1% $Id$ % 2\subsection{Image Viewer} 3This plugin opens image files from the \setting{File Browser} to display them\nopt{lcd_color}{ using Rockbox's greyscale library}. Supported formats are as follows. 4 5\begin{table} 6 \begin{rbtabular}{.60\textwidth}{lX}% 7 {\textbf{Format}& \textbf{File-extension(s)}}% 8 {}{} 9 BMP & \fname{.bmp} \\ 10 JPEG & \fname{.jpg, .jpe, .jpeg} \\ 11 PNG & \fname{.png} \\ 12 GIF & \fname{.gif} \\ 13 \opt{lcd_color}{ 14 PPM & \fname{.ppm} \\ 15 } 16 \end{rbtabular} 17\end{table} 18 19\opt{large_plugin_buffer}{ 20\par 21\note{ 22When an audio file is playing the size of the image is limited as 23the decoding process needs to share memory with audio tracks. To be able to 24view a bigger file you may need to stop playback.} 25} 26\nopt{large_plugin_buffer}{% 27\note{This plugin will cause playback to stop.}% 28}% 29 30\begin{btnmap} 31 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD% 32 ,SANSA_E200_PAD,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD% 33 ,MROBE100_PAD,PBELL_VIBE500_PAD,SANSA_FUZEPLUS_PAD,SAMSUNG_YH92X_PAD% 34 ,SAMSUNG_YH820_PAD,RG_NANO_PAD}{\ButtonUp\ / \ButtonDown}% 35 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu\ / \ButtonPlay}% 36 \opt{IRIVER_H10_PAD}{\ButtonScrollUp\ / \ButtonScrollDown} % 37 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD% 38 ,SANSA_E200_PAD,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD% 39 ,MROBE100_PAD,IPOD_4G_PAD,IPOD_3G_PAD,IRIVER_H10_PAD,PBELL_VIBE500_PAD% 40 ,SANSA_FUZEPLUS_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD,RG_NANO_PAD} 41 {/ \ButtonLeft\ / \ButtonRight} 42 \opt{MPIO_HD200_PAD}{\ButtonVolDown / \ButtonVolUp /% 43 \ButtonRec + \ButtonRew / \ButtonRec + \ButtonFF} 44 \opt{MPIO_HD300_PAD}{\ButtonRew / \ButtonFF /% 45 \ButtonPlay + \ButtonScrollUp / \ButtonPlay + \ButtonScrollDown} 46 \opt{touchscreen}{\TouchTopMiddle{} / \TouchBottomMiddle{}/ \TouchMidLeft{} / \TouchMidRight} 47 \opt{HAVEREMOTEKEYMAP}{& } 48 & Move around in zoomed in image\\ 49 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD,SANSA_E200_PAD% 50 ,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,MROBE100_PAD}{\ButtonSelect} 51 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollFwd} 52 \opt{IRIVER_H10_PAD}{\ButtonPlay} 53 \opt{GIGABEAT_PAD,GIGABEAT_S_PAD,SANSA_FUZEPLUS_PAD}{\ButtonVolUp} 54 \opt{PBELL_VIBE500_PAD,SAMSUNG_YH820_PAD}{\ButtonRec+\ButtonUp} 55 \opt{MPIO_HD200_PAD,MPIO_HD300_PAD}{\ButtonPlay} 56 \opt{SAMSUNG_YH92X_PAD}{\ButtonPlay+\ButtonUp} 57 \opt{touchscreen}{\TouchTopRight} 58 \opt{HAVEREMOTEKEYMAP}{& } 59 \opt{RG_NANO_PAD}{\ButtonX} 60 & Zoom in\\ 61 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonMode} 62 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollBack} 63 \opt{IAUDIO_X5_PAD,SANSA_E200_PAD,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD}{Long \ButtonSelect} 64 \opt{IRIVER_H10_PAD}{Long \ButtonPlay} 65 \opt{GIGABEAT_PAD,GIGABEAT_S_PAD,SANSA_FUZEPLUS_PAD}{\ButtonVolDown} 66 \opt{MROBE100_PAD}{\ButtonPlay} 67 \opt{PBELL_VIBE500_PAD,SAMSUNG_YH820_PAD}{\ButtonRec+\ButtonDown} 68 \opt{MPIO_HD200_PAD,MPIO_HD300_PAD}{\ButtonRec} 69 \opt{SAMSUNG_YH92X_PAD}{\ButtonPlay+\ButtonDown} 70 \opt{touchscreen}{\TouchTopLeft} 71 \opt{HAVEREMOTEKEYMAP}{& } 72 \opt{RG_NANO_PAD}{\ButtonY} 73 & Zoom out\\ 74 \opt{IRIVER_H100_PAD}{\ButtonOn} 75 \opt{IRIVER_H300_PAD}{\ButtonRec} 76 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonRight} 77 \opt{IAUDIO_X5_PAD}{\ButtonPlay} 78 \opt{SANSA_FUZEPLUS_PAD}{\ButtonBottomRight} 79 \opt{IRIVER_H10_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonFF} 80 \opt{SANSA_E200_PAD,SANSA_FUZE_PAD}{\ButtonScrollFwd} 81 \opt{SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonVolUp} 82 \opt{GIGABEAT_PAD}{\ButtonA+\ButtonRight} 83 \opt{GIGABEAT_S_PAD}{\ButtonNext} 84 \opt{MROBE100_PAD}{\ButtonDisplay+\ButtonRight} 85 \opt{PBELL_VIBE500_PAD}{\ButtonRec+\ButtonRight} 86 \opt{MPIO_HD200_PAD}{\ButtonFF} 87 \opt{MPIO_HD300_PAD}{\ButtonScrollDown} 88 \opt{touchscreen}{\TouchBottomRight} 89 \opt{HAVEREMOTEKEYMAP}{& } 90 \opt{RG_NANO_PAD}{\ButtonR} 91 & Next image in directory\\ 92 \opt{IRIVER_H100_PAD,IAUDIO_X5_PAD}{\ButtonRec} 93 \opt{IRIVER_H300_PAD}{\ButtonOn} 94 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonLeft} 95 \opt{IRIVER_H10_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRew} 96 \opt{SANSA_E200_PAD,SANSA_FUZE_PAD}{\ButtonScrollBack} 97 \opt{SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonVolDown} 98 \opt{SANSA_FUZEPLUS_PAD}{\ButtonBottomLeft} 99 \opt{GIGABEAT_PAD}{\ButtonA+\ButtonLeft} 100 \opt{GIGABEAT_S_PAD}{\ButtonPrev} 101 \opt{MROBE100_PAD}{\ButtonDisplay+\ButtonLeft} 102 \opt{PBELL_VIBE500_PAD}{\ButtonRec+\ButtonLeft} 103 \opt{MPIO_HD200_PAD}{\ButtonRew} 104 \opt{MPIO_HD300_PAD}{\ButtonScrollUp} 105 \opt{touchscreen}{\TouchBottomLeft} 106 \opt{HAVEREMOTEKEYMAP}{& } 107 \opt{RG_NANO_PAD}{\ButtonL} 108 & Previous image in directory\\ 109 \opt{SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,SANSA_FUZEPLUS_PAD% 110 ,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{%currently only defined for the sansa pads and samsung yh* 111 \opt{SANSA_E200_PAD,SANSA_C200_PAD}{\ButtonRec} 112 \opt{SANSA_CLIP_PAD}{\ButtonHome} 113 \opt{SANSA_FUZEPLUS_PAD}{\ButtonPlay} 114 \opt{SAMSUNG_YH92X_PAD}{\ButtonRec\ switch} 115 \opt{SAMSUNG_YH820_PAD}{Long \ButtonPlay} 116 \opt{HAVEREMOTEKEYMAP}{& } 117 & Toggle slide show mode\\ 118 } 119 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} 120 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect} 121 \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonPower} 122 \opt{SANSA_FUZE_PAD}{Long \ButtonHome} 123 \opt{GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD}{\ButtonMenu} 124 \opt{MPIO_HD200_PAD}{\ButtonFunc} 125 \opt{MPIO_HD300_PAD}{\ButtonEnter} 126 \opt{touchscreen}{\TouchCenter} 127 \opt{SANSA_FUZEPLUS_PAD}{\ButtonSelect} 128 \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonPlay} 129 \opt{HAVEREMOTEKEYMAP}{& 130 \opt{IRIVER_RC_H100_PAD}{\ButtonRCStop} 131 } 132 \opt{RG_NANO_PAD}{\ButtonB} 133 & Show menu / Abort \\ 134 \opt{IPOD_4G_PAD,IPOD_3G_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD% 135 ,SAMSUNG_YH820_PAD,RG_NANO_PAD}{ 136 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect} 137 \opt{GIGABEAT_PAD,MROBE100_PAD}{\ButtonPower} 138 \opt{GIGABEAT_S_PAD}{\ButtonBack} 139 \opt{PBELL_VIBE500_PAD}{\ButtonCancel} 140 \opt{MPIO_HD200_PAD}{\ButtonRec + \ButtonPlay} 141 \opt{MPIO_HD300_PAD}{Long \ButtonMenu} 142 \opt{SANSA_FUZEPLUS_PAD}{\ButtonBack} 143 \opt{SAMSUNG_YH820_PAD}{\ButtonRec+\ButtonPlay} 144 \opt{HAVEREMOTEKEYMAP}{& } 145 \opt{RG_NANO_PAD}{\ButtonStart} 146 & Quit the viewer \\ 147 } 148\end{btnmap} 149 150The menu has the following entries. 151\begin{description} 152\item[Return.] Returns you to the image 153\item[Toggle Slideshow Mode.] Enables or disables the slideshow mode. 154\item[Change Slideshow Timeout.] You can set the timeout for the slideshow 155 between 1 second and 20 seconds. 156\opt{large_plugin_buffer}{ 157\item[Show Playback Menu.] From the playback menu you can control the 158playback of the currently loaded playlist and change the volume of your \dap. 159} 160\opt{lcd_color}{ 161\item[Display Options.] From this menu you can force the viewer to render the 162image in greyscale using the \setting{Greyscale} option or set the method of 163dithering used in the \setting{Dithering} submenu. These settings only take effect 164for JPEG images. 165} 166\item[Quit.] Quits the viewer and returns to the \setting{File Browser}. 167\end{description} 168 169\note{ 170\opt{lcd_color}{Progressive scan is supported. Unsupported JPEG files} 171\nopt{lcd_color}{Progressive scan and other unusual JPEG files are not supported, and} will 172result in various ``unsupported xx'' messages. Processing could also fail if the 173image is too big to decode which will be explained by a respective message. 174 175\opt{lcd_color}{ 176 Supported PPM files are both ASCII PPM (P3) and raw PPM (P6). 177 For more information about PPM files, see 178 \url{http://netpbm.sourceforge.net/doc/ppm.html} 179} 180}