Skip to content
Multi-codec and file format support for QuickTime on Mac
Branch: master
Clone or download
Latest commit 7792726 Aug 10, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Binaries Update yasm to 1.2; remove ppc slices from ragel binaries Dec 10, 2011
CoreAudio
FFissionCodec
Opener
Patches
Perian.xcodeproj Swscale-based colorspace converter for reference Nov 16, 2012
Plists
Release Added support for Indeo 4 Feb 14, 2013
Resources Some changes to make the project build faster Mar 5, 2012
Subtitles Remove some font API code that seems to be crashing in 10.8 Jan 23, 2013
UniversalDetector Some changes to make the project build faster Mar 5, 2012
Update Checker Sources
scripts Somewhat faster builds Dec 11, 2010
CPFPerianPrefPaneController.h Some changes to make the project build faster Mar 5, 2012
CPFPerianPrefPaneController.m Remove PPC compilation and require 10.6. Jul 24, 2011
CodecIDs.h Added mpeg layer 1 and 2 to compressed codec handling. Apr 17, 2011
Codecprintf.c Xcode project cleanup and Lion SDK updates Dec 10, 2011
Codecprintf.h
ColorConversions.c
ColorConversions.h
CommonUtils.c Remove some PPC only code Nov 16, 2012
CommonUtils.h Remove some PPC only code Nov 16, 2012
Components.k.h Fix build with Xcode 4.3 by adding back all the ACPublic stuff Mar 5, 2012
CompressAudioCodec.cpp Some changes to make the project build faster Mar 5, 2012
CompressAudioCodec.h
CompressCodecUtils.c
CompressCodecUtils.h Proxy components for audio/video to handle the stripped header case i… Aug 16, 2010
CompressVideoCodec.c Some changes to make the project build faster Mar 5, 2012
CompressVideoCodecDispatch.h
DataHandlerCallback.cpp
DataHandlerCallback.h Fix some warnings found by enabling suspicious integer conversions Nov 16, 2012
FFmpegUtils.c
FFmpegUtils.h New ColorConversions API Nov 16, 2012
FFusionCodec.c Swscale-based colorspace converter for reference Nov 16, 2012
FFusionCodecDispatch.h Use ComponentNoError for Queue* calls. Oct 23, 2009
FrameBuffer.c Xcode project cleanup and Lion SDK updates Dec 10, 2011
FrameBuffer.h Memory leaks found by valgrind: Jun 25, 2009
GBPerianPanePListGenerator.h Automatic generation of the Components key in the prefpane plist. Jan 6, 2007
GBPerianPanePListGenerator.m Switch to 10.5 SDK and gcc 4.2. Sep 3, 2009
LICENSE.txt As discussed and confirmed on the list, we are now switching complete… Dec 31, 2006
Makefile Fixing this portion of the makefile to build perianpane. Will readd a… Apr 18, 2007
MatroskaCodecIDs.cpp
MatroskaCodecIDs.h
MatroskaExport.cpp
MatroskaExport.h Initial import of MatroskaQT, disabled until libebml and libmatroska … Sep 26, 2006
MatroskaExport.r Clear svn:executable set on source files. Sep 3, 2009
MatroskaExportDispatch.h Clear svn:executable set on source files. Sep 3, 2009
MatroskaExportVersion.h
MatroskaImport.cpp Some changes to make the project build faster Mar 5, 2012
MatroskaImport.h Fix some warnings and static analyzer complaints Dec 19, 2011
MatroskaImport.r Added can import partial to the importer flags since it seems to be t… Apr 16, 2011
MatroskaImportDispatch.h
MatroskaImportPrivate.cpp Defensive check against reported crash in MatroskaImport::~MatroskaIm… Jul 25, 2012
MkvExportPrivate.cpp Build libebml/libmatroska from the XCode project. Sep 30, 2006
MkvExportPrivate.h
PerianAviImporter.r Added can import partial to the importer flags since it seems to be t… Apr 16, 2011
PerianResourceIDs.h.m4 Proxy components for audio/video to handle the stripped header case i… Aug 16, 2010
PerianResources.r Add mcfg resources for the AVI importer and polish rez Apr 15, 2011
Prefix.h
README.md Added README. Aug 10, 2018
TextSubCodec.c
TextSubCodecDispatch.h
VobSubCodec.c Some changes to make the project build faster Mar 5, 2012
VobSubCodecDispatch.h Use ComponentNoError for Queue* calls. Oct 23, 2009
archiveComponents.sh Fixed the build script to work with the new prefpane name. Apr 18, 2007
bitstream_info.c Fix some warnings found by enabling suspicious integer conversions Nov 16, 2012
bitstream_info.h
codecID.c.m4 Xcode project cleanup and Lion SDK updates Dec 10, 2011
codecList.m4 Added support for Indeo 4 Feb 14, 2013
codecResources.r.m4 Switched to another new codec list system. This should be siginifican… Jul 30, 2009
createStaticLibs.sh
defines.m4 Switched to another new codec list system. This should be siginifican… Jul 30, 2009
ff_MovieImport.c Distrust all packet durations in flv, parse headers a bit more Jan 23, 2013
ff_MovieImportDispatch.h
ff_MovieImportVersion.h Add mcfg resources for the AVI importer and polish rez Apr 15, 2011
ff_dataref.c Reduce the number of deprecated libav* APIs in use Nov 13, 2012
ff_private.c Distrust all packet durations in flv, parse headers a bit more Jan 23, 2013
ff_private.h Distrust all packet durations in flv, parse headers a bit more Jan 23, 2013

README.md

Moved to Github

I long hosted Perian on my own server using SVN. I no longer used SVN for anything and I wanted to shutdown the SVN repositories on my server but I don't want Perian's source to be lost to time. So I did a quick SVN->GIT conversion of the repositories and moved them here to Github. I didn't bother with converting the authors from the SVN usernames (which were local to my server) to name/emails. In the early days of the repository, we did build FFmpeg binaries and include them in the repository. I explicitly excluded these binaries in this conversion so those cloning it won't waste space/bandwidth on these unused binaries.

Directory Structure

I've split out the mirrors of the source for libebml, libmatroska, and ffmpeg into separate repositories. The directory structure of SVN allowed them to be in the same repository easily but this structure is not appropriate for GIT repositories.

Building

I've not built Perian in a long time and the process of this conversion is no exception. It was designed for a much older version of OS X than is current so it may no longer build anymore. If you want to attempt to build Perian, you will first need clone the aforementioned repositories as well and put all in the same directory. You will need to remove the perian- prefix from the directory names when you clone the other repositories. Then you will need to also clone a52codec and put it as a52codec within the perian directory. Good luck.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.