forked from morevnaproject-org/papagayo-ng
-
Notifications
You must be signed in to change notification settings - Fork 0
Papagayo is a lip-syncing program designed to help you line up phonemes (mouth shapes) with the actual recorded sound of actors speaking. Papagayo makes it easy to lip sync animated characters by making the process very simple - just type in the words being spoken (or copy/paste them from the animation's script), then drag the words on top of th…
egoZentric/papagayo-ng
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
WHAT IS PAPAGAYO : ================== This program is used to syncronises animated lip movement to a sound track. HOW PAPAGAYO IS USED : ====================== - One loads an audio file into the program. - The text that is spoken in the audio file is then also input. - This text can be split into its separate phoneme (sylable sounds). - Each sylable sound has a mouth shape associated with it. - These mouth shapes can then be aligned and timed to frames/timestamp. - The synchronised sequence and timing of "lips" can then be exported. HOW PAPAGAYO CODED : ==================== Papagayo-NG is written in Python, with following modules : ### TODO : Verification of version 3.7 complience Python - the programming language that Papagayo is written in. https://www.python.org/ ### TODO : Verification of version 4.0.3 complience (wxPhoenix) wxPython - a cross-platform user interface library for Python, wxWidgets based. https://www.wxpython.org/ ### Depriciated because wxglade leaves messy unreadable and difficult to mainatin code ! wxGlade - a user interface builder for wxWidgets. This program is not strictly necessary, but is helpful if you want to modify the user interface of Papagayo. http://wxglade.sourceforge.net/ PyAudio - cross-platform audio I/O library for python based on PortAudio http://people.csail.mit.edu/hubert/pyaudio/ http://www.portaudio.com/ To run Papagayo-NG, double-click the papagayo-ng.py file, or run the following command: python papagayo-ng.py ----------------------------- The Papagayo-NG source package includes the following files: readme.txt - this file gpl.txt - the user license for Papagayo-NG papagayo-ng.py - the main program file AboutBox.py - about box phonemes.py - a list if phoneme sets available in Papagayo-NG phonemes_preston_blair.py - Preston Blair phoneme set (default) phonemes_fleming_dobbs.py - Fleming & Dobbs phoneme set breakdowns/*.py - code to break down words using language specific pronunciations PronunciationDialog.py - a dialog to provide manual phoneme breakdown LipsyncDoc.py - the document structure, including voices, phoneme breakdown, etc. LipsyncFrame.py - the main Papagayo-NG window WaveformView.py - view handler for the audio waveform in the main window MouthView.py - view handler for the mouth in the main window resources/lipsync.wxg - a wxGlade file defining the user interface layout for Papagayo-NG resources/papagayo-ng.ico - Windows icons resources/papagayo-ng.icns - MacOS X icons rsrc/ - various resources for Papagayo-NG, including button pictures, mouths, and language configuration/data rsrc/mouths/ - a folder containing the mouth pictures rsrc/languages/ - a folder containing the configuration and data for different languages _setup/setup.py - a script to build Papagayo-NG as a standalone Windows application _setup/setup_mac.py - a script to build Papagayo-NG as a standalone MacOS X application _setup/setup_ubuntu.sh - ### TODO (Confirm ???) _setup/package-linux.sh - ### TODO (Confirm ???) ----------------------------- Here are a couple tips for source code that you may want to modify: By default, Papagayo-NG uses the Preston Blair phoneme set. There is also Fleming & Dobbs phoneme set available. The phoneme sets are stored in the phonemes_*.py files. If you want to add a different set of phonemes, you can use existing sets as examples. Also, take a look at the instructions in the phonemes.py file. To add breakdowns for other languages create a new language configuration in rsrc/languages/<language> inside you need to place a configuration file (see italian for an example of how to configure a breakdown) You will also need to create a breakdown class. These live in breakdowns. The naming convention is <language>_breakdown.py. Just examine one of the existing ones for how to make it work. Make sure the function to call your breakdown processing is called breakdownWord. Papagayo-NG now only works with Moho, but support could be added for other animation software, 2D or 3D. To add support for other export formats, look in the LipsyncDoc.py file for the function LipsyncVoice:Export - this is where Papagayo-NG exports switch data for Moho. You will also need to modify the file LipsyncFrame.py to add a user interface for exporting the new format. ----------------------------- Original Copyright (C) 2005 Mike Clifton Contact:http://www.lostmarble.com Modifications (C) 2010 Benjamin Lau Contact:https://code.google.com/archive/p/papagayo/ Papagayo-NG (C) 2016 - Konstantin Dmitriev - Stefan Murawski - Azia Giles Abuara #TODO: Add People currently working on Papagayo-NG https://github.com/morevnaproject/papagayo-ng
About
Papagayo is a lip-syncing program designed to help you line up phonemes (mouth shapes) with the actual recorded sound of actors speaking. Papagayo makes it easy to lip sync animated characters by making the process very simple - just type in the words being spoken (or copy/paste them from the animation's script), then drag the words on top of th…
Resources
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- Python 94.2%
- HTML 4.5%
- Other 1.3%