wang-bin
678b4fccfd
undefine PixelFormat in AVCompat.h
...
conflict with VideoFormat::PixelFormat only when ffmpeg header is used,
so move to AVCompat.h is better
2015-07-20 20:48:12 +08:00
wang-bin
086a598253
vo: sourceAspectRatio property. #481
...
it's frame DAR
2015-07-17 01:23:59 +08:00
wang-bin
f76c89c312
simplify VideoFrame.toImage
2015-07-02 18:21:25 +08:00
wang-bin
bd257ec4a3
vda: simd copy back from gpu to map to host memory
...
gpu copy with cache may crash, new function does not
2015-06-27 02:42:19 +08:00
wang-bin
e1879aa0bc
a convenience func to make host video frame from gpu
2015-06-27 02:15:46 +08:00
wang-bin
e11f278153
convert hw surface in converter
...
TODO: check hw surface support in VideoThread before deliver, or check
and convert in renderer.
map(HostSurface...) should use optimized copy
2015-06-25 23:47:09 +08:00
wang-bin
617c12cbf0
capture video frames from hw decoder support
2015-06-05 15:04:46 +08:00
wang-bin
0dab685600
copy more properties to converted frame
2015-05-12 17:46:26 +08:00
wang-bin
a9b4b4c1d0
add a function to create interop handle
2015-04-09 23:12:52 +08:00
wang-bin
d13fbcb6ea
fix wrong color space for a converted frame. #399
2015-03-20 10:29:07 +08:00
wang-bin
8522628b4b
set color space for video frames
...
TODO: sws color space
2015-03-16 14:02:50 +08:00
sherpya
10d467a0b2
keep ffmpeg timestamp when converting frame
2015-02-05 18:25:31 +01:00
wang-bin
92c57fd68b
move ImageConverter from public class to internal
...
use higher level VideoFrameConverter instead
2015-01-30 13:09:52 +08:00
wang-bin
1d066fb00a
remove unsafe frame scale. add a converter class
...
VideoFrame::convertTo() will change itself but frame is shared
2015-01-30 12:36:11 +08:00
wang-bin
7147ff9409
frame ctor use private ptr instead of ref
2015-01-23 11:22:02 +08:00
wang-bin
34b53bc6bd
rename VideoFrame.toFormat to VideoFrame.to
2015-01-09 00:25:09 +08:00
wang-bin
7b10dedb90
fix wrong converted video frame size
2015-01-09 00:15:23 +08:00
wang-bin
23f5a8bb43
add methods for VideoFrame to get a image or frame with another format
...
old convertTo() is a bad idea because VideoFrame now is explicitly
shared and will be removed
2015-01-08 23:04:06 +08:00
wang-bin
0f19822b03
VideoFrame.clone() only copy properties if a frame has no valid data
2014-12-21 15:53:58 +08:00
wang-bin
79e1d63153
copy timestamp & metadata in VideoFrame.clone(). reserve necessary size
2014-12-17 15:04:08 +08:00
wang-bin
5525ad8ae5
async frame extract support
...
TODO: why do event and slots not works?
2014-10-25 23:49:20 +08:00
wang-bin
bfdfc39a49
va: remove surface interop function in video frame. use metadata instead
2014-08-18 21:02:41 +08:00
wang-bin
64c791949d
mv some non-public headers to private or other places. rename AVCompat.h
2014-07-26 15:29:35 +08:00
wang-bin
98383048c0
introduce channelCount for Audio/VideoFrame
2014-06-29 21:50:55 +08:00
wang-bin
50c6582f85
gl: support texture mapped from va surface
2014-06-24 23:04:08 +08:00
wang-bin
1c875560ac
surface interop support for video frame.
...
a video frame may be contains things on gpu, no host memory buffer, then
we may render the frame directly by converting the frame to renderer
supported hanle, such as gl texture
2014-06-24 01:20:43 +08:00
wang-bin
31e8c3592c
audio frame copy
2014-06-21 22:27:02 +08:00
Sandro Cavazzoni
6bfe0b27fc
A better return value for VideoFrame::displayAspectRatio
2014-05-01 15:18:26 +02:00
Sandro Cavazzoni
d739cc27bd
Rename VideoFrame::aspectRatio to VideoFrame::displayAspectRatio
2014-05-01 15:16:17 +02:00
Sandro Cavazzoni
4b76e67b9f
Use the pixel aspect ratio for calculate the real aspect ratio
2014-04-29 22:24:43 +02:00
wang-bin
cbb78a20aa
add prefix QtAV to all include to avoid potential build error
...
why it happens? e.g. meego toolchain
2014-03-18 12:44:47 +08:00
wang-bin
c94dbb8e4b
build error for old ffmpeg.
...
avpicture_fill 2nd is not const in some versions.
2014-03-10 19:18:33 +08:00
wang-bin
529dc2767c
data()=>constData() to avoid potential copy
2014-03-09 23:18:51 +08:00
wang-bin
a1151eb8fc
fix QByteArray out of bounds error in Qt4
...
call data() before shared is ok. otherwise the real data in may be
changed
2014-03-07 16:34:38 +08:00
wang-bin
da1cb8e1ad
fix VideoFrame clone error
...
memory allocated by ffmpeg may has the different size with the data to
copy
2014-03-07 13:46:38 +08:00
wang-bin
de792ce334
video capture supports yuv
2014-03-05 00:46:51 +08:00
wang-bin
2cb6cfeb7a
effective and padded line sizes for a video frame
2014-03-01 17:06:54 +08:00
wang-bin
be8bec0a59
VideoFrame.init should be private
2014-02-24 00:28:05 +08:00
wang-bin
6bb0e6e07c
initialize video frame's linesize and data ptrs in ctor
2014-02-23 21:04:51 +08:00
wang-bin
9b08e0c5b2
mark frame invalid if convert failed
2014-02-15 19:51:22 +08:00
wang-bin
a9b083e0f1
return correct VideoFrame::planeCount
...
TODO:
resize ImageConverter.outPlanes()?
2014-02-12 10:18:56 +08:00
wang-bin
f06677b38c
VideoFrame create from QImage without deep copy
2013-12-25 23:48:01 +08:00
wang-bin
b3d8a09570
const members
2013-12-19 11:22:25 +08:00
wang-bin
a1bf623fd0
optimize frame copy
...
TODO: use sse(lavf, vlc...)
http://software.intel.com/en-us/articles/copying-accelerated-video-
2013-12-12 18:50:56 +08:00
wang-bin
27e939aeab
add VideoFormat.chromaWidth/Height. allow Frame allocate and clone
2013-12-12 01:38:03 +08:00
wang-bin
4271013608
fix wrong pixel format init and wrong process in qpainter filter
2013-11-15 12:44:54 +08:00
wang-bin
094c66ac5c
convenience functions for VideoFormat
2013-11-11 22:41:15 +08:00
wang-bin
70a810817a
fix wrong video format. add image format
2013-11-10 14:47:06 +08:00
wang-bin
5673c164c9
use VideoFormat in VideoFrame. All parameters are computed by FFmpeg
2013-11-09 21:35:42 +08:00
wang-bin
81ed10da38
fix bpp error. add ffmpeg pixel format convertion
2013-11-02 22:44:06 +08:00