2004-03-15 16:27:29 +00:00
|
|
|
/* GStreamer
|
|
|
|
* Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
|
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Library General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2 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
|
|
|
|
* Library General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Library General Public
|
|
|
|
* License along with this library; if not, write to the
|
|
|
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
|
|
* Boston, MA 02111-1307, USA.
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* First, include the header file for the plugin, to bring in the
|
|
|
|
* object definition and other useful things.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifdef HAVE_CONFIG_H
|
|
|
|
#include "config.h"
|
|
|
|
#endif
|
|
|
|
#include <gst/gst.h>
|
|
|
|
#include <avcodec.h>
|
|
|
|
|
|
|
|
extern gboolean gst_ffmpegcolorspace_register (GstPlugin * plugin);
|
|
|
|
|
|
|
|
static gboolean
|
|
|
|
plugin_init (GstPlugin * plugin)
|
|
|
|
{
|
gst/ffmpegcolorspace/: Sync back from gst-ffmpeg. Deprecates ffcolorspace. Adds pallette handling plus update from ff...
Original commit message from CVS:
* gst/ffmpegcolorspace/Makefile.am:
* gst/ffmpegcolorspace/avcodec.h:
* gst/ffmpegcolorspace/common.h:
* gst/ffmpegcolorspace/dsputil.c: (dsputil_static_init):
* gst/ffmpegcolorspace/dsputil.h:
* gst/ffmpegcolorspace/gstffmpeg.c: (plugin_init):
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_get_palette), (gst_ffmpeg_set_palette),
(gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_smpfmt_to_caps),
(gst_ffmpegcsp_codectype_to_caps), (gst_ffmpeg_caps_to_smpfmt),
(gst_ffmpeg_caps_to_pixfmt), (gst_ffmpegcsp_caps_with_codectype),
(gst_ffmpegcsp_avpicture_fill):
* gst/ffmpegcolorspace/gstffmpegcodecmap.h:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_caps_remove_format_info), (gst_ffmpegcsp_getcaps),
(gst_ffmpegcsp_pad_link), (gst_ffmpegcsp_get_type),
(gst_ffmpegcsp_base_init), (gst_ffmpegcsp_class_init),
(gst_ffmpegcsp_init), (gst_ffmpegcsp_chain),
(gst_ffmpegcsp_change_state), (gst_ffmpegcsp_set_property),
(gst_ffmpegcsp_get_property), (gst_ffmpegcolorspace_register):
* gst/ffmpegcolorspace/imgconvert.c:
(avcodec_get_chroma_sub_sample), (avcodec_get_pix_fmt_name),
(avcodec_get_pix_fmt), (avpicture_fill), (avpicture_layout),
(avpicture_get_size), (avcodec_get_pix_fmt_loss),
(avg_bits_per_pixel), (avcodec_find_best_pix_fmt1),
(avcodec_find_best_pix_fmt), (img_copy_plane), (img_copy),
(yuv422_to_yuv420p), (uyvy422_to_yuv420p), (uyvy422_to_yuv422p),
(yuv422_to_yuv422p), (yuv422p_to_yuv422), (yuv422p_to_uyvy422),
(uyvy411_to_yuv411p), (yuv420p_to_yuv422), (C_JPEG_TO_CCIR),
(img_convert_init), (img_apply_table), (shrink41), (shrink21),
(shrink12), (shrink22), (shrink44), (grow21_line), (grow41_line),
(grow21), (grow22), (grow41), (grow44), (conv411),
(gif_clut_index), (build_rgb_palette), (bitcopy_n), (mono_to_gray),
(monowhite_to_gray), (monoblack_to_gray), (gray_to_mono),
(gray_to_monowhite), (gray_to_monoblack), (avpicture_alloc),
(avpicture_free), (is_yuv_planar), (img_convert),
(get_alpha_info_pal8), (img_get_alpha_info), (deinterlace_line),
(deinterlace_line_inplace), (deinterlace_bottom_field),
(deinterlace_bottom_field_inplace), (avpicture_deinterlace):
* gst/ffmpegcolorspace/imgconvert_template.h:
* gst/ffmpegcolorspace/mem.c: (av_malloc), (av_realloc), (av_free):
* gst/ffmpegcolorspace/mmx.h:
* gst/ffmpegcolorspace/utils.c: (av_mallocz), (av_strdup),
(av_fast_realloc), (av_mallocz_static), (av_free_static),
(av_freep), (avcodec_get_context_defaults),
(avcodec_alloc_context), (avcodec_init):
Sync back from gst-ffmpeg. Deprecates ffcolorspace. Adds pallette
handling plus update from ffmpeg CVS. Large clean-up.
2004-10-31 14:33:18 +00:00
|
|
|
avcodec_init ();
|
2004-03-15 16:27:29 +00:00
|
|
|
gst_ffmpegcolorspace_register (plugin);
|
|
|
|
|
|
|
|
/* Now we can return the pointer to the newly created Plugin object. */
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
|
|
|
|
GST_VERSION_MINOR,
|
|
|
|
"ffmpegcolorspace",
|
|
|
|
"colorspace conversion copied from FFMpeg",
|
|
|
|
plugin_init,
|
|
|
|
FFMPEG_VERSION, "LGPL", "FFMpeg", "http://ffmpeg.sourceforge.net/")
|