Alexandre Janniaux
d79286ac9b
include: fix typos in documentation
2 years ago
Yann Lochet
30dd6d4c3e
gstdecode: add dummy video context and dummy decoder device
3 years ago
Steve Lhomme
007e5d910c
codec/packtizer: rename p_fmt_in to fmt_in
We don't need to know it's a pointer and can save 2 characters.
No functional changes. This is simply renaming "dec->p_fmt_in",
"decoder->p_fmt_in", "dec.p_fmt_in" and "packetizer->p_fmt_in"
3 years ago
Steve Lhomme
08b24866dc
codec/packetizer: make the writable input format private
The writable fmt_in is kept in the decoder/packetizer owner.
The decoder/packetizer only has access to a const version.
3 years ago
Steve Lhomme
3bbe3ffe45
codec/packetizer: use read-only input format wherever possible
It's renaming :
"dec->fmt_in.", "dec.fmt_in.", "decoder->fmt_in.", "&dec->fmt_in",
"&p_dec->fmt_in" (except in decoder_Init), "&p_dec->fmt_in->",
"&decoder->fmt_in", "&p_dec->fmt_in,", "= p_dec->fmt_in;",
"&id->p_decoder->fmt_in" and "p_sys->p_decoder->fmt_in"
3 years ago
Steve Lhomme
e652fc2b4f
codec/packetizer: expose a read-only version of the input format
All code creating a decoder uses decoder_Init().
Packetizer creation needs to be taken care of as well.
3 years ago
Rémi Denis-Courmont
4bd922622b
window: rename <vlc_vout_window.h> to <vlc_window.h>
4 years ago
Rémi Denis-Courmont
84c253cdd1
window: rename vout_window* to vlc_window*
The baseline windowing code has not been specific to the video output
for a while.
4 years ago
Alexandre Janniaux
b9a270574a
include: fix typos
Typos found and reworked from codespell.
4 years ago
Alexandre Janniaux
93647d8625
codec: remove pf_encode callbacks and wrapper
They are now completely unused.
4 years ago
Alexandre Janniaux
2511756030
vlc_codec: add vlc_encoder_operations structure
4 years ago
Thomas Guillem
543d402ecb
vlc_codec: use vlc_frame_t
5 years ago
Steve Lhomme
9428e4a213
codec: use picture_HasChainedPics instead of access p_next
This makes the code less dependent on how picture chains are stored.
6 years ago
Steve Lhomme
a0fcf5cf69
codec: remove unused decoder_AbortPictures()
Unused since 6fc5e2bc5f
6 years ago
Thomas Guillem
8ce4be008e
core: codec: add VLC_DECODER_DEVICE_VIDEOTOOLBOX
6 years ago
Steve Lhomme
6286e6bf94
encoder: add vlc_ prefix to the new API
encoder_ APIs didn't exist so far.
7 years ago
Steve Lhomme
97fdf14824
sout: transcode: set the decoder video context in the encoder
The video context matches the video format used in the same call.
7 years ago
Steve Lhomme
61b6c9b08a
encoder: add a function to get the decoder device to use with the encoder
Similar to decoder_GetDecoderDevice() but for the encoder.
7 years ago
Steve Lhomme
607baf4fe9
decoder: make the get_device callback mandatory
Even if it gives a NULL decoder device at least we tried.
7 years ago
Steve Lhomme
36a7c36829
decoder device: allow modules to create a decoder device
Like the transcoder or the mosaic bridge.
7 years ago
Steve Lhomme
476b5a02c2
decoder: use an object to create the decoder device
Allowing the window to be NULL, which is OK for D3D11/D3D9/NVDEC.
7 years ago
Steve Lhomme
f3e1d3bbd2
decoder device: remove VLC_DECODER_DEVICE_NONE
A decoder device should always be associated with a "device" or adapter. If
there is none it can be NULL, there's no need for a dummy one.
Setting values on a module that failed to load and won't be used is misleading.
7 years ago
Steve Lhomme
027361a5b1
decoder: optionally pass a vlc_video_context in decoder_UpdateVideoOutput()
7 years ago
Steve Lhomme
5c2a870b7e
decoder: split the decoder format update in 2 parts
The first part is to create the decoder device.
The second part is to create the display module (or other depending on the
decoder owner).
Turn decoder_UpdateVideoFormat() is calling the two new functions.
7 years ago
Romain Vimont
e1c9cefe5b
decoder: make AbortPictures() impl-dependant
The API function decoder_AbortPictures() assumed a specific private
implementation (the one from input/decoder.c), so calling it with
another decoder implementation was undefined.
Instead, expose this function in decoder owner ops, and delegate the
call to its specific implementation.
Signed-off-by: Thomas Guillem <thomas@gllm.fr>
7 years ago
Steve Lhomme
7dd6bc329d
decoder device: use a structure to read the opaque of VLC_DECODER_DEVICE_D3D11VA
For now it's just a ID3D11DeviceContext but it might evolve into a ID3D11Device
combined with an adapter LUID, or just the adapter LUID.
7 years ago
Steve Lhomme
716f3ca06e
decoder device: the D3D9 device needs to store a IDirect3D9 and an adapter
So we use a structure for that.
Unlike D3D11, the IDirect3D9 isn't tied to an adapter, but to communicate with
external rendering it can only be done on the same adapter they use. So we need
both information.
7 years ago
Steve Lhomme
af1d76d352
nvdec: add a NVDEC decoder device
7 years ago
Steve Lhomme
4f48d553f9
decoder device: add a helper macro to set the module (typed) callback/priority
7 years ago
Rémi Denis-Courmont
d1498ca548
decoder: move device close callback
This moves the decoder device close callback to a dedicated
type-specific structure, to avoid type-unsafe variable-arguments
vlc_module_unload().
7 years ago
Steve Lhomme
ffb11c5680
decoder: add a decoder device type for MMAL
In the current MMAL code the pictures are allocated once from the display in a
MMAL_POOL_T. The pool could be created in the decoder (push) and created using
the MMAL_PORT_T. It may not possible to use pictures from different pools but
the display should nonetheless be created with the same MMAL_PORT_T.
7 years ago
Steve Lhomme
d06262f25c
codec: document what kind of opaque is used for each decoder device
7 years ago
Rémi Denis-Courmont
e3270f2ae4
objects: merge vlc_object_t and vlc_common_members
This should fix historical aliasing issues.
7 years ago
Thomas Guillem
335148796a
codec: get_display_date: add system_now
7 years ago
Thomas Guillem
f17f4bd7aa
core: hide vlc_decoder_device_Create
7 years ago
Thomas Guillem
f58bd455bd
core: add vlc_decoder_device
This struct hold the hardware decoder device that will be filled from a
"decoder device" module depending on the "vout window" type.
This will allow decoders to know the type of the hardware device before
initializing hardware decoding.
7 years ago
Steve Lhomme
62c0708594
decoder: move decoder_NewPicture() into a function
It is going to use the video context in push and most likely an internal pool.
7 years ago
Steve Lhomme
cf3deae584
decoder: move decoder_UpdateVideoFormat() into a function
It is going to do a lot more in push with the video context.
7 years ago
Steve Lhomme
16c9f7b5d7
decoder: make decoder_Clean() public
The decoder and decoder tests actually load/unload decoders without resetting
the whole structure.
7 years ago
Steve Lhomme
efbacd8f91
decoder: add Destroy helper function for decoder owners
7 years ago
Steve Lhomme
2502d87e27
decoder: add helper Init function for decoder owners
The same code is done by all owners before creating a decoder.
7 years ago
Steve Lhomme
5363279805
remove the $Id$ in the source code
7 years ago
Steve Lhomme
b378e39122
decoder: mention the video.buffer_new() can be called from any decoder thread
7 years ago
Steve Lhomme
1f17997348
rename VLC_TS_INVALID to VLC_TICK_INVALID
8 years ago
Rémi Denis-Courmont
c85147a421
include: do not issue assertions in external plug-ins
8 years ago
Steve Lhomme
b4dfbc6283
rename mdate() to vlc_tick_now()
The lua "mdate" remains the same.
8 years ago
Steve Lhomme
ff56c92a5e
rename mtime_t to vlc_tick_t
Keep a copy of vlc_tick_tfor backward compatibility.
8 years ago
Zhao Zhili
34b1d4f1ee
vlc_codec: put pf_decode and pf_packetize into a union
Signed-off-by: Thomas Guillem <thomas@gllm.fr>
8 years ago
Thomas Guillem
1093187391
dec: change get_display_rate() return type
Return a float in order to behave like the future output clock.
8 years ago
Thomas Guillem
d49b43b606
dec: hide owner and callbacks from modules
8 years ago