[vlc-devel] [PATCH] A new Zip demuxer for VLC

jpeg at videolan.org jpeg at videolan.org
Sat Jan 10 22:50:46 CET 2009


From: Jean-Philippe Andre <jpeg at via.ecp.fr>

Hi guys,

This patch adds a new Zip demuxer for VLC.
It does not work in a way similar as the RAR filter, as it is based
on 2 modules: access + demux.

Features:
- It can read albums in a Zip file, and it might be used in the future
   to read subtitles in .zip archives.
- It supports reading medias in a zip on any accessible support
   (using core inputs), eg. zip over http.
- It supports seeking (I think not fast-seeking).

Limitations:
- It does not support multi-part archives.
- It does not [yet] support encryption, but if this feature is wanted, then
   this can 'easily' be added (see crypt.h).
- Because of the MRL format, it does not support reading a media in a zip
   in a zip (no typo here).

Note:
- The second part of the patch is actually a copy of
   modules/skins2/unzip/*  to  modules/demux/zip/

Even if I have Git access, I prefer not committing this before review.
Thanks in advance for your remarks and suggestions.

Best regards,

-- 
Jean-Philippe André (jpeg)

Jean-Philippe Andre (3):
  Zip: Module build system: Modules.am, configure.ac
  Zip: Import the Zip library
  Zip: playlist demux and zip:// access

 configure.ac                  |    9 +
 modules/demux/Modules.am      |    2 +-
 modules/demux/zip/Modules.am  |    6 +
 modules/demux/zip/crypt.h     |  132 ++++
 modules/demux/zip/ioapi.c     |  185 +++++
 modules/demux/zip/ioapi.h     |   75 ++
 modules/demux/zip/unzip.c     | 1601 +++++++++++++++++++++++++++++++++++++++++
 modules/demux/zip/unzip.h     |  357 +++++++++
 modules/demux/zip/zip.h       |   76 ++
 modules/demux/zip/zipaccess.c |  443 ++++++++++++
 modules/demux/zip/zipdemux.c  |  632 ++++++++++++++++
 11 files changed, 3517 insertions(+), 1 deletions(-)
 create mode 100644 modules/demux/zip/Modules.am
 create mode 100644 modules/demux/zip/crypt.h
 create mode 100644 modules/demux/zip/ioapi.c
 create mode 100644 modules/demux/zip/ioapi.h
 create mode 100644 modules/demux/zip/unzip.c
 create mode 100644 modules/demux/zip/unzip.h
 create mode 100644 modules/demux/zip/zip.h
 create mode 100644 modules/demux/zip/zipaccess.c
 create mode 100644 modules/demux/zip/zipdemux.c





More information about the vlc-devel mailing list