106 Commits

Author SHA1 Message Date
wang-bin ce21c55b6e qt6 support
no qml. examples are wip.
fix #1381, #1294, #1389
2022-01-08 17:09:43 +08:00
Mike Odom 330382ce91 Adding mutex lock to Logger
ASSERT: "bytes <= bufferSize" in file tools\qringbuffer.cpp, line 74

This was happening when seeking multiple times very quickly in Player. QFile is not thread safe so I added a QMutexLocker to the Logger function.
2018-12-16 15:52:51 -08:00
Calin Culianu 5aa5b27cac added new OSX API for turning off screensaver to ScreenSaver exampe -- important if you want to use this code in the App store, for example. (Old API was deprecated and generated warnings) 2017-06-30 22:05:22 +03:00
wang-bin 42db9cb8a6 qmlplayer: auto decoders is default 2017-06-28 10:57:31 +08:00
wang-bin f672e4a696 version 1.12.0
Changelog
- CMake support
- Fix iOS build
- Fix AVPacket memory leak
- Geometry & GeometryRenderer class is public
- PAL8, XYZ color format support
- Fix OpenGL background color
- Fix external clock error after pause
- VA-API encoder support (ffmpeg>=3)
- Other improvements, fixes, and untested features
2017-06-21 09:47:15 +08:00
wang-bin db891bd5eb examples: workaround qt5.7 log crash
assert in QRingBuffer.free
2017-01-22 10:27:30 +08:00
wang-bin 9d49102382 support msvc static build. qml is not supported yet
tested qt5.7.0 vs2015 x86 from http://www.npcglib.org/~stathis/blog/
precompiled-qt4-qt5/
2017-01-06 13:26:38 +08:00
wang-bin 035c3cfb4b qmake: fix osx strip path 2016-06-18 00:56:02 +08:00
wang-bin d3d9a32586 examples/player: add user shader ui 2016-06-15 18:08:39 +08:00
wang-bin 00513e5b56 winrt: qt's wiinmain is is fine since 5.6.1 2016-06-11 16:33:06 +08:00
wang-bin a64236bc26 deploy: fix linux install destinations #632 2016-05-29 02:02:31 +08:00
wang-bin 3723ab1fd5 examples: use sql 2016-03-22 15:22:41 +08:00
wang-bin bc4e7d8500 examples: QMLPlayer history panel, player zoom for mac 2016-03-22 15:02:10 +08:00
wang-bin 1f53443c8f version 1.10.0
Changelog
- Improve seek speed, fix drop too much frames after seek
- VideoFrameExtractor: seek faster if called many times. Speed up
progress bar preview
- Support media files from android assets. Use protocol 'assets:'
- Apply video decoder options when playing
- Better iOS support
- VideoToolbox:
 * Check profile to avoid crash
 * Support RGB output
 * Use `rgb422_apple` texture
 * Support iOS 0-copy rendering using OpenGLES
 * More interop types for OSX and iOS
- OpenGL
 * Use 16bit depth textures for >8bit videos (e.g. 10bit) if possible
 * Correct input/output color range. This fixes QtAV video different
from other players
 * Fix high opengl and core profile rendering
 * Better EGL detection
- VO:
 * Simplify signal emitting
 * Support background color, simplify background painting
 * VideoOutput delete crash, resize issues
 * Improve performance of QPainter based renderers
- AudioOutput:
 * remove setBufferSize, add a better API setBufferSamples
 * Add flush(), clear(). Not implemented for backends.
 * Fix OpenAL playback for some audio formats
 * Dynamic load OpenAL by default except iOS
 * Add AudioToolbox support for OSX/iOS and becomes the default backend
 * PulseAudio: workaround noise for multiple instance
- Subtitle:
 * Support ass font files in android assets
 * Fix srt decoding
- QML:
 * Add QtMultimedia compatible APIs VideoOutput.contentRect/sourceRect
- Simplify SurfaceType
- Fix strange behaviors near eof: seek, stepForward, exit etc.
- Fix playback block if audio duration is shorter than video
- VideoFrame constructed from QImage takes image's ownership
- Add VideoFrame.colorRange, AudioFrame.duration
- encoder: support start time
- Add AVPlayer.bufferSpeed, seekFinished(qint64)
- Fix abort when loading
- Examples:
 * Fix videos in videowall not synchronized
 * QMLPlayer has better touch screen experience
 * QMLPlayer supports win10 store (But Qt is not well supported)
 * Drag & Drop support on OSX
 * URL open dialog for QMLPlayer
2016-03-02 15:26:03 +08:00
wang-bin 45353984e6 examples/QMLPlayer: add ios Info.plist 2016-02-28 19:32:37 +08:00
wang-bin c9a00e7e82 examples/QMLPlayer: add language option. apply 0-copy when playing.
touch screen optimize
2016-02-26 16:28:23 +08:00
Christoph Korn 903ce19322 Fix typos 2016-02-24 00:07:43 +01:00
wang-bin f821da2763 examples/QMLPlayer: less and larger buttons 2016-02-22 00:02:09 +08:00
wang-bin 355768575c examples: reset config, swipe fast seek, url open
qt5.2 is required to use dialog
2016-02-19 13:21:30 +08:00
wang-bin 87b927e4df examples: fix call qApp when it is null 2016-02-18 17:53:06 +08:00
wang-bin ed374dc559 unix line ending #573 2016-02-09 20:58:30 +08:00
wang-bin 188aec683c examples/QMLPlayer: ui improvement
button zoom on press, volume bar auto hide, volume/mute button etc.
2016-01-17 22:40:54 +08:00
wang-bin b562ab9820 version 1.9.0
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 ![](http://qtav.org/blog/images/QtAV1.9.0-logo.png "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
2015-12-21 02:24:08 +08:00
Felix Yan 7909a9f38b Fix several typos
corss-platform -> cross-platform
performace -> performance
Resum -> Resume
unknow -> unknown
2015-12-17 19:51:00 +08:00
wang-bin c804872fa9 update examples 2015-12-01 17:03:36 +08:00
wang-bin 5629aee041 qmake: do not add INSTALLS on windows
the install path will be like this D:$(INSTALL_ROOT)\you\dir. I don't
know why. This can fix building android on windows
2015-11-24 16:43:14 +08:00
wang-bin 0266fe323a examples: add EGL and log options 2015-11-20 16:26:01 +08:00
wang-bin 98f6e1a6ff fix qt4 build error 2015-11-06 19:27:30 +08:00
wang-bin 4a17879851 examples: use qfile to work for winrt 2015-11-06 02:29:54 +08:00
wang-bin b426f92bf3 examples: add QMLPlayer project for sdk build
use xx_sdk.pro is better for mobiles. run sdk_install.sh/bat first
2015-11-05 15:41:57 +08:00
wang-bin 884440f216 winrt: fix build error 2015-11-04 17:45:32 +08:00
wang-bin c25e45254f qmake: define BUILD_XXX_LIB for static build
it should be always defined. otherwise there are warnings about
deprecated apis
2015-10-22 23:49:43 +08:00
wang-bin 68a2731a9c examples: log level, registered renderers etc 2015-09-25 01:03:12 +08:00
wang-bin 9126e2c2fc warnings etc 2015-09-01 00:02:08 +08:00
wang-bin cca066cc5d examples: ui update 2015-08-25 01:29:07 +08:00
wang-bin e650c8d5e5 QMLPlayer example: add ui to set ass font 2015-08-24 00:40:58 +08:00
wang-bin 34484e4cce examples: change config dir to app data dir so mobile apps can store the
configurations
2015-08-23 01:59:03 +08:00
wang-bin 84ed2aa3e1 QT_NO_CAST_FROM_ASCI build error part3: examples 2015-08-08 21:16:28 +08:00
wang-bin 1c383faf1e ao: add null backend to disable audio output and thread 2015-07-22 17:01:22 +08:00
wang-bin 614c53bec0 examples: misc 2015-07-09 17:12:36 +08:00
wang-bin dd294db5c3 player example: icon, layout, translations update 2015-07-09 01:53:14 +08:00
wang-bin a74f3e30a4 example: add opengl type in config 2015-06-26 16:32:57 +08:00
wang-bin 125ffa7531 qmlplayer: add zero copy option for gpu decoders 2015-06-11 23:59:04 +08:00
wang-bin c2ab12e2d0 examples: add angle d3d option to swith d3d9/11. angle is enabled 2015-06-11 18:10:22 +08:00
wang-bin 05d0432389 example: subtitle delay option 2015-06-01 14:21:46 +08:00
wang-bin 7cace756cb version 1.6.0
Changelog:
- VDA: use NV12 as default format. Support 0 copy. Better performance
than any other playrs
- CUDA: fix wrong bitstream filters
- OpenGL:
  * PBO support (enable by enviroment var QTAV_PBO=1)
  * rectangle texture support
  * packed yuv formats support
- Support buffer progress, buffer value control
- Support frame rate setup (AVPlayer::setFrameRate())
- Support RAW streams, such as h264, yuv
- Audio filter support
- Better libavfilter support. Now support libav avfilter, support audio
filters from libavfilter
- Add pulseaudio support
- Detect volume change by per-app volume control
- Simplify audio output API
- Volume and mute control by audio backend API
- Use float audio sample if possible
- Fix iOS static link error
- Fix error handling, EOF detect, Qt4.7 build etc.
- Deploy: add qml, fix lib name, deploy sdk from installer, mingw
deployment on linux.
- player/QMLPlayer:
  * decoder detail
  * more options: preview config, buffer, fps, timeout
  * unregister context menu(win32) if uninstalled, ifw2.0
  * QMLPlayer file associate for android
2015-04-23 23:00:24 +08:00
WangBin 77ebe55891 Merge pull request #417 from chenzilin/merge2
fixed a spelling error in command line help
2015-04-23 15:20:47 +08:00
wang-bin 6974f05780 qmake: fix build for qt>=5.4.2
qtLibraryTarget was broken in Qt5.4.1/0 and now is fixed in 5.4.2.
2015-04-23 15:11:23 +08:00
chenzilin b413b9c1c1 fixed a spelling error in command line help 2015-04-23 15:10:54 +08:00
wang-bin 9e092b0bec fix static link on windows
dllimport must be removed if link to a static lib. now it's not removed
because it's impossible to detect whether we link to a static lib
2015-04-23 14:33:20 +08:00