⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lqt_atoms.h

📁 这个库实现了录象功能
💻 H
字号:
/******************************************************************************* lqt_atoms.h libquicktime - A library for reading and writing quicktime/avi/mp4 files. http://libquicktime.sourceforge.net Copyright (C) 2002 Heroine Virtual Ltd. Copyright (C) 2002-2007 Members of the libquicktime project. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA*******************************************************************************/#ifndef	_LQT_ATOMS_H_#define _LQT_ATOMS_H_#pragma GCC visibility push(default)/* Fine tuning of quicktime atoms. Use with caution *//** \defgroup atoms Fine tuning of quicktime atoms * * Libquicktime tries it's best to produce proper files, with all the * information neccesary for decoding the file with the right parameters. * In some cases however, it might be useful to tweak the corresponding atoms * individually. Please note that the functions described here, allow you full * control over the atoms. But they also allow you to create horribly * incompatible and undecodable files. Don't say you haven't been warned. */ /** \ingroup atoms *  \brief Set the field attributes of a video track *  \param file A quicktime handle *  \param track Track index (starting with 0) *  \param nfields number of fields (1 = progressive, 2 = interlaced) *  \param dominance field order/dominance (9 = top first, 14 = bottom first) *  \returns 1 if the call was successful, 0 if there is no such track or invalid number of fields or invalid dominance * *  The dominance parameter may also have the values 0, 1 and 6 but those are *  rarely used.  The Apple documentation at * *     http://developer.apple.com/quicktime/icefloe/dispatch019.html#fiel * *  has more detailed information about the 'fiel' atom. */int lqt_set_fiel(quicktime_t *file, int track, int nfields, int dominance);/** \ingroup atoms *  \brief Get the field attributes of a video track *  \param file A quicktime handle *  \param track Track index (starting with 0) *  \param nfields number of fields *  \param dominance field order/dominance *  \returns 1 if the call was successful, 0 if there is no such track * *  The Apple documentation at * *     http://developer.apple.com/quicktime/icefloe/dispatch019.html#fiel * *  has more detailed information about the 'fiel' atom. */int lqt_get_fiel(quicktime_t *file, int track, int *nfields, int *dominance);/* pasp atom *//*! \struct quicktime_pasp_t *  \brief Pixel Aspect atom structure*/typedef struct{	/*! Horizontal spacing */	int32_t hSpacing;	/*! Vertical spacing */	int32_t vSpacing;} quicktime_pasp_t;/** \ingroup atoms *  \brief Set the pixel aspect atom of a video track *  \param file A quicktime handle *  \param track Track index (starting with 0) *  \param pasp Pixel aspect atom *  \returns 1 if the call was successful, 0 if there is no such track */int  lqt_set_pasp(quicktime_t *file, int track, quicktime_pasp_t *pasp);/** \ingroup atoms *  \brief Get the pixel aspect atom of a video track *  \param file A quicktime handle *  \param track Track index (starting with 0) *  \param pasp Pixel aspect atom *  \returns 1 if the call was successful, 0 if there is no such track */int  lqt_get_pasp(quicktime_t *file, int track, quicktime_pasp_t *pasp);/*! \struct quicktime_clap_t *  \brief Clean Aperture atom structure*/typedef struct{	/*! width of clean aperture numerator, in pixels */	int32_t cleanApertureWidthN;	/*! width of clean aperture denominator, in pixels */	int32_t cleanApertureWidthD;	/*! height of clean aperture numerator, in pixels */	int32_t cleanApertureHeightN;	/*! height of clean aperture denominator, in pixels */	int32_t cleanApertureHeightD;	/*! horzontal offset of clean aperture (numerator) center minus (width-1)/2. Typically 0 */	int32_t horizOffN;	/*! horzontal offset of clean aperture (denominator) center minus (width-1)/2. Typically 0 */	int32_t horizOffD;	/*! vertical offset of clean aperture (numerator) center minus (width-1)/2. Typically 0 */	int32_t vertOffN;	/*! vertical offset of clean aperture (denominator) center minus (width-1)/2. Typically 0 */	int32_t vertOffD;} quicktime_clap_t;/** \ingroup atoms *  \brief Set the clean aperture attributes of a video track *  \param file A quicktime handle *  \param track Track index (starting with 0) *  \param clap Clean aperture atom *  \returns 1 if the call was successful, 0 if there is no such track * *  The Apple documentation at * *     http://developer.apple.com/quicktime/icefloe/dispatch019.html#clap * *  has more detailed information about the 'clap' atom. */int  lqt_set_clap(quicktime_t *file, int track, quicktime_clap_t *clap);/** \ingroup atoms *  \brief Get the clean aperture attributes of a video track *  \param file A quicktime handle *  \param track Track index (starting with 0) *  \param clap Clean aperture atom *  \returns 1 if the call was successful, 0 if there is no such track * *  The Apple documentation at * *     http://developer.apple.com/quicktime/icefloe/dispatch019.html#clap * *  has more detailed information about the 'clap' atom. */int  lqt_get_clap(quicktime_t *file, int track, quicktime_clap_t *clap);/*! \struct quicktime_colr_t *  \brief 'colr' ImageDescription Extension structure*/typedef struct{	/*! OSType = 'nclc' for video, 'prof' for print */	int32_t colorParamType;	/*! CIE 1931 xy chromaticity coordinates of red, green, blue primaries and white point */	int16_t primaries;	/*! Nonlinear transfer function from RGB to Er/Eg/Eb */	int16_t transferFunction;	/*! Matrix from ErEgEb to Ey/Ecb/Ecr */	int16_t matrix;} quicktime_colr_t;/** \ingroup atoms *  \brief Set the 'colr' ImageDescription Extension of a video track *  \param file A quicktime handle *  \param track Track index (starting with 0) *  \param colr Colr atom *  \returns 1 if the call was successful, 0 if there is no such track * *  The Apple documentation at * *     http://developer.apple.com/quicktime/icefloe/dispatch019.html#colr * *  has more detailed information about the 'colr' atom. */int  lqt_set_colr(quicktime_t *file, int track, quicktime_colr_t *colr);/** \ingroup atoms *  \brief Get the 'colr' ImageDescription Extension of a video track *  \param file A quicktime handle *  \param track Track index (starting with 0) *  \param colr Colr atom *  \returns 1 if the call was successful, 0 if there is no such track * *  The Apple documentation at * *     http://developer.apple.com/quicktime/icefloe/dispatch019.html#colr * *  has more detailed information about the 'colr' atom. */int  lqt_get_colr(quicktime_t *file, int track, quicktime_colr_t *colr);#pragma GCC visibility pop#endif /* _LQT_ATOMS_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -