mirror of
https://github.com/zebrajr/opencv.git
synced 2025-12-06 12:19:50 +01:00
videoio(doc): add 'videoio_hwaccel' group, fix typos
This commit is contained in:
parent
be24659c03
commit
4287961aed
|
|
@ -66,7 +66,7 @@ extension, its first version. A direct limitation of this is that you cannot sav
|
||||||
larger than 2 GB. Furthermore you can only create and expand a single video track inside the
|
larger than 2 GB. Furthermore you can only create and expand a single video track inside the
|
||||||
container. No audio or other track editing support here. Nevertheless, any video codec present on
|
container. No audio or other track editing support here. Nevertheless, any video codec present on
|
||||||
your system might work. If you encounter some of these limitations you will need to look into more
|
your system might work. If you encounter some of these limitations you will need to look into more
|
||||||
specialized video writing libraries such as *FFMpeg* or codecs as *HuffYUV*, *CorePNG* and *LCL*. As
|
specialized video writing libraries such as *FFmpeg* or codecs as *HuffYUV*, *CorePNG* and *LCL*. As
|
||||||
an alternative, create the video track with OpenCV and expand it with sound tracks or convert it to
|
an alternative, create the video track with OpenCV and expand it with sound tracks or convert it to
|
||||||
other formats by using video manipulation programs such as *VirtualDub* or *AviSynth*.
|
other formats by using video manipulation programs such as *VirtualDub* or *AviSynth*.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ Video I/O with OpenCV Overview {#videoio_overview}
|
||||||
|
|
||||||
### See also:
|
### See also:
|
||||||
- @ref videoio "Video I/O Code Reference"
|
- @ref videoio "Video I/O Code Reference"
|
||||||
- Tutorials: @ref tutorial_table_of_content_videoio
|
- Tutorials: @ref tutorial_table_of_content_app
|
||||||
|
|
||||||
General Information
|
General Information
|
||||||
===================
|
===================
|
||||||
|
|
@ -15,7 +15,7 @@ I/O APIs used as backend.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Some backends such as (DSHOW) Direct Show, Microsoft Media Foundation (MSMF),
|
Some backends such as Direct Show (DSHOW), Microsoft Media Foundation (MSMF),
|
||||||
Video 4 Linux (V4L), etc... are interfaces to the video I/O library provided by the operating system.
|
Video 4 Linux (V4L), etc... are interfaces to the video I/O library provided by the operating system.
|
||||||
|
|
||||||
Some others backends like OpenNI2 for Kinect, Intel Perceptual Computing SDK, GStreamer,
|
Some others backends like OpenNI2 for Kinect, Intel Perceptual Computing SDK, GStreamer,
|
||||||
|
|
@ -90,7 +90,7 @@ The FFmpeg library
|
||||||
OpenCV can use the FFmpeg library (http://ffmpeg.org/) as backend to record, convert and stream audio and video.
|
OpenCV can use the FFmpeg library (http://ffmpeg.org/) as backend to record, convert and stream audio and video.
|
||||||
FFmpeg is a complete, cross-reference solution. If you enable FFmpeg while configuring OpenCV than
|
FFmpeg is a complete, cross-reference solution. If you enable FFmpeg while configuring OpenCV than
|
||||||
CMake will download and install the binaries in `OPENCV_SOURCE_CODE/3rdparty/ffmpeg/`. To use
|
CMake will download and install the binaries in `OPENCV_SOURCE_CODE/3rdparty/ffmpeg/`. To use
|
||||||
FFmpeg at runtime, you must deploy the FFMepg binaries with your application.
|
FFmpeg at runtime, you must deploy the FFmpeg binaries with your application.
|
||||||
|
|
||||||
@note FFmpeg is licensed under the GNU Lesser General Public License (LGPL) version 2.1 or later.
|
@note FFmpeg is licensed under the GNU Lesser General Public License (LGPL) version 2.1 or later.
|
||||||
See `OPENCV_SOURCE_CODE/3rdparty/ffmpeg/readme.txt` and http://ffmpeg.org/legal.html for details and
|
See `OPENCV_SOURCE_CODE/3rdparty/ffmpeg/readme.txt` and http://ffmpeg.org/legal.html for details and
|
||||||
|
|
|
||||||
|
|
@ -52,10 +52,11 @@
|
||||||
|
|
||||||
### See also:
|
### See also:
|
||||||
- @ref videoio_overview
|
- @ref videoio_overview
|
||||||
- Tutorials: @ref tutorial_table_of_content_videoio
|
- Tutorials: @ref tutorial_table_of_content_app
|
||||||
@{
|
@{
|
||||||
@defgroup videoio_flags_base Flags for video I/O
|
@defgroup videoio_flags_base Flags for video I/O
|
||||||
@defgroup videoio_flags_others Additional flags for video I/O API backends
|
@defgroup videoio_flags_others Additional flags for video I/O API backends
|
||||||
|
@defgroup videoio_hwaccel Hardware-accelerated video decoding and encoding
|
||||||
@defgroup videoio_c C API for video I/O
|
@defgroup videoio_c C API for video I/O
|
||||||
@defgroup videoio_ios iOS glue for video I/O
|
@defgroup videoio_ios iOS glue for video I/O
|
||||||
@defgroup videoio_winrt WinRT glue for video I/O
|
@defgroup videoio_winrt WinRT glue for video I/O
|
||||||
|
|
@ -211,6 +212,10 @@ enum VideoWriterProperties {
|
||||||
//! @addtogroup videoio_flags_others
|
//! @addtogroup videoio_flags_others
|
||||||
//! @{
|
//! @{
|
||||||
|
|
||||||
|
/** @name Hardware acceleration support
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
/** @brief Video Acceleration type
|
/** @brief Video Acceleration type
|
||||||
*
|
*
|
||||||
* Used as value in #CAP_PROP_HW_ACCELERATION and #VIDEOWRITER_PROP_HW_ACCELERATION
|
* Used as value in #CAP_PROP_HW_ACCELERATION and #VIDEOWRITER_PROP_HW_ACCELERATION
|
||||||
|
|
@ -231,6 +236,8 @@ enum VideoAccelerationType
|
||||||
VIDEO_ACCELERATION_MFX = 4, //!< libmfx (Intel MediaSDK/oneVPL)
|
VIDEO_ACCELERATION_MFX = 4, //!< libmfx (Intel MediaSDK/oneVPL)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//! @} Hardware acceleration support
|
||||||
|
|
||||||
/** @name IEEE 1394 drivers
|
/** @name IEEE 1394 drivers
|
||||||
@{
|
@{
|
||||||
*/
|
*/
|
||||||
|
|
@ -521,8 +528,9 @@ enum { CAP_PROP_XI_DOWNSAMPLING = 400, //!< Chan
|
||||||
|
|
||||||
//! @} XIMEA
|
//! @} XIMEA
|
||||||
|
|
||||||
/** @name XIMEA Camera API
|
|
||||||
* @{
|
/** @name ARAVIS Camera API
|
||||||
|
@{
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//! Properties of cameras available through ARAVIS backend
|
//! Properties of cameras available through ARAVIS backend
|
||||||
|
|
@ -532,7 +540,6 @@ enum { CAP_PROP_ARAVIS_AUTOTRIGGER = 600 //!< Autom
|
||||||
//! @} ARAVIS
|
//! @} ARAVIS
|
||||||
|
|
||||||
/** @name AVFoundation framework for iOS
|
/** @name AVFoundation framework for iOS
|
||||||
OS X Lion will have the same API
|
|
||||||
@{
|
@{
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
@ -544,6 +551,9 @@ enum { CAP_PROP_IOS_DEVICE_FOCUS = 9001,
|
||||||
CAP_PROP_IOS_DEVICE_TORCH = 9005
|
CAP_PROP_IOS_DEVICE_TORCH = 9005
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//! @} AVFoundation framework for iOS
|
||||||
|
|
||||||
|
|
||||||
/** @name Smartek Giganetix GigEVisionSDK
|
/** @name Smartek Giganetix GigEVisionSDK
|
||||||
@{
|
@{
|
||||||
*/
|
*/
|
||||||
|
|
@ -1089,8 +1099,10 @@ protected:
|
||||||
Size frameSize, bool isColor = true);
|
Size frameSize, bool isColor = true);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//! @cond IGNORED
|
||||||
template<> struct DefaultDeleter<CvCapture>{ CV_EXPORTS void operator ()(CvCapture* obj) const; };
|
template<> struct DefaultDeleter<CvCapture>{ CV_EXPORTS void operator ()(CvCapture* obj) const; };
|
||||||
template<> struct DefaultDeleter<CvVideoWriter>{ CV_EXPORTS void operator ()(CvVideoWriter* obj) const; };
|
template<> struct DefaultDeleter<CvVideoWriter>{ CV_EXPORTS void operator ()(CvVideoWriter* obj) const; };
|
||||||
|
//! @endcond IGNORED
|
||||||
|
|
||||||
//! @} videoio
|
//! @} videoio
|
||||||
|
|
||||||
|
|
|
||||||
34
modules/videoio/include/opencv2/videoio/doc/hwaccel.doc.hpp
Normal file
34
modules/videoio/include/opencv2/videoio/doc/hwaccel.doc.hpp
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
// This file is part of OpenCV project.
|
||||||
|
// It is subject to the license terms in the LICENSE file found in the top-level directory
|
||||||
|
// of this distribution and at http://opencv.org/license.html.
|
||||||
|
|
||||||
|
//
|
||||||
|
// This file should not be used with compiler (documentation only)
|
||||||
|
//
|
||||||
|
|
||||||
|
namespace cv {
|
||||||
|
/** @addtogroup videoio_hwaccel
|
||||||
|
This section contains information about API to control Hardware-accelerated video decoding and encoding.
|
||||||
|
|
||||||
|
@note Check [Wiki page](https://github.com/opencv/opencv/wiki/Video-IO-hardware-acceleration)
|
||||||
|
for description of supported hardware / software configurations and available benchmarks
|
||||||
|
|
||||||
|
cv::VideoCapture properties:
|
||||||
|
- #CAP_PROP_HW_ACCELERATION (as #VideoAccelerationType)
|
||||||
|
- #CAP_PROP_HW_DEVICE
|
||||||
|
|
||||||
|
cv::VideoWriter properties:
|
||||||
|
- #VIDEOWRITER_PROP_HW_ACCELERATION (as #VideoAccelerationType)
|
||||||
|
- #VIDEOWRITER_PROP_HW_DEVICE
|
||||||
|
|
||||||
|
Properties are supported by these backends:
|
||||||
|
|
||||||
|
- #CAP_FFMPEG
|
||||||
|
- #CAP_GSTREAMER
|
||||||
|
- #CAP_MSMF (Windows)
|
||||||
|
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @} */
|
||||||
|
} // namespace
|
||||||
|
|
@ -223,7 +223,7 @@ inline Ptr<VideoWriter> createWriter(const string &backend, const string &file_n
|
||||||
}
|
}
|
||||||
else if (backend == "ffmpeg")
|
else if (backend == "ffmpeg")
|
||||||
{
|
{
|
||||||
cout << "Created FFMpeg writer ( " << file_name << ", FPS=" << fps << ", Size=" << sz << " )" << endl;
|
cout << "Created FFmpeg writer ( " << file_name << ", FPS=" << fps << ", Size=" << sz << " )" << endl;
|
||||||
return makePtr<VideoWriter>(file_name, CAP_FFMPEG, getValue(fourccByCodec(), codec, "Invalid codec"), fps, sz, true);
|
return makePtr<VideoWriter>(file_name, CAP_FFMPEG, getValue(fourccByCodec(), codec, "Invalid codec"), fps, sz, true);
|
||||||
}
|
}
|
||||||
return Ptr<VideoWriter>();
|
return Ptr<VideoWriter>();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user