wang-bin
a3e4207e90
version 1.1.5
...
changelog:
plannar audio support
g++ compile error fix
individual image converter
pause thread and shared output support
stream without audio support
no-audio
v1.1.5
2013-01-18 00:56:03 +08:00
wang-bin
1052d0453e
bug fixed: playNextFrame() not work
...
continue will never decode the next packet
2013-01-18 00:44:56 +08:00
wang-bin
ce718ef4fa
support streams without audio stream by the ExternalClock
...
FIXME: the clock will keep ExternalClock type even if play a new stream
with audio stream
BUG:
1. can not seek backward.
2. frames in the end can not be played correctly
2013-01-18 00:18:39 +08:00
wang-bin
e683ed7f37
always block the queue if only on queue(decoder/thread) is available
2013-01-18 00:03:30 +08:00
wang-bin
d78c675c0d
check AVDecoder.isAvailable() when running a decoder thread and decode()
...
if false, the decoder thread should not run, and decode() no nothing
2013-01-18 00:02:04 +08:00
wang-bin
7b075ceaef
Add external clock support
2013-01-17 23:30:41 +08:00
LucasWang
27b5c3f663
tryPause() return a boolean value for convenience
2013-01-17 17:16:14 +08:00
wang-bin
3d007c3c05
pause threads instead of output
...
an output may be shared by several players
2013-01-17 00:07:47 +08:00
wang-bin
d8e13ba0c6
use ImageConverter and remove useless code
2013-01-15 22:28:42 +08:00
wang-bin
ab2d7540d1
use mutex locker
2013-01-15 22:00:04 +08:00
wang-bin
b45c347181
unlock an unlocked mutex may result in crash in Qt5 win64
...
assert in Qt5
2013-01-15 21:38:51 +08:00
LucasWang
8d1d9709fb
update qmake pro. use the latest version
2013-01-14 12:50:15 +08:00
wang-bin
3a10f671e0
misc
2013-01-14 00:43:51 +08:00
wang-bin
1fce89c910
only g++ 4.7.2 can't compile
2013-01-14 00:42:49 +08:00
wang-bin
b9d196aba5
Add ImageConverter class so that we can use hwa support for convertion
...
Now only a converter based on FFMpeg swscale is implemented. Maybe the
interfaces are not good. It's ready for using ipp
TODO:
1. if in_fmt to out_fmt is not supported by hwa, then use ff(in base
class?)
2. move ImageConverter from decoder to video thread. decoder only do the
decoding
2013-01-14 00:41:26 +08:00
wang-bin
db15f9d17d
Add how to write compatible API
2013-01-12 01:13:54 +08:00
wang-bin
9700241cfb
README: add a picture from italian developers using QtAV with IP camera
2013-01-12 01:05:46 +08:00
LucasWang
d2110f5fd5
check a/v codec context before start a/v thread
2013-01-10 17:13:33 +08:00
wang-bin
01a594ac90
fix gcc 4.7.2 build error: taking address of temporary array
...
may be a libav/ffmpeg bug
2013-01-10 17:01:05 +08:00
wang-bin
12e9bcb685
Add some old ffmpeg apis. frome qmmp. TO be continue
2013-01-07 20:15:54 +08:00
wang-bin
16cb6dd37e
print ffmpeg version on start up
2013-01-07 20:14:46 +08:00
wang-bin
1f5372e0dd
planar audio format support
2013-01-07 20:05:47 +08:00
wang-bin
e04c5bcf5d
misc
2013-01-06 21:32:46 +08:00
wang-bin
8fe0ff7c09
Version 1.1.4
...
Changelog:
works if audio is not available
a/v sync
bug fix
v1.1.4
2013-01-05 21:58:00 +08:00
wang-bin
06e7d3efa2
misc
2013-01-05 20:32:47 +08:00
wang-bin
cf088cf02c
TODO. 1.Pause AVThread. 2.framework and optimization design
...
if AVOutput is null, we can not access the pause state from it. So pause
state stored in AVThread is required
2013-01-05 20:30:47 +08:00
wang-bin
12f196fed4
return false if decoded audio format not supported here
...
TODO: deal with planar formats
2013-01-05 20:26:56 +08:00
wang-bin
f91d1e53f5
Fix play error if audio output not available or decode failed
...
sleep delta pts if decode failed. sleep a chunk play time if audio
output not available
TODO: DO NOT decode and convert if audio output is not available
2013-01-05 20:25:09 +08:00
wang-bin
efd758285a
Update the clock after seeking. Add warnings
...
New clock value may be used in AVThread.
2013-01-05 20:11:14 +08:00
wang-bin
32786e5038
demux thread may blocked when seeking try to lock
...
TODO: is unlock then lock it safe? How about locked by demux thread
immediatly when unlock and block the thread?
2013-01-05 20:05:07 +08:00
wang-bin
5335957dd0
add isAvailabe() for AVOutput. If open init/failed, it's false
...
TODO: DO NOT decode(or at least convert data) if the output is not
available
2013-01-05 20:00:31 +08:00
wang-bin
9ea28ec669
Merge branch 'master' of github.com:wang-bin/QtAV
2013-01-04 23:40:32 +08:00
wang-bin
e02f2ed660
simple optimize. update delay before decode audio
...
video is slow
2013-01-04 23:39:27 +08:00
LucasWang
23f1a91972
dptr: add copyright from qxt
2013-01-04 09:37:55 +08:00
wang-bin
5bc9f2d97b
the missing initialization for AVClock
2013-01-01 23:02:47 +08:00
wang-bin
669381a7f8
null audio support
...
TODO: add an api AVOutput::isAvailable() instead of checking null
2013-01-01 23:02:16 +08:00
wang-bin
bd238105d0
video thread sleep a little to wait the audio
...
if not, video thread will loop many times in a small time. sleep some
million seconds is ok.
2013-01-01 22:40:10 +08:00
wang-bin
bd38b38620
fix drawing bug. draw an image twice on widget
2013-01-01 21:45:33 +08:00
wang-bin
8d29daf7f7
audio output is configurable when compiling
...
default is portaudio. enabling openal: qmake "CONFIG+=openal"
2013-01-01 15:10:03 +08:00
wang-bin
9e9db67d00
audio and video is synced by msleep() in audio thread
...
TODO: why is msleep required? if portaudio will block thread when
playing, then we don't need msleep theorically. in fact, it does block,
but audio will be a little faster than video, why?
why usleep is worse
2013-01-01 14:51:31 +08:00
wang-bin
ff3e688d35
TODO
2013-01-01 12:47:00 +08:00
wang-bin
932944b6c5
std::queue example
2013-01-01 12:45:57 +08:00
wang-bin
ec5ac193ec
dptr example
2013-01-01 12:45:16 +08:00
wang-bin
53ab38af68
clear queue if reset
...
TODO: how to make sure cleared
2012-12-24 03:28:44 +08:00
wang-bin
1112cd9a63
warning
2012-12-24 03:27:02 +08:00
wang-bin
442933a83b
terminate thread if stop failed or timeout
...
TODO: why timeout
2012-12-24 03:21:18 +08:00
wang-bin
7380ab1cea
avoid emitting eof signal multiple times
2012-12-24 03:13:45 +08:00
wang-bin
118c45e381
version 1.1.3
v1.1.3
2012-12-23 20:43:38 +08:00
wang-bin
7a753ea7f6
warning and todo(sync/async capture)
2012-12-23 20:43:02 +08:00
wang-bin
4839da4c58
return if audio open failed. we only have audio clock now
2012-12-23 20:41:52 +08:00