Commit Graph

49 Commits

Author SHA1 Message Date
Tristan Matthews ab60b7cf04 videofilter: assert that the input chroma is known
This is a continuation of !4386 (see 7b47c92a78)
2023-10-18 07:11:23 +00:00
Alexandre Janniaux 6b7a57f984 modules: fix typos
Typos found and reworked from codespell.
2022-01-08 15:19:32 +00:00
Lyndon Brown 6f68f89498 plugins: purge use of set_category()
see e967f81f6a.

note, this does **not** affect cat-based module selection items
(of which there are just three in use by the core), since that
mechanism uses subcats not cats.
2021-12-20 09:45:01 +00:00
Steve Lhomme 94e23d51bb filters: use macro to set the typed Open callback for generic video filters 2020-10-13 09:21:31 +02:00
Steve Lhomme f5a493f7f4 video_filter: remove filter function declaration
The declaration is already generated by the helper macros.
2020-10-13 09:21:30 +02:00
Steve Lhomme 82832bd506 video_filter: use a video filter wrapper to generate boilerplate code 2020-10-12 15:21:39 +02:00
Alexandre Janniaux a353cdbc12 filters: add an operations structure to set the callbacks
Generate a simple operations structure for filters generating their own filter
callback via VIDEO_FILTER_WRAPPER().

The filter chain sets a mouse handler on video filters that don't have one,
just as before, by using a local version of the ops structure of the filter and
adding the local mouse callback.

Co-authored-by: Steve Lhomme <robux4@ycbcr.xyz>
2020-10-08 10:27:51 +02:00
Rémi Denis-Courmont 542df0f3ad Use set_callback() where applicable 2019-07-18 18:58:10 +03:00
Lyndon Brown ead3cb537f wave: fix green output
right-hand indentations were partially or fully green, depending upon
the resolution of the video, for videos where pitch != visible_pitch

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
2019-03-20 15:28:00 +01:00
Steve Lhomme 5363279805 remove the $Id$ in the source code 2019-01-17 12:21:18 +01:00
Steve Lhomme 64872cfa62 wave: use secf to tick functions for conversion 2018-07-05 16:14:10 +02:00
Steve Lhomme b4dfbc6283 rename mdate() to vlc_tick_now()
The lua "mdate" remains the same.
2018-06-22 13:32:10 +02:00
Steve Lhomme ff56c92a5e rename mtime_t to vlc_tick_t
Keep a copy of vlc_tick_tfor backward compatibility.
2018-06-22 13:19:24 +02:00
Thomas Guillem c0e252ed9c video_filter: wave: add missing sys allocation
And use vlc_obj_malloc to get ride of the destroy callback.

Regression from 4c8b741e48
2018-05-21 17:57:38 +02:00
Romain Vimont ff2901aff3 core: remove global *_sys_t typedefs
Do not declare *_sys_t typedefs globally in vlc_common.h. Instead,
declare them locally in each module that provides a definition.

This paves the way to move C++ definitions into anonymous namespaces in
order to respect C++ ODR.

The picture_resource_t and sout_stream_id_sys_t typedefs will be handled
separately, since they require specific additional changes.

See #18033

Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
2018-04-30 14:20:50 +02:00
Romain Vimont 4c8b741e48 core: replace filter_sys_t* by void*
See #17078

Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
2018-04-26 01:35:44 +02:00
Thomas Guillem 64abb0250e video_filter: wave: fix YUV10/RGB black pixel 2018-03-16 16:07:58 +01:00
Rémi Denis-Courmont c06e3ed9d9 Remove most nested headers from <vlc_filter.h> 2016-11-25 23:07:43 +02:00
Rémi Denis-Courmont 0c3f29264f video_filters: drop version number from capability
(This fixes the transcode module video filter option in preferences, as
the two was forgotten.)
2016-08-29 17:20:15 +03:00
Tristan Matthews 52d130573e video_filter: wave: use C99 loop declarations 2015-08-31 14:10:37 -04:00
Rémi Denis-Courmont 967c9badea wave: reject 0 planes formats 2013-07-07 21:12:01 +03:00
Jean-Baptiste Kempf fef270581f LGPL
Re-license almost all the playback modules to LGPLv2.1+ with
authorization from their respective contributors (230+)

This includes:
 - access, codec, packetizers, demux
 - audio filters, audio mixers, audio output
 - video filters, video chroma, video output
 - text renderers
 - XML parser
 - ARM NEON and SSE2 optimisations (mostly for chromas and filters)

Some modules are not concerned:
 - BDA and DShow access modules because Manol Manolov is AWOL
 - Real RTSP, because it is derived from Xine
 - x264 and t140 because they are encoders only
 - DLL Loader, because it is derived from MPlayer
 - DTS packetizer, because Jon Lech Johansen is AWOL
 - Shine and WMAfixed, because they are derived from Rockbox
 - Real demuxer, as it is derived from MPlayer and Wang Bo is AWOL
 - MPC demuxer, as Yavor Doganov is AWOL
 - Tivo demuxer, because it is derived from an MPlayer fork
 - Playlist demuxer, (WPL and ZPL parts missing), because suheaven is AWOL
 - iOS audio output and video display, because author refuses the license change
 - Equalizer and compressor, because Ronald Wright is AWOL
 - Mono, Headphone and Dolby, because author refuses the license change
 - hqdn3d and yadif, because they are from MPlayer/libavfilter
 - remoteosd, because it derives from RealVNC code
 - MMX optimisations, because Ollie Lho, from SiS, is AWOL
 - Rotate, because it depends on GPL motion

Nota Bene:
 - Some modules depend on GPL-only libraries, a LGPL module does not mean
   that the resulting binary module will be LGPL.
   Libraries affected would include liba52, libdvdcss, libdvdnav, libdvdread,
   faad2, libdca, libmad, libmpeg2, libpostproc, SRC, sid, zvbi and probably others.
2012-11-13 16:25:56 +01:00
Rafaël Carré 31c8cef1ba s/vlc_memcpy/memcpy/
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2012-07-03 18:06:46 +03:00
Rafaël Carré 3172a979cc Remove vlc_memset 2012-07-02 13:10:56 +02:00
Antoine Cellerier b998f491d1 Correctly handle YUV 422 packed in ripple and wave
It's a bit blocky but a lot easier than a pixel perfect fix.
2010-01-04 23:40:06 +01:00
Rémi Duraffort 51cb4767dc Global headers. 2009-06-30 08:44:04 +02:00
Laurent Aimar 036a6a2e9e Do not uselessly include vlc_vout.h in filters. 2009-05-16 20:22:41 +02:00
Rémi Denis-Courmont 0549228196 Remove most stray semi-colons in module descriptions
Those multi-lines are still to be done (it's going to be fun...)
See also 5af4cc854b.
2008-10-29 22:14:26 +02:00
Laurent Aimar 4b00ff6ec8 Use filter helpers. 2008-07-20 00:53:21 +02:00
Laurent Aimar 5d3c921b10 Use picture helpers (Yield,Release,CopyProperties). 2008-07-18 21:18:36 +02:00
Yohann Martineau f66626b348 fixed compilation on debian etch.
config.h is now included first, before any other header.

Signed-off-by: Antoine Cellerier <dionoea@videolan.org>
2008-06-24 09:43:12 +02:00
Rémi Duraffort 42bb236284 Remove unnedeeded msg_Error. 2008-06-22 21:41:15 +02:00
Antoine Cellerier 2085fb08ae Factorize some code in the filters. 2008-06-04 22:05:08 +02:00
Antoine Cellerier 4970874662 Use gray for the place holder color on packed formats (else you'd end up
with an ugly green in packed YUV).
2008-06-04 16:51:20 +02:00
Rémi Denis-Courmont 3561b9b28f Plugins: include vlc_common.h directly instead of vlc/vlc.h 2008-05-31 22:10:30 +03:00
Rémi Denis-Courmont 13ae40b0ef Use gettext_noop() consistently 2008-05-21 20:19:25 +03:00
Rémi Denis-Courmont 27d483e9ef Include vlc_plugin.h as needed 2008-05-08 19:20:21 +03:00
Rémi Denis-Courmont 5b55ee1bb0 Use vlc_memset/vlc_memcpy 2008-05-03 17:17:30 +03:00
Rémi Denis-Courmont 99fab9089e Don't include config.h from the headers - refs #297.
Missing some cases that I could not test.
Also ffmpeg/chroma.c is locked, so I can but leave it broken.
Fix is for the remaining modules is obvious and the issue is easy to detect.
2008-01-23 21:50:58 +00:00
Antoine Cellerier f185b15e41 Wave and ripple should now behave correctly for chromas where pixels can take more than 1 byte in a row (like RV32). 2007-11-24 23:20:47 +00:00
Rémi Denis-Courmont e40d134c69 Remove _GNU_SOURCE and string.h too 2007-08-20 19:10:23 +00:00
Rémi Denis-Courmont 81c5ac29fa Remove stdlib.h 2007-08-20 19:08:22 +00:00
Antoine Cellerier 9ce72981b5 use pf_mem{set,cpy} when possible 2006-11-26 17:29:57 +00:00
Clément Stenac d3fe7f2879 A bit of headers cleanup
* Headers in include must contain the structures and prototypes needed
  by the plugins and should be named vlc_*.
* Headers in include/vlc must contain the structures and prototypes
  needed by external libvlc clients

* Moved and renamed some things in headers. 
   - Removed vlc_cpu.h, vlc_error.h (merged in vlc_common)
   - Removed snapshot.h (merged in vlc_vout.h)
   - Removed vlc_spu.h (merged in vlc_osd.h)
   - Removed intf_eject.h and vlc_interaction.h (merged in vlc_interface)
   - Moved all internal headers to src
   - Merged vlc_video.h and video_output.h and move private things to src
   - Removed vlc/intf.h, vlc/aout.h, vlc/vout.h, vlc/decoder.h and vlc/input.h
     (meta headers for use in modules, and often implying too large 
     dependencies)
* Removed some useless dependencies
* Unexported a bunch of functions and structures used only in src/
  (--> Still some work here)
* Finally made input_thread_t and input_source_t (mostly) private. 
  Added input_GetItem to fetch the input_item of an input_thread
* Cleaned up deprecated entries in vlc_symbols.h and bumped up symbol 
  prefix

This commit has a 99% probability of breaking the build, 0.1% of killing
your cat and 0% of getting you hot chicks.
2006-11-26 14:20:34 +00:00
Christophe Mutricy 12efe79799 Forward port [17015] + a few more i18n fix 2006-10-10 08:47:43 +00:00
Clément Stenac f485214f09 For consistency, remove references to vlc from libvlc
Also, make it clearer what is shared and instance-specific

So,
libvlc_t ==> libvlc_global_t
vlc_t ==> libvlc_int_t (internal instance)

p_object->p_libvlc ==> p_object->p_libvlc_globale
p_object->p_vlc ==> p_object->p_libvlc

VLC_OBJECT_VLC ==> VLC_OBJECT_LIBVLC

And by the way, there is some cleanup required :) (ie, some things are created in the global object instead of the instance-specific one)
2006-09-15 14:31:51 +00:00
Clément Stenac 1fa3f9dd6e Preferences categories are *not* categories. They are *user* strings. 2006-09-06 21:05:21 +00:00
Antoine Cellerier 9bee423be4 check that p_pic->pf_release != NULL before calling it 2006-07-15 14:53:58 +00:00
Antoine Cellerier 7588d6a1de Split the distort video filter module into several video filter2 modules. 2006-07-14 22:58:41 +00:00