summaryrefslogtreecommitdiffstats
path: root/gst
Commit message (Collapse)AuthorAgeFilesLines
...
* [MOVED FROM BAD 34/56] gst/deinterlace2/tvtime/: Add the MMX registers to ↵Sebastian Dröge2009-05-132-5/+5
| | | | | | | | | | the clobbered registers only if __MMX__ is defined. Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: Add the MMX registers to the clobbered registers only if __MMX__ is defined.
* [MOVED FROM BAD 33/56] gst/deinterlace2/: Enable tomsmocomp again as the C ↵Sebastian Dröge2009-05-132-10/+4
| | | | | | | | | | | | port will be ready for the next release. Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_methods_get_type), (gst_deinterlace2_set_method), (gst_deinterlace2_class_init): Enable tomsmocomp again as the C port will be ready for the next release.
* [MOVED FROM BAD 32/56] gst/deinterlace2/gstdeinterlace2.c: Don't use ↵Sebastian Dröge2009-05-131-9/+199
| | | | | | | | | | | proxy_getcaps() but implement our own getcaps() function that doubles/h... Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_init), (gst_greatest_common_divisor), (gst_fraction_double), (gst_deinterlace2_getcaps), (gst_deinterlace2_setcaps): Don't use proxy_getcaps() but implement our own getcaps() function that doubles/halfs the framerate if all fields should be sent out.
* [MOVED FROM BAD 31/56] Disable the tomsmocomp algorithm for this release as ↵Sebastian Dröge2009-05-136-19/+31
| | | | | | | | | | | | | | | | | | | | | | | | it's buggy and has no C implementation yet. Original commit message from CVS: * configure.ac: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_methods_get_type), (gst_deinterlace2_set_method), (gst_deinterlace2_class_init), (gst_deinterlace2_init): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: (gst_deinterlace_method_greedy_l_class_init): * gst/deinterlace2/tvtime/greedyh.c: (gst_deinterlace_method_greedy_h_class_init): * gst/deinterlace2/tvtime/vfir.c: (gst_deinterlace_method_vfir_class_init): Disable the tomsmocomp algorithm for this release as it's buggy and has no C implementation yet. Build the deinterlace2 plugin on all architectures but still mark it as experimental. Build the x86 inline assembly only if GCC inline assembly is supported and only on x86 or amd64. Fixes bug #543286.
* [MOVED FROM BAD 30/56] gst/deinterlace2/tvtime/: Fix build on x86_64Edward Hervey2009-05-133-0/+6
| | | | | | | | | | | Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (gst_deinterlace_method_greedy_l_class_init): * gst/deinterlace2/tvtime/greedyh.c: (gst_deinterlace_method_greedy_h_class_init): * gst/deinterlace2/tvtime/vfir.c: (gst_deinterlace_method_vfir_class_init): Fix build on x86_64
* [MOVED FROM BAD 29/56] gst/deinterlace2/tvtime/greedyh.asm: Always use the C ↵Sebastian Dröge2009-05-131-5/+5
| | | | | | | | | | | implementation if width is not a multiple of 4. The assembly op... Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: Always use the C implementation if width is not a multiple of 4. The assembly optimized version only handle this and calling the C implementation for the remaining part doesn't work because it needs previous calculations.
* [MOVED FROM BAD 28/56] gst/deinterlace2/tvtime/: Some cleanup, use 3DNOW ↵Sebastian Dröge2009-05-136-52/+51
| | | | | | | | | | | | | | | instead of TDNOW in macros. Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: * gst/deinterlace2/tvtime/greedyhmacros.h: Some cleanup, use 3DNOW instead of TDNOW in macros. * gst/deinterlace2/tvtime/tomsmocomp.c: (gst_deinterlace_method_tomsmocomp_class_init): * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: The SSE method in fact only needs MMXEXT, declare it as such.
* [MOVED FROM BAD 27/56] Don't use declarations after statements in the ↵Sebastian Dröge2009-05-131-2/+2
| | | | | | | | | remaining code. Original commit message from CVS: * ext/spc/gstspc.c: (spc_setup): * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: Don't use declarations after statements in the remaining code.
* [MOVED FROM BAD 26/56] ↵Sebastian Dröge2009-05-131-11/+11
| | | | | | | | | | gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: Mark internal processing functions as static inline for quite ... Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: Mark internal processing functions as static inline for quite some speedup as they're used only once and need to get many local variables passed as parameter.
* [MOVED FROM BAD 25/56] gst/deinterlace2/gstdeinterlace2.*: Call the current ↵Sebastian Dröge2009-05-132-210/+206
| | | | | | | | | | | | | | | | | | instance "self" instead of "object". Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_method_deinterlace_frame), (gst_deinterlace2_set_method), (gst_deinterlace2_init), (gst_deinterlace2_reset_history), (gst_deinterlace2_reset), (gst_deinterlace2_set_property), (gst_deinterlace2_get_property), (gst_deinterlace2_pop_history), (gst_deinterlace2_head_history), (gst_deinterlace2_push_history), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_event), (gst_deinterlace2_src_query): * gst/deinterlace2/gstdeinterlace2.h: Call the current instance "self" instead of "object".
* [MOVED FROM BAD 24/56] gst/deinterlace2/gstdeinterlace2.*: Include latency ↵Sebastian Dröge2009-05-132-37/+47
| | | | | | | | | | | | | | of the method in the returned latency. Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_method_get_latency), (gst_deinterlace2_set_method), (gst_deinterlace2_class_init), (gst_deinterlace2_push_history), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_src_query): * gst/deinterlace2/gstdeinterlace2.h: Include latency of the method in the returned latency. Fix outputting of all fields, i.e. doubling of the framerate.
* [MOVED FROM BAD 23/56] gst/deinterlace2/: Use a GstObject subtype for the ↵Sebastian Dröge2009-05-1312-461/+700
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | deinterlacing methods and export the different settings for each d... Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_method_class_init), (gst_deinterlace_method_init), (gst_deinterlace_method_deinterlace_frame), (gst_deinterlace_method_get_fields_required), (gst_deinterlace2_methods_get_type), (_do_init), (gst_deinterlace2_set_method), (gst_deinterlace2_class_init), (gst_deinterlace2_child_proxy_get_child_by_index), (gst_deinterlace2_child_proxy_get_children_count), (gst_deinterlace2_child_proxy_interface_init), (gst_deinterlace2_init), (gst_deinterlace2_finalize), (gst_deinterlace2_chain), (gst_deinterlace2_src_query): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_c), (deinterlace_greedy_packed422_scanline_mmx), (deinterlace_greedy_packed422_scanline_mmxext), (deinterlace_frame_di_greedy), (gst_deinterlace_method_greedy_l_set_property), (gst_deinterlace_method_greedy_l_get_property), (gst_deinterlace_method_greedy_l_class_init), (gst_deinterlace_method_greedy_l_init): * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C), (deinterlace_frame_di_greedyh), (gst_deinterlace_method_greedy_h_set_property), (gst_deinterlace_method_greedy_h_get_property), (gst_deinterlace_method_greedy_h_class_init), (gst_deinterlace_method_greedy_h_init): * gst/deinterlace2/tvtime/greedyh.h: * gst/deinterlace2/tvtime/plugins.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (gst_deinterlace_method_tomsmocomp_set_property), (gst_deinterlace_method_tomsmocomp_get_property), (gst_deinterlace_method_tomsmocomp_class_init), (gst_deinterlace_method_tomsmocomp_init): * gst/deinterlace2/tvtime/tomsmocomp.h: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir), (gst_deinterlace_method_vfir_class_init), (gst_deinterlace_method_vfir_init): Use a GstObject subtype for the deinterlacing methods and export the different settings for each deinterlacing method via GObject properties. Implement GstChildProxy interface to allow access to the used deinterlacing method and to allow adjusting the different settings. Move global variables of the tomsmocomp deinterlacing method into function local variables to make it possible to use this deinterlacing method from different instances.
* [MOVED FROM BAD 22/56] gst/deinterlace2/tvtime/greedyh.asm: Support widths ↵Sebastian Dröge2009-05-131-0/+5
| | | | | | | | | that are not a multiply of 4 when using the assembly optimized gr... Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: Support widths that are not a multiply of 4 when using the assembly optimized greedyh implementations.
* [MOVED FROM BAD 21/56] gst/deinterlace2/tvtime/greedyh.c: Only build the ↵Sebastian Dröge2009-05-131-0/+8
| | | | | | | | | assembly optimized implementations on x86. Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh): Only build the assembly optimized implementations on x86.
* [MOVED FROM BAD 20/56] gst/deinterlace2/: Remove useless file and mark ↵Sebastian Dröge2009-05-135-55/+47
| | | | | | | | | | | | | | | everything possible as static. Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/tvtime/tomsmocomp.c: (tomsmocomp_init), (tomsmocomp_filter_mmx), (tomsmocomp_filter_3dnow), (tomsmocomp_filter_sse), (deinterlace_frame_di_tomsmocomp): * gst/deinterlace2/tvtime/tomsmocomp.h: Remove useless file and mark everything possible as static. * gst/deinterlace2/tvtime/greedy.c: * gst/deinterlace2/tvtime/greedyh.c: Use "_stdint.h" instead of <stdint.h>.
* [MOVED FROM BAD 19/56] gst/deinterlace2/: Get rid of speedy.[ch] as we don't ↵Sebastian Dröge2009-05-1311-3320/+21
| | | | | | | | | | | | | | | | | | | | | | use most of it's code anyway and it doesn't seem to be relicens... Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_init): * gst/deinterlace2/tvtime/greedy.c: (deinterlace_frame_di_greedy): * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh): * gst/deinterlace2/tvtime/speedtools.h: * gst/deinterlace2/tvtime/speedy.c: * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy): * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir): Get rid of speedy.[ch] as we don't use most of it's code anyway and it doesn't seem to be relicensed to LGPL. Use memcpy() instead of the speedy memcpy everywhere instead. * gst/deinterlace2/gstdeinterlace2.h: Remove many unused declarations.
* [MOVED FROM BAD 18/56] gst/deinterlace2/gstdeinterlace2.c: Divide latency be ↵Sebastian Dröge2009-05-131-0/+1
| | | | | | | | 2 to convert from fields to frames. Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_src_query): Divide latency be 2 to convert from fields to frames.
* [MOVED FROM BAD 17/56] gst/deinterlace2/tvtime/greedy.c: Don't use scanlines ↵Sebastian Dröge2009-05-134-200/+145
| | | | | | | | | | | | | | | | | | | | | | | | | | | function from gstdeinterlace2 as it's not appropiate for this m... Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_c), (deinterlace_greedy_packed422_scanline_mmx), (deinterlace_greedy_packed422_scanline_mmxext), (deinterlace_frame_di_greedy): Don't use scanlines function from gstdeinterlace2 as it's not appropiate for this method. Instead implement deinterlace_frame function by taking the one from greedyh. * gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C): Small fix for the C implementation. * gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir): Don't use the scanlines function from gstdeinterlace2 as it's only used for this method and will be removed. Instead implement deinterlace_frame function and make it a bit more efficient. * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_class_init), (gst_deinterlace2_set_method), (gst_deinterlace2_push_history), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_event), (gst_deinterlace2_src_query): Fix coding style and remove scanlines function as it's unused now.
* [MOVED FROM BAD 16/56] gst/deinterlace2/tvtime/: Add a C implementation for ↵Sebastian Dröge2009-05-133-341/+442
| | | | | | | | | | | | | the greedyh deinterlacing method, clean up the code a bit and ma... Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C), (deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method): * gst/deinterlace2/tvtime/greedyhmacros.h: Add a C implementation for the greedyh deinterlacing method, clean up the code a bit and mark the SSE version as MMXEXT as it doesn't require any SSE instructions.
* [MOVED FROM BAD 15/56] gst/deinterlace2/gstdeinterlace2.c: If we're ↵Sebastian Dröge2009-05-131-13/+46
| | | | | | | | | | | outputting all fields the framerate has to be doubled. Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_set_property), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps): If we're outputting all fields the framerate has to be doubled. Set duration on the outgoing buffers.
* [MOVED FROM BAD 14/56] ↵Edward Hervey2009-05-131-2/+0
| | | | | | | | gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Remove unneeded macros that break build on macosx. Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Remove unneeded macros that break build on macosx.
* [MOVED FROM BAD 13/56] gst/deinterlace2/tvtime/greedy.c: Optimize MMX/MMXEXT ↵Sebastian Dröge2009-05-131-6/+22
| | | | | | | | | | | | implementations a bit by requiring two less memory accesses and... Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_mmx), (deinterlace_greedy_packed422_scanline_mmxext): Optimize MMX/MMXEXT implementations a bit by requiring two less memory accesses and fix the workaround for the missing right shift on bytes to unset the highest bit of every byte.
* [MOVED FROM BAD 12/56] gst/deinterlace2/tvtime/greedy.c: Remove sfence ↵Sebastian Dröge2009-05-131-1/+0
| | | | | | | | | | instruction as it's not needed and actually is an SSE instruction. Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_mmxext): Remove sfence instruction as it's not needed and actually is an SSE instruction.
* [MOVED FROM BAD 11/56] gst/deinterlace2/tvtime/greedy.c: Add plain MMX ↵Sebastian Dröge2009-05-131-0/+104
| | | | | | | | | | implementation for the greedyl method. Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_mmx), (deinterlace_greedy_packed422_scanline): Add plain MMX implementation for the greedyl method.
* [MOVED FROM BAD 10/56] gst/deinterlace2/Makefile.am: Move the assembly ↵Sebastian Dröge2009-05-132-22/+21
| | | | | | | | | | | includes to noinst_HEADERS where they belong. Original commit message from CVS: * gst/deinterlace2/Makefile.am: Move the assembly includes to noinst_HEADERS where they belong. * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_c), (deinterlace_line_mmx): Fix C and MMX implementations a bit more.
* [MOVED FROM BAD 09/56] gst/deinterlace2/tvtime/greedy.c: Fix the C ↵Sebastian Dröge2009-05-132-123/+112
| | | | | | | | | | | | | | | | | | | | implementation to produce correct results and optimize the Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_c), (deinterlace_greedy_packed422_scanline_mmxext), (deinterlace_greedy_packed422_scanline): Fix the C implementation to produce correct results and optimize the MMXEXT implementation. Handle odd widths and don't read over array boundaries in the MMXEXT implementation. * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_c), (deinterlace_line_mmx), (deinterlace_scanline_vfir): Fix a small rounding bug in the MMX implementation, the MMX implementation doesn't actually need MMXEXT instructions so don't mark it as such. Handle odd widths in both implementations.
* [MOVED FROM BAD 08/56] gst/deinterlace2/tvtime/greedy.c: Implement a C ↵Sebastian Dröge2009-05-131-6/+72
| | | | | | | | | | | | | version of the greedy low motion algorithm and mark the assembly opti... Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_sse), (deinterlace_greedy_packed422_scanline_c), (deinterlace_greedy_packed422_scanline): Implement a C version of the greedy low motion algorithm and mark the assembly optimized version as SSE as it uses SSE instructions additional to MMX instructions.
* [MOVED FROM BAD 07/56] gst/deinterlace2/tvtime/vfir.c: Make it possible to ↵Sebastian Dröge2009-05-131-15/+26
| | | | | | | | | | use the vfir method on X86 CPUs without MMXEXT too but use the MM... Original commit message from CVS: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_mmxext), (deinterlace_line_c), (deinterlace_scanline_vfir): Make it possible to use the vfir method on X86 CPUs without MMXEXT too but use the MMXEXT optimized code whenever possible.
* [MOVED FROM BAD 06/56] gst/deinterlace2/gstdeinterlace2.*: Reset element ↵Sebastian Dröge2009-05-132-24/+65
| | | | | | | | | | | | | | | | state on PAUSED->READY properly, don't leak any buffers when finali... Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_class_init), (gst_deinterlace2_init), (gst_deinterlace2_reset_history), (gst_deinterlace2_reset), (gst_deinterlace2_finalize), (gst_deinterlace2_chain), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_query): * gst/deinterlace2/gstdeinterlace2.h: Reset element state on PAUSED->READY properly, don't leak any buffers when finalizing, allocate buffers with gst_pad_alloc_buffer() and properly return flow returns from gst_pad_push() instead of ignoring them.
* [MOVED FROM BAD 05/56] ↵Sebastian Dröge2009-05-131-0/+170
| | | | | | | | gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Add missing header. Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Add missing header.
* [MOVED FROM BAD 04/56] Fix compilation on generic x86/amd64 and include ↵Sebastian Dröge2009-05-133-3/+5
| | | | | | | | | | | | | deinterlace2 in the build system. Because of several bugs it's still... Original commit message from CVS: * configure.ac: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: Fix compilation on generic x86/amd64 and include deinterlace2 in the build system. Because of several bugs it's still enabled only by --enable-experimental.
* [MOVED FROM BAD 03/56] Fix gtk-doc warnings. Also don't misuse api-doc ↵Stefan Kost2009-05-134-92/+92
| | | | | | | | | | | | | | | | | | | | | | | comments for normal comments. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * examples/app/appsrc-ra.c: * examples/app/appsrc-seekable.c: * examples/app/appsrc-stream.c: * examples/app/appsrc-stream2.c: * ext/directfb/dfbvideosink.h: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/metadata.c: * ext/metadata/metadataexif.c: * ext/theora/theoradec.h: * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/speedy.c: * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/vfir.c: Fix gtk-doc warnings. Also don't misuse api-doc comments for normal comments.
* [MOVED FROM BAD 02/56] gst/deinterlace2/: Add a deinterlacer plugin based on ↵Martin Eikermann2009-05-1316-0/+1305
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the tvtime/DScaler deinterlacer, which was relicensed to LGPL f... Original commit message from CVS: Based on a patch by: Martin Eikermann <meiker at upb dot de> * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_method_get_type), (gst_deinterlace2_fields_get_type), (gst_deinterlace2_field_layout_get_type), (gst_deinterlace2_base_init), (gst_deinterlace2_class_init), (gst_deinterlace2_init), (gst_deinterlace2_set_method), (gst_deinterlace2_set_property), (gst_deinterlace2_get_property), (gst_deinterlace2_finalize), (gst_deinterlace2_pop_history), (gst_deinterlace2_head_history), (gst_deinterlace2_push_history), (gst_deinterlace2_deinterlace_scanlines), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_event), (gst_deinterlace2_src_query), (gst_deinterlace2_src_query_types), (plugin_init): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: (copy_scanline), (deinterlace_greedy_packed422_scanline_mmxext), (dscaler_greedyl_get_method): * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method), (greedyh_init), (greedyh_filter_mmx), (greedyh_filter_3dnow), (greedyh_filter_sse): * gst/deinterlace2/tvtime/greedyh.h: * gst/deinterlace2/tvtime/greedyhmacros.h: * gst/deinterlace2/tvtime/mmx.h: * gst/deinterlace2/tvtime/plugins.h: * gst/deinterlace2/tvtime/speedtools.h: * gst/deinterlace2/tvtime/speedy.c: (multiply_alpha), (clip255), (comb_factor_packed422_scanline_mmx), (diff_factor_packed422_scanline_c), (diff_factor_packed422_scanline_mmx), (diff_packed422_block8x8_mmx), (diff_packed422_block8x8_c), (packed444_to_packed422_scanline_c), (packed422_to_packed444_scanline_c), (packed422_to_packed444_rec601_scanline_c), (vfilter_chroma_121_packed422_scanline_mmx), (vfilter_chroma_121_packed422_scanline_c), (vfilter_chroma_332_packed422_scanline_mmx), (vfilter_chroma_332_packed422_scanline_c), (kill_chroma_packed422_inplace_scanline_mmx), (kill_chroma_packed422_inplace_scanline_c), (invert_colour_packed422_inplace_scanline_mmx), (invert_colour_packed422_inplace_scanline_c), (mirror_packed422_inplace_scanline_c), (interpolate_packed422_scanline_c), (convert_uyvy_to_yuyv_scanline_mmx), (convert_uyvy_to_yuyv_scanline_c), (interpolate_packed422_scanline_mmx), (interpolate_packed422_scanline_mmxext), (blit_colour_packed422_scanline_c), (blit_colour_packed422_scanline_mmx), (blit_colour_packed422_scanline_mmxext), (blit_colour_packed4444_scanline_c), (blit_colour_packed4444_scanline_mmx), (blit_colour_packed4444_scanline_mmxext), (small_memcpy), (speedy_memcpy_c), (speedy_memcpy_mmx), (speedy_memcpy_mmxext), (blit_packed422_scanline_c), (blit_packed422_scanline_mmx), (blit_packed422_scanline_mmxext), (composite_colour4444_alpha_to_packed422_scanline_c), (composite_colour4444_alpha_to_packed422_scanline_mmxext), (composite_packed4444_alpha_to_packed422_scanline_c), (composite_packed4444_alpha_to_packed422_scanline_mmxext), (composite_packed4444_to_packed422_scanline_c), (composite_packed4444_to_packed422_scanline_mmxext), (composite_alphamask_to_packed4444_scanline_c), (composite_alphamask_to_packed4444_scanline_mmxext), (composite_alphamask_alpha_to_packed4444_scanline_c), (premultiply_packed4444_scanline_c), (premultiply_packed4444_scanline_mmxext), (blend_packed422_scanline_c), (blend_packed422_scanline_mmxext), (quarter_blit_vertical_packed422_scanline_mmxext), (quarter_blit_vertical_packed422_scanline_c), (subpix_blit_vertical_packed422_scanline_c), (a8_subpix_blit_scanline_c), (myround), (init_RGB_to_YCbCr_tables), (init_YCbCr_to_RGB_tables), (rgb24_to_packed444_rec601_scanline_c), (rgba32_to_packed4444_rec601_scanline_c), (packed444_to_rgb24_rec601_scanline_c), (packed444_to_nonpremultiplied_packed4444_scanline_c), (aspect_adjust_packed4444_scanline_c), (setup_speedy_calls), (speedy_get_accel): * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/sse.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy), (deinterlace_frame_di_tomsmocomp), (dscaler_tomsmocomp_get_method), (tomsmocomp_init), (tomsmocomp_filter_mmx), (tomsmocomp_filter_3dnow), (tomsmocomp_filter_sse): * gst/deinterlace2/tvtime/tomsmocomp.h: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoop0A.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA8.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA6.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line), (deinterlace_scanline_vfir), (copy_scanline), (dscaler_vfir_get_method): * gst/deinterlace2/tvtime/x86-64_macros.inc: Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer, which was relicensed to LGPL for GStreamer and in theory provides better and faster results than the simple deinterlace element. Fixes bug #163578. Ported to GStreamer 0.10 but still not enabled or included in the build system by default because of bad artefacts caused by a bug somewhere and as it can be only build on x86/amd64 ATM and requires special CFLAGS. Will be fixed soon.
* [MOVED FROM BAD 01/56] gst/deinterlace2/: Add a deinterlacer plugin based on ↵Martin Eikermann2009-05-1318-0/+7411
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the tvtime/DScaler deinterlacer, which was relicensed to LGPL f... Original commit message from CVS: Based on a patch by: Martin Eikermann <meiker at upb dot de> * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_method_get_type), (gst_deinterlace2_fields_get_type), (gst_deinterlace2_field_layout_get_type), (gst_deinterlace2_base_init), (gst_deinterlace2_class_init), (gst_deinterlace2_init), (gst_deinterlace2_set_method), (gst_deinterlace2_set_property), (gst_deinterlace2_get_property), (gst_deinterlace2_finalize), (gst_deinterlace2_pop_history), (gst_deinterlace2_head_history), (gst_deinterlace2_push_history), (gst_deinterlace2_deinterlace_scanlines), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_event), (gst_deinterlace2_src_query), (gst_deinterlace2_src_query_types), (plugin_init): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: (copy_scanline), (deinterlace_greedy_packed422_scanline_mmxext), (dscaler_greedyl_get_method): * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method), (greedyh_init), (greedyh_filter_mmx), (greedyh_filter_3dnow), (greedyh_filter_sse): * gst/deinterlace2/tvtime/greedyh.h: * gst/deinterlace2/tvtime/greedyhmacros.h: * gst/deinterlace2/tvtime/mmx.h: * gst/deinterlace2/tvtime/plugins.h: * gst/deinterlace2/tvtime/speedtools.h: * gst/deinterlace2/tvtime/speedy.c: (multiply_alpha), (clip255), (comb_factor_packed422_scanline_mmx), (diff_factor_packed422_scanline_c), (diff_factor_packed422_scanline_mmx), (diff_packed422_block8x8_mmx), (diff_packed422_block8x8_c), (packed444_to_packed422_scanline_c), (packed422_to_packed444_scanline_c), (packed422_to_packed444_rec601_scanline_c), (vfilter_chroma_121_packed422_scanline_mmx), (vfilter_chroma_121_packed422_scanline_c), (vfilter_chroma_332_packed422_scanline_mmx), (vfilter_chroma_332_packed422_scanline_c), (kill_chroma_packed422_inplace_scanline_mmx), (kill_chroma_packed422_inplace_scanline_c), (invert_colour_packed422_inplace_scanline_mmx), (invert_colour_packed422_inplace_scanline_c), (mirror_packed422_inplace_scanline_c), (interpolate_packed422_scanline_c), (convert_uyvy_to_yuyv_scanline_mmx), (convert_uyvy_to_yuyv_scanline_c), (interpolate_packed422_scanline_mmx), (interpolate_packed422_scanline_mmxext), (blit_colour_packed422_scanline_c), (blit_colour_packed422_scanline_mmx), (blit_colour_packed422_scanline_mmxext), (blit_colour_packed4444_scanline_c), (blit_colour_packed4444_scanline_mmx), (blit_colour_packed4444_scanline_mmxext), (small_memcpy), (speedy_memcpy_c), (speedy_memcpy_mmx), (speedy_memcpy_mmxext), (blit_packed422_scanline_c), (blit_packed422_scanline_mmx), (blit_packed422_scanline_mmxext), (composite_colour4444_alpha_to_packed422_scanline_c), (composite_colour4444_alpha_to_packed422_scanline_mmxext), (composite_packed4444_alpha_to_packed422_scanline_c), (composite_packed4444_alpha_to_packed422_scanline_mmxext), (composite_packed4444_to_packed422_scanline_c), (composite_packed4444_to_packed422_scanline_mmxext), (composite_alphamask_to_packed4444_scanline_c), (composite_alphamask_to_packed4444_scanline_mmxext), (composite_alphamask_alpha_to_packed4444_scanline_c), (premultiply_packed4444_scanline_c), (premultiply_packed4444_scanline_mmxext), (blend_packed422_scanline_c), (blend_packed422_scanline_mmxext), (quarter_blit_vertical_packed422_scanline_mmxext), (quarter_blit_vertical_packed422_scanline_c), (subpix_blit_vertical_packed422_scanline_c), (a8_subpix_blit_scanline_c), (myround), (init_RGB_to_YCbCr_tables), (init_YCbCr_to_RGB_tables), (rgb24_to_packed444_rec601_scanline_c), (rgba32_to_packed4444_rec601_scanline_c), (packed444_to_rgb24_rec601_scanline_c), (packed444_to_nonpremultiplied_packed4444_scanline_c), (aspect_adjust_packed4444_scanline_c), (setup_speedy_calls), (speedy_get_accel): * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/sse.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy), (deinterlace_frame_di_tomsmocomp), (dscaler_tomsmocomp_get_method), (tomsmocomp_init), (tomsmocomp_filter_mmx), (tomsmocomp_filter_3dnow), (tomsmocomp_filter_sse): * gst/deinterlace2/tvtime/tomsmocomp.h: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoop0A.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA8.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA6.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line), (deinterlace_scanline_vfir), (copy_scanline), (dscaler_vfir_get_method): * gst/deinterlace2/tvtime/x86-64_macros.inc: Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer, which was relicensed to LGPL for GStreamer and in theory provides better and faster results than the simple deinterlace element. Fixes bug #163578. Ported to GStreamer 0.10 but still not enabled or included in the build system by default because of bad artefacts caused by a bug somewhere and as it can be only build on x86/amd64 ATM and requires special CFLAGS. Will be fixed soon.
* avidemux: Fix pointer arithmeticSebastian Dröge2009-05-131-2/+2
| | | | This fixes a seeking regression, bug #134522.
* [MOVED FROM BAD 57/57] Add ranks to various muxers and encoders in -badChristian Schaller2009-05-121-1/+1
|
* [MOVED FROM BAD 56/57] flvmux: init variable to NULL to fix compiler warningTristan Matthews2009-05-121-1/+1
| | | | Fixes #580786.
* [MOVED FROM BAD 55/57] flv: Set/require the framed/parsed fields of the ↵Sebastian Dröge2009-05-122-3/+3
| | | | audio/mpeg caps to TRUE
* [MOVED FROM BAD 54/57] flv: Always write at least the minimal tags and write ↵Sebastian Dröge2009-05-121-8/+49
| | | | the PAR as tags
* [MOVED FROM BAD 53/57] flv: Add support for muxing some tagsSebastian Dröge2009-05-122-8/+227
|
* [MOVED FROM BAD 52/57] flv: Add support for title tagSebastian Dröge2009-05-121-1/+3
|
* [MOVED FROM BAD 51/57] flv: Fix parsing of tags and add new mappingsSebastian Dröge2009-05-121-48/+81
| | | | | | | | | We shouldn't register a new GstTag for every unknown tag we find as this might lead to conflicts and also those tags are essentially unknown. Add mappings for some known tags and also convert string dates to GDate, as found in many FLV files.
* [MOVED FROM BAD 50/57] flv: Add documentation to flvmux and flvdemuxSebastian Dröge2009-05-124-0/+30
| | | | Partially fixes bug #573737.
* [MOVED FROM BAD 49/57] Add support for ECMA arrays in script tags. Fixes bug ↵Jan Urbanski2009-05-121-0/+23
| | | | | | | | #567965. Add support for ECMA arrays in script tags. This fixes seeking on some files that have the seek table stored inside an ECMA array instead of the normal array.
* [MOVED FROM BAD 48/57] gst/flv/gstflvparse.c: Check if strings are valid ↵Sebastian Dröge2009-05-121-0/+4
| | | | | | | | UTF8 before using them. Original commit message from CVS: * gst/flv/gstflvparse.c: (FLV_GET_STRING): Check if strings are valid UTF8 before using them.
* [MOVED FROM BAD 47/57] gst/flv/gstflvdemux.c: Fix non key unit seeking by ↵Julien Moutte2009-05-122-4/+11
| | | | | | | | | | | | | | | | | always going to the previous keyframe. Mark the discont flag when ... Original commit message from CVS: 2008-11-24 Julien Moutte <julien@fluendo.com> * gst/flv/gstflvdemux.c: (gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push), (gst_flv_demux_handle_seek_pull): Fix non key unit seeking by always going to the previous keyframe. Mark the discont flag when we've moved in the file. * gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate): MP3 streams are parsed already, makes autoplugged pipelines shorter.
* [MOVED FROM BAD 46/57] Don't install static libs for plugins. Fixes #550851 ↵Stefan Kost2009-05-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for -bad. Original commit message from CVS: * ext/alsaspdif/Makefile.am: * ext/amrwb/Makefile.am: * ext/apexsink/Makefile.am: * ext/arts/Makefile.am: * ext/artsd/Makefile.am: * ext/audiofile/Makefile.am: * ext/audioresample/Makefile.am: * ext/bz2/Makefile.am: * ext/cdaudio/Makefile.am: * ext/celt/Makefile.am: * ext/dc1394/Makefile.am: * ext/dirac/Makefile.am: * ext/directfb/Makefile.am: * ext/divx/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/gsm/Makefile.am: * ext/hermes/Makefile.am: * ext/ivorbis/Makefile.am: * ext/jack/Makefile.am: * ext/jp2k/Makefile.am: * ext/ladspa/Makefile.am: * ext/lcs/Makefile.am: * ext/libfame/Makefile.am: * ext/libmms/Makefile.am: * ext/metadata/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/mythtv/Makefile.am: * ext/nas/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/polyp/Makefile.am: * ext/resindvd/Makefile.am: * ext/sdl/Makefile.am: * ext/shout/Makefile.am: * ext/snapshot/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spc/Makefile.am: * ext/swfdec/Makefile.am: * ext/tarkin/Makefile.am: * ext/theora/Makefile.am: * ext/timidity/Makefile.am: * ext/twolame/Makefile.am: * ext/x264/Makefile.am: * ext/xine/Makefile.am: * ext/xvid/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/dshow/Makefile.am: * gst/aiffparse/Makefile.am: * gst/app/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/bayer/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/chart/Makefile.am: * gst/colorspace/Makefile.am: * gst/dccp/Makefile.am: * gst/deinterlace/Makefile.am: * gst/deinterlace2/Makefile.am: * gst/dvdspu/Makefile.am: * gst/festival/Makefile.am: * gst/filter/Makefile.am: * gst/flacparse/Makefile.am: * gst/flv/Makefile.am: * gst/games/Makefile.am: * gst/h264parse/Makefile.am: * gst/librfb/Makefile.am: * gst/mixmatrix/Makefile.am: * gst/modplug/Makefile.am: * gst/mpeg1sys/Makefile.am: * gst/mpeg4videoparse/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mpegvideoparse/Makefile.am: * gst/mve/Makefile.am: * gst/nsf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/overlay/Makefile.am: * gst/passthrough/Makefile.am: * gst/pcapparse/Makefile.am: * gst/playondemand/Makefile.am: * gst/rawparse/Makefile.am: * gst/real/Makefile.am: * gst/rtjpeg/Makefile.am: * gst/rtpmanager/Makefile.am: * gst/scaletempo/Makefile.am: * gst/sdp/Makefile.am: * gst/selector/Makefile.am: * gst/smooth/Makefile.am: * gst/smoothwave/Makefile.am: * gst/speed/Makefile.am: * gst/speexresample/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/vbidec/Makefile.am: * gst/videodrop/Makefile.am: * gst/videosignal/Makefile.am: * gst/virtualdub/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * sys/acmenc/Makefile.am: * sys/cdrom/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/dxr3/Makefile.am: * sys/fbdev/Makefile.am: * sys/oss4/Makefile.am: * sys/qcam/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/vcd/Makefile.am: * sys/wininet/Makefile.am: * win32/common/config.h: Don't install static libs for plugins. Fixes #550851 for -bad.
* [MOVED FROM BAD 45/57] gst/flv/gstflvdemux.c: Implement position query in ↵Sebastian Dröge2009-05-121-0/+22
| | | | | | | | time format. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_query): Implement position query in time format.
* [MOVED FROM BAD 44/57] gst/flv/: Put the GstSegment directly into the ↵Sebastian Dröge2009-05-123-77/+73
| | | | | | | | | | | | | | | | | | | instance struct instead of allocating and free'ing it again. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_loop), (gst_flv_demux_handle_seek_push), (gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event), (gst_flv_demux_dispose), (gst_flv_demux_init): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_timestamp): Put the GstSegment directly into the instance struct instead of allocating and free'ing it again. Push tags already if only one pad was added, no need to wait for the second one. When generating our index set has_video and has_audio if we find video or audio in case the FLV header has incorrect data.
* [MOVED FROM BAD 43/57] gst/flv/: Don't memcpy() all data we want to push ↵Sebastian Dröge2009-05-123-141/+138
| | | | | | | | | | | | | | | | | downstream, instead just create subbuffers and push them downstream. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_pull_header), (gst_flv_demux_create_index): * gst/flv/gstflvparse.c: (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_timestamp), (gst_flv_parse_tag_type), (gst_flv_parse_header): * gst/flv/gstflvparse.h: Don't memcpy() all data we want to push downstream, instead just create subbuffers and push them downstream. Fix some minor memory leaks.