[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