[vlc-devel] [PATCH 00/14] [WIP] Stereo 3D support V2

Felix Abecassis felix.abecassis at gmail.com
Tue Sep 9 19:03:19 CEST 2014


This is the second iteration of the patch set aiming at supporting
stereo 3D in VLC.

Changes compared to the first iteration:
1) Comments should have been taken into account.
2) vouts are now requesting a 2D format by default.
3) The stereo conversion filter can have different behaviors when
   converting to 2D (left eye/right eye/both).
4) Support of avformat.
5) Support of stereo 3D for Direct3D was made more generic.
6) New variable, accessible from the UI, to force the stereo mode of a
   video since most samples are not tagged correctly.

Comments are again welcomed.

Felix Abecassis (14):
  core: add 3D stereo information to video_format_t
  swscale: bail out if 3D stereo conversion is requested
  video_filter: add a video filter converting between different 3D
    stereo formats
  vout: request a monoscopic video format by default for video output
    modules
  avcodec: retrieve decoded 3D stereo format if available
  decoder: forward 3D stereo type from packetizer to decoder
  h264: parse 3D stereo information from frame_packing_arrangement SEI
    message
  avformat: retrieve container-level 3D stereo format if available
  mkv: parse the StereoMode element on video tracks
  direct3D: implement support of NVIDIA 3D Vision
  vout: lock picture pool when restarting vout thread
  libvlc: add a variable for forcing stereo 3D mode
  vout: add support for forcing stereo 3D mode
  qt: add video submenu for forcing stereo 3D mode

 include/vlc_es.h                             |  38 +++
 modules/codec/avcodec/video.c                |  44 +++
 modules/demux/avformat/demux.c               |  41 +++
 modules/demux/mkv/matroska_segment_parse.cpp |  43 ++-
 modules/gui/qt4/menus.cpp                    |   6 +
 modules/packetizer/h264.c                    |  51 +++-
 modules/video_chroma/swscale.c               |   3 +
 modules/video_filter/Modules.am              |   2 +
 modules/video_filter/stereo3d_convert.c      | 408 +++++++++++++++++++++++++++
 modules/video_output/Modules.am              |   4 +-
 modules/video_output/directfb.c              |   1 +
 modules/video_output/fb.c                    |   1 +
 modules/video_output/kva.c                   |   1 +
 modules/video_output/msw/common.h            |  24 ++
 modules/video_output/msw/direct3d.c          |  62 ++--
 modules/video_output/msw/nvidia_3dvision.c   | 360 +++++++++++++++++++++++
 modules/video_output/msw/nvidia_3dvision.h   |  34 +++
 modules/video_output/msw/stereo3d_api.c      |  51 ++++
 modules/video_output/msw/stereo3d_api.h      |  87 ++++++
 modules/video_output/opengl.c                |   1 +
 modules/video_output/sdl.c                   |   1 +
 modules/video_output/vmem.c                  |   1 +
 modules/video_output/xcb/x11.c               |   1 +
 modules/video_output/xcb/xvideo.c            |   1 +
 src/Makefile.am                              |   2 +
 src/input/decoder.c                          |   6 +-
 src/libvlc-module.c                          |  26 ++
 src/misc/es_format.c                         |   3 +
 src/video_output/stereo3d.c                  | 106 +++++++
 src/video_output/stereo3d.h                  |  28 ++
 src/video_output/video_output.c              |  13 +
 31 files changed, 1429 insertions(+), 21 deletions(-)
 create mode 100644 modules/video_filter/stereo3d_convert.c
 create mode 100644 modules/video_output/msw/nvidia_3dvision.c
 create mode 100644 modules/video_output/msw/nvidia_3dvision.h
 create mode 100644 modules/video_output/msw/stereo3d_api.c
 create mode 100644 modules/video_output/msw/stereo3d_api.h
 create mode 100644 src/video_output/stereo3d.c
 create mode 100644 src/video_output/stereo3d.h

-- 
1.9.1




More information about the vlc-devel mailing list