1===== 2pdfpc 3===== 4 5About 6===== 7 8pdfpc is a GTK-based presentation application which uses Keynote-like 9multi-monitor output to provide meta information to the speaker during the 10presentation. It is able to show a normal presentation window on one screen, 11while showing a more sophisticated overview on the other one, providing 12information like an image of the next slide, time remaining till the end of 13the presentation, etc. The input files processed by pdfpc are PDF documents, 14which can be created by most of the present-day presentation software. 15 16More information, including screenshots and demo presentations, can be found 17at https://pdfpc.github.io/ 18 19Installation 20============ 21 22- On Debian, Ubuntu, and other Debian-based systems:: 23 24 sudo apt-get install pdf-presenter-console 25 26- On Fedora:: 27 28 sudo dnf install pdfpc 29 30- On Arch Linux:: 31 32 sudo pacman -S pdfpc 33 34- On Gentoo:: 35 36 sudo emerge --ask pdfpc 37 38- On FreeBSD:: 39 40 It is available under graphics/pdfpc. A pre-built binary is also available. 41 42- On macOS with Homebrew:: 43 44 # Full macOS integration, including video support 45 brew install pdfpc 46 47- On macOS with MacPorts:: 48 49 # Nice macOS integration, including video support 50 sudo port -v install pdfpc +quartz +video 51 52 # Less well integrated due to using X11 server, video supported 53 sudo port -v install pdfpc +x11 +video 54 55- On Windows 10 (with *Windows Subsystem for Linux (WSL)*):: 56 57 Install: 58 1. Windows: Activate WSL: https://msdn.microsoft.com/en-us/commandline/wsl/install_guide 59 2. Windows: Open CMD and run: 'bash' in order to start the WSL-bash 60 3. WSL-Bash: run: 'sudo apt-get install pdf-presenter-console' 61 62 Run: 63 1. Windows: Install a Windows X-Server like VcXsrv: https://sourceforge.net/projects/vcxsrv 64 2. Windows: Make the presentation screen your secondary screen and disable the taskbar on that screen 65 3. Windows: Start the X-Server with: 'vcxsrv -nodecoration -screen 0 @1 -screen 1 @2 +xinerama' 66 4. Windows: Open CMD and run: 'bash' in order to start the WSL-bash 67 5. WSL-Bash: run: 'DISPLAY=:0 pdfpc <your PDF file>' to open your presentation with pdfpc 68 69Sample presentations 70==================== 71 72- `Simple demo <https://github.com/pdfpc/pdfpc/releases/latest/download/pdfpc-demo.pdf>`_ 73- `Embedded movies <https://github.com/pdfpc/pdfpc/releases/latest/download/pdfpc-video-example.zip>`_ 74 75Usage 76===== 77 78Try it out:: 79 80 pdfpc pdfpc-demo.pdf 81 82 83If you encounter problems while running pdfpc, please consult the `FAQ 84<FAQ.rst>`_ first. 85 86Compilation from sources 87======================== 88 89Requirements 90------------ 91 92In order to compile and run pdfpc, the following requirements need to be met: 93 94- cmake >= 3.0 95- vala >= 0.34 96- gtk+ >= 3.22 97- gee >= 0.8 98- poppler with glib bindings 99- pangocairo 100- gstreamer >= 1.0 with gst-plugins-good 101- discount (aka markdown2) 102- webkit2gtk 103- json-glib 104 105E.g., on Ubuntu 18.04 onward, you can install these dependencies with:: 106 107 sudo apt-get install cmake valac libgee-0.8-dev libpoppler-glib-dev 108 libgtk-3-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev 109 libjson-glib-dev libmarkdown2-dev libwebkit2gtk-4.0-dev gstreamer1.0-gtk3 110 111(the last one is a run-time dependence). You should also consider installing all 112plugins to support required video formats; chances are they are already present 113through dependencies of ``ubuntu-desktop``. 114 115On macOS with Homebrew, the easiest way is to install all dependencies of the 116pdfpc package without pdfpc itself:: 117 118 brew install --only-dependencies pdfpc 119 120On macOS with MacPorts, you can install all dependencies using the `port` command:: 121 122 # list dependencies for the +quartz +video variant 123 # (good macOS integration) 124 port deps pdfpc +quartz +video 125 # install dependencies 126 sudo port -v install cmake vala pkgconfig gtk3 +quartz poppler libgee librsvg gstreamer1-gst-plugins-good +gtk3 127 128 # list dependencies for the +x11 +video variant 129 # (using X11 server) 130 port deps pdfpc +x11 +video 131 # install dependencies 132 sudo port -v install cmake vala pkgconfig gtk3 +x11 poppler libgee librsvg gstreamer1-gst-plugins-good +gtk3 +x11 133 134On Windows, a Cygwin installation with the following dependencies is needed: 135 136- cmake 137- automake 138- make 139- gcc 140- gcc-c++ 141- libstdc++-4.8-dev 142- x11 143- vala 144- gtk 145- gee 146- libpoppler 147- gstreamer 148- libgstinterfaces1.0-devel 149 150Downloading and compilation 151--------------------------- 152 153You can download the latest stable release of pdfpc in the release section of 154github (https://github.com/pdfpc/pdfpc/releases). Uncompress the tarball (we 155use v4.2.1 as an example here):: 156 157 tar xvf pdfpc-4.2.1.tar.gz 158 159Change to the extracted directory:: 160 161 cd pdfpc-4.2.1 162 163Compile and install:: 164 165 mkdir build/ 166 cd build/ 167 cmake .. 168 make 169 sudo make install 170 171If there are no errors in the process, you just installed pdfpc on your system. 172Congratulations! If there were errors, they are probably due to missing 173dependencies. Please check that you have all the necessary libraries (in some 174distributions you may have to install *-devel* packages). 175 176Note: You may alter the final installation prefix in the cmake call. By default, 177the pdfpc files will be installed under */usr/local/*. If you want to change 178that, for example to be installed under */usr/*, you can specify another 179installation prefix as follows:: 180 181 cmake -DCMAKE_INSTALL_PREFIX="/usr" .. 182 183By default, pdfpc includes support for movie playback. This requires several 184gstreamer dependencies. The requirement for these packages 185can be removed by compiling without support for movie playback by passing 186*-DMOVIES=OFF* to the cmake command. 187 188Compilation troubleshooting 189--------------------------- 190 191Some distributions do not have a *valac* executable. Instead they ship with a 192version suffix like *valac-0.40*. If cmake cannot find the Vala compiler, you 193can try running cmake with:: 194 195 cmake -DVALA_EXECUTABLE:NAMES=valac-0.40 .. 196 197Acknowledgements 198================ 199 200pdfpc was initially developed as pdfpc-presenter-console by Jakob Westhoff 201(https://github.com/jakobwesthoff/Pdf-Presenter-Console) 202then further extended by David Vilar (https://github.com/davvil/pdfpc). 203