Changelog:
- No audio thread if audio stream < 0. null AudioOutput now still create
audio thread.
- VideoOutput: fix lock error
- Filter: add X11 text rendering for X11Renderer/XVRenderer.
- LibAVFilter supports HW frames(not recommended)
- VideoFrame copy and init issue, bpp compute error
- Avoid using some stl APIs that breaks ABI
- Add x11 renderer
- XV: support NV12 and packed yuv formats
- Fix factory initialization for static build(iOS for example)
- Fix ffmpeg log level
- Remove AVPicture which is deprecated
- SWS 16 alignment, output to user defined buffer
- Always define the registered id so we can use everywhere
- Better iOS support: build, run, deploy(prl)
- use libuchardet now, use system one if possible
- Fix android build on windows
- XAudio2: fix crash. `double` sample format is not supported
- Fix clock value if speed changed
- VideoRenderer.updateUi
- VideoCapture: fix HW frame save
- New logo 
- Android: support protocol 'content'. Now can play from Gallery.
- MediaIO is not writable by default
- WinRT (Windows Store) support:
* Link to XAudio2
* File open and protocol
- VA-API:
* Add hevc, vp9. Not tested
* Support more profiles
* Improve nvidia support
* Interop with egl support(dma, tfp). libva 0.38 and Qt>=5.5 are
required.
* Check resolution support before open
* Add thread count option (new ffmpeg >2.8 does not support)
* Prefer /dev/dri/renderD128 for drm
* Correctly release X11/drm resource
- OpenGL:
* OpenGL ES3 optimization
* use new OpenGL and GLSL APIs if possible
- CI:
* Add windows. Build with latest Qt release. Using msbuild, nmake and
mingw32-make
- API:
* AVPlayer.stepForward(), stepBackword(). playNextFrame() is deprecated
* AVPlayer.state
* AVPlayer.videoDecoderPriority with name list
* VideoRenderer.frameSize (C++), VideoOutput.frameSize
* XXXDecoder/Encoder::supportedCodecs, AV(De)Muxer.supportedFormats/
Extensions
* QML: more metaData keys: startTime, sampleFormat, channelLayout,
pixelFormat, videoFrames
- QMLPlayer/Player:
* fix OpenGLWidgetRenderer crash
* Handle Home/Back button for mobile
* Preview item is movable
* ppa: rename /usr/bin/player to /usr/bin/Player
fix#430#532
Less code and should be faster. Calling update() in User event should be
a solution too but more code is required.
WidgetRenderer::imageReady() is not removed because some people is using
it
update() also do backing store things.
TODO:
what about update() in a user event?
why posting an UpdateRequest event is not enough for WidgetRenderer and
OpenGLWidgetRenderer(not tested for other renderers)?
QLatin1String:
- QString has override function && no implicitly convert to QString:
indexof,contains,==,insert,append,prepend,
+=,replace,compare,<,startswith,endswith
- not from a raw string
Changelog:
- DXVA GPU zero-copy support
- DXVA copy back improvement
- VAAPI zero-copy improvement
- External audio track support
- Fix opengl wrong display if switch decoder between VDA and FFmpeg
- Video encoding support. Try examples/simpletranscode. Audio is not
supported now
- Pulseaudio improvement, fix crashes and hang
- OpenGL: disable VBO for ANGLE to workaround qpainter filters have no
effect. Less GL calls. Fix OpenGLWindowRenderer can not update correctly
- Fix capture video when a zero-copy HW decoder is used.
- Fix wrong audio data is played at the beginning of playback
- Enable XV shm
- Improve a/v sync
- Build android on windows
- Fix msvc debug build
- Use OpenSL ES as for android. It works correctly now. No OpenAL
required any more. Add volume control for OpenSL ES.
- Fix crashes
- Add ubuntu PPA
- CI: appveyor for windows
- AVInput=>MediaIO. You can use it to support custom output when
encoding video
- Add seekFinished, durationChanged, QML MediaPlayer.videoCapture,
Subtitle delay etc
- QMLPlayer: swipe to seek
changes:
You have to include <QtAVWidgets/QtAVWidgets.h> to use built-in widget
renderers
Link against QtAVWidgets
TODO:
QT += avwidgets not available
move ids to widgets module?