Age | Commit message (Collapse) | Author |
|
|
|
Some instances of "key colour" remain; ffmpeg is unmodified.
This change has caused two strings with two translations to collide (the
strings have become identical since some instances already used "colour").
I have therefore arbitrarily dropped the first of the differing translations,
the one for the string at src/video_out/video_out_directfb.c:1365.
|
|
--HG--
extra : transplant_source : %E0%D0%C5%8B%BEU%DD%24%5D7%1F%ADV%AD%EB%23%CBU%80%EB
|
|
For contributed code, leave whatever the version we last synced for is using
to make simpler future syncs.
|
|
I discovered some problems with the framebuffer output driver. The first
problem I had was a segfault when trying to play a 480x360 clip on a 640x480
display. I traced it to the yuv420_rgb16() color conversion function, which
was overrunning the input buffer (the "y" part of the image). The reason
was that it was being called downstack from fb_frame_proc_slice(), multiple
times for each 16-pixel high horizontal slice of the image. When it got to
the last slice, only 8 pixels were left to the bottom but it still tried to
process a 16-pixel high slice.
Nosing around a bit, I compared the configuration of the color converter as
used by the fb driver to the xshm driver and found some oddities:
1) The color converter was configured with a "source height" of 16 pixels no
matter what the size of the image, and a "dest height" based on what was
referred to within video_out_fb.c as a "stripe" -- essentially an input
slice scaled up or down as required by the output size.
2) Apparently to prevent the above from causing problems, the position in
the output buffer was managed by special code -- see the "stripe_incr"
variable.
3) The xshm driver calls yuv2rgb_next_slice() with a NULL argument at the
beginning of each frame to allow the color converter to reset its tracking
of the slice-by-slice progress through the image; the fb driver does not.
I'm not sure exactly why it was done that way, but my best guess would be
that whoever coded it didn't know about the need to call
yuv2rgb_next_slice() with a NULL argument, and the rest was built up to get
it to mostly work without that.
The attached patch changes the behaviour to match that of the xshm driver,
and also removes the reset_dest_pointers() function, replacing its single
invocation with one to fb_frame_field(), which is identical after removing
the "stripe" management.
It fixed my crash. Can anyone see if I've misunderstood what was going on?
If not, it should probably be applied to the official version.
|
|
strings or names of files, device nodes or directories. This information is
available to front ends (via .num_value) so that they can present
file/dir-open dialogue boxes if they so choose.
Subtitle font selection is split up due to this.
CVS patchset: 8425
CVS date: 2006/12/19 19:10:50
|
|
(through backports), to avoid exporting unneeded internal symbols, making plugins' loading faster and use of internal copies of libraries more solid. It should automatically fall back to the old way in GCCs that does not support -fvisibility=hidden, but has to be tested carefully. No issues were found in the months of testing in Gentoo, but this requires special attention anyway.
CVS patchset: 8101
CVS date: 2006/07/10 22:08:12
|
|
CVS patchset: 8009
CVS date: 2006/06/02 22:18:56
|
|
(Diego Pettenò)
CVS patchset: 7985
CVS date: 2006/05/03 19:46:06
|
|
CVS patchset: 7745
CVS date: 2005/09/25 00:44:04
|
|
"clip" thing has caused too much confusion already since these variables
define a highlight area.
- add overlay offset support to video_out.c/alphablend/vo drivers
- use overlay offset to implement proper croping of frames when vo
driver doesn't support it
- add clipping checks to alphablend to avoid buffer overflow, buffer
"underflow" and wrapping.
- increase vo api number
- note: dxr3 support is incomplete about overlay offset
CVS patchset: 7739
CVS date: 2005/09/24 19:08:26
|
|
CVS patchset: 7718
CVS date: 2005/09/05 15:13:13
|
|
Nuked getting default value from additional config.
CVS patchset: 7717
CVS date: 2005/09/05 14:56:31
|
|
CVS patchset: 7711
CVS date: 2005/08/28 01:11:21
|
|
and backwards compatible translation
Sorry, I got a litte tired proof-reading the patch, so their might be
bugs lurking around. I will give it some further examination and
(as necessary) fixing tomorrow.
CVS patchset: 7233
CVS date: 2004/12/12 22:00:47
|
|
in alphablend.c; XShm subtitles work now, Xv works as well, other output
plugins untested
CVS patchset: 7156
CVS date: 2004/11/24 16:11:02
|
|
CVS patchset: 7028
CVS date: 2004/10/09 06:45:48
|
|
- some vo drivers support cropping natively.
(only xv and xvmc have been tested)
- add software crop fallback to video_out.c
- skip yuv2rgb processing at xshm for not yet cropped frames
(these frames are never shown)
- libmpeg2 and ffmpeg now may use crop support
- bump vo api. (changes to xvmc/xxmc will follow)
CVS patchset: 6991
CVS date: 2004/09/22 20:29:13
|
|
please everybody watch out for spelling (and other) errors
CVS patchset: 6442
CVS date: 2004/04/26 17:50:06
|
|
CVS patchset: 5912
CVS date: 2003/12/14 22:13:22
|
|
relevant too. Small other little fix (can't remember). Change few internal function prototype because it xine_t pointer need to be used if some xine's internal sections. NOTE: libdvd{nav,read} is still too noisy, i will take a look to made it quit, without invasive changes. To be continued...
CVS patchset: 5844
CVS date: 2003/12/05 15:54:56
|
|
CVS patchset: 5796
CVS date: 2003/11/26 19:43:26
|
|
text subtitles may now be rendered at full screen resolution
* load xine fonts on demand - faster startup
note: support added to xv, xshm and vidix
CVS patchset: 5780
CVS date: 2003/11/26 01:03:31
|
|
CVS patchset: 5721
CVS date: 2003/11/11 18:44:50
|
|
* some obsolete VO_CAP_* constants removed
* VO_ZOOM_* constants replaced by their XINE_VO_ZOOM_* equivalents from xine.h
* moved some bits around
* proc_frame() needs only one parameter: the frame
* renamed copy_called to proc_called
* changed logic in video_out.c to call proc_* functions a bit
(call proc_frame() first, then call proc_slice() if proc_frame() has not set
proc_called, this allows video out plugins to have both hooks called)
CVS patchset: 5576
CVS date: 2003/10/23 15:17:06
|
|
video_out API version to 18.
CVS patchset: 5574
CVS date: 2003/10/22 20:38:09
|
|
- bump vo and post interface versions
obs: video_out_xvmc.c needs some more work, see todo.
CVS patchset: 5459
CVS date: 2003/10/06 21:52:42
|
|
patch by Philip Jgenstedt
CVS patchset: 5243
CVS date: 2003/08/04 03:47:09
|
|
img->displayed is obsolete now, drivers should use img->free.
CVS patchset: 4994
CVS date: 2003/05/31 18:33:28
|
|
streams.
CVS patchset: 4449
CVS date: 2003/03/19 15:29:27
|
|
CVS patchset: 4448
CVS date: 2003/03/19 01:11:12
|
|
CVS patchset: 4088
CVS date: 2003/02/02 12:44:03
|
|
- new fb driver with zero copy
CVS patchset: 4058
CVS date: 2003/01/31 14:06:03
|
|
different sizeof than integer.
- add extra_info structure to pass informations from input/demuxers down
to the output frame. this can be used, for example, to pass the frame
number of a frame (when known by decoder). also, immediate benefict is
that we now have a slider which really shows the current position of
the playing stream. new fields can be added to extra_info keeping
binary compatibility
- bumpy everybody's api versions
CVS patchset: 3603
CVS date: 2002/12/21 12:56:44
|
|
CVS patchset: 3467
CVS date: 2002/12/08 23:35:45
|
|
CVS patchset: 3434
CVS date: 2002/12/06 01:33:00
|
|
* new public output interface xine_{audio,video}_port_t instead of
xine_{ao,vo}_driver_t, old names kept as aliases for compatibility
* modified the engine to allow multiple streams per output
* renaming of some internal structures according to public changes
* moving SCR out of per-stream-metronom into a global metronom_clock_t
residing in xine_t and therefore easily available to the output layer
* adapting all available plugins
(note to external projects: the compiler will help you a lot, if a plugin
compiles, it is adapted, because all changes add new parameters to some
functions)
* bump up all interface versions because of xine_t and xine_stream_t changes
CVS patchset: 3312
CVS date: 2002/11/20 11:57:38
|
|
(geez this was a job)
CVS patchset: 2616
CVS date: 2002/09/05 20:44:38
|
|
broken now ... matthias/miguel: please fix it :-)
CVS patchset: 2606
CVS date: 2002/09/04 23:31:05
|
|
the drivers i'm comfortable to rework.
- add simple fb device probing
CVS patchset: 2502
CVS date: 2002/08/23 00:24:30
|
|
- removes w32codec syncshutdown hack
- vo_driver api changed to support drivers with persistent overlays. that
will break binary compatibility xine-lib/xine-ui (xine-ui needs to be
recompiled). in order to keep binary compatibility
overlay_begin/overlay_end must be added after redraw_needed.
- video_overlay cleanups
- fix a hard to trigger condition where redraw wouldn't happen (freeing
handles)
CVS patchset: 2427
CVS date: 2002/08/10 21:25:20
|
|
CVS patchset: 2282
CVS date: 2002/07/15 21:42:33
|
|
CVS patchset: 2247
CVS date: 2002/07/10 14:04:41
|
|
Internationalize all config related stuff.
Fix not registered mrl ending in roq/film demuxer.
Add bindtextdomain() calls in load_plugins (for audio/video out plugins).
CVS patchset: 2066
CVS date: 2002/06/12 12:22:25
|
|
- use the same video.disable_scaling setting in fb driver
CVS patchset: 1854
CVS date: 2002/05/06 00:48:09
|
|
CVS patchset: 1631
CVS date: 2002/03/25 03:08:38
|
|
CVS patchset: 1579
CVS date: 2002/03/17 16:53:24
|
|
From Michael Roitzsch
CVS patchset: 1541
CVS date: 2002/03/07 13:26:15
|
|
----------------------------------------------------------------------
CVS patchset: 1539
CVS date: 2002/03/05 22:31:06
|
|
- pts are 64 bit now
- scr and video_out-loop run all the time
- video_out cleanups
- metronom cleanups
- buffer type BUF_CONTROL_DISCONTINUITY is used internally now,
input plugins should no longer send this one
- support for individual frame durations
- using nano-/usleep instead of itimer (simpler code, maybe this will
help freebsd)
CVS patchset: 1487
CVS date: 2002/02/09 07:13:22
|