Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • videolan/vlc
  • chouquette/vlc
  • bakiewicz.marek122/vlc
  • devnexen/vlc
  • rohanrajpal/vlc
  • blurrrb/vlc
  • gsoc/gsoc2019/darkapex/vlc
  • b1ue/vlc
  • fkuehne/vlc
  • magsoft/vlc
  • chub/vlc
  • cramiro9/vlc
  • robUx4/vlc
  • rom1v/vlc
  • akshayaky/vlc
  • tmk907/vlc
  • akymaster/vlc
  • govind.sharma/vlc
  • psilokos/vlc
  • xjbeta/vlc
  • jahan/vlc
  • 1480c1/vlc
  • amanchande/vlc
  • aaqib/vlc
  • rist/vlc
  • apol/vlc
  • mindfreeze/vlc
  • alexandre-janniaux/vlc
  • sandsmark/vlc
  • jagannatharjun/vlc
  • gsoc/gsoc2020/matiaslgonzalez/vlc
  • gsoc/gsoc2020/jagannatharjun/vlc
  • mstorsjo/vlc
  • gsoc/gsoc2020/vedenta/vlc
  • gsoc/gsoc2020/arnav-ishaan/vlc
  • gsoc/gsoc2020/andreduong/vlc
  • fuzun/vlc
  • gsoc/gsoc2020/vatsin/vlc
  • gsoc/gsoc2020/sagid/vlc
  • yaron/vlc
  • Phoenix/vlc
  • Garf/vlc
  • ePiratWorkarounds/vlc
  • tguillem/vlc
  • jnqnfe/vlc
  • mdc/vlc
  • Vedaa/vlc
  • rasa/vlc
  • quink/vlc
  • yealo/vlc
  • aleksey_ak/vlc
  • ePirat/vlc
  • ilya.yanok/vlc
  • asenat/vlc
  • m/vlc
  • bunjee/vlc
  • BLumia/vlc
  • sagudev/vlc
  • hamedmonji30/vlc
  • nullgemm/vlc
  • DivyamAhuja/vlc
  • thesamesam/vlc
  • dag7/vlc
  • snehil101/vlc
  • haasn/vlc
  • jbk/vlc
  • ValZapod/vlc
  • mfkl/vlc
  • WangChuan/vlc
  • core1024/vlc
  • GhostVaibhav/vlc
  • dfuhrmann/vlc
  • davide.prade/vlc
  • tmatth/vlc
  • Courmisch/vlc
  • zouya/vlc
  • hpi/vlc
  • EwoutH/vlc
  • aleung27/vlc
  • hengwu0/vlc
  • saladin/vlc
  • ashuio/vlc
  • richselwood/vlc
  • verma16Ayush/vlc
  • chemicalflash/vlc
  • PoignardAzur/vlc
  • huangjieNT/vlc
  • Blake-Haydon/vlc
  • AnuthaDev/vlc
  • gsoc/gsoc2021/mpd/vlc
  • nicolas_lequec/vlc
  • sambassaly/vlc
  • thresh/vlc
  • bonniegong/vlc
  • myaashish/vlc
  • stavros.vagionitis/vlc
  • ileoo/vlc
  • louis-santucci/vlc
  • cchristiansen/vlc
  • sabyasachi07/vlc
  • AbduAmeen/vlc
  • ashishb0410/vlc
  • urbanhusky/vlc
  • davidepietrasanta/vlc
  • riksleutelstad/vlc
  • jeremyVignelles/vlc
  • komh/vlc
  • iamjithinjohn/vlc
  • JohannesKauffmann/vlc2
  • kunglao/vlc
  • natzberg/vlc
  • jill/vlc
  • cwendling/vlc
  • adufou/vlc
  • ErwanAirone/vlc
  • HasinduDilshan10/vlc
  • vagrantc/vlc
  • rafiv/macos-bigsur-icon
  • Aymeriic/vlc
  • saranshg20/vlc
  • metzlove24/vlc
  • linkfanel/vlc
  • Ds886/vlc
  • metehan-arslan/vlc
  • Skantes/vlc
  • kgsandundananjaya96/vlc
  • mitchcapper/vlc
  • advaitgupta/vlc
  • StefanBruens/vlc
  • ratajs/vlc
  • T.M.F.B.3761/vlc
  • m222059/vlc
  • casemerrick/vlc
  • joshuaword2alt/vlc
  • sjwaddy/vlc
  • dima/vlc
  • Ybalrid/vlc
  • umxprime/vlc
  • eschmidt/vlc
  • vannieuwenhuysenmichelle/vlc
  • badcf00d/vlc
  • wesinator/vlc
  • louis/vlc
  • xqq/vlc
  • EmperorYP7/vlc
  • NicoLiam/vlc
  • loveleen/vlc
  • rofferom/vlc
  • rbultje/vlc
  • TheUnamed/vlc
  • pratiksharma341/vlc
  • Saurab17/vlc
  • purist.coder/vlc
  • Shuicheng/vlc
  • mdrrubel292/vlc
  • silverbleu00/vlc
  • metif12/vlc
  • asher-m/vlc
  • jeffk/vlc
  • Brandonbr1/vlc
  • beautyyuyanli/vlc
  • rego21/vlc
  • muyangren907/vlc
  • collectionbylawrencejason/vlc
  • evelez/vlc
  • GSMgeeth/vlc
  • Oneric/vlc
  • TJ5/vlc
  • XuanTung95/vlc
  • darrenjenny21/vlc
  • Trenly/vlc
  • RockyTDR/vlc
  • mjakubowski/vlc
  • caprica/vlc
  • ForteFrankie/vlc
  • seannamiller19/vlc
  • junlon2006/vlc
  • kiwiren6666/vlc
  • iuseiphonexs/vlc
  • fenngtun/vlc
  • Rajdutt999/vlc
  • typx/vlc
  • leon.vitanos/vlc
  • robertogarci0938/vlc
  • gsoc/gsoc2022/luc65r/vlc-mpd
  • skeller/vlc
  • MCJack123/vlc
  • luc65r/vlc-mpd
  • popov895/vlc
  • claucambra/vlc
  • brad/vlc
  • matthewmurua88/vlc
  • Tomas8874/vlc
  • philenotfound/vlc
  • makita-do3/vlc
  • LZXCorp/vlc
  • mar0x/vlc
  • senojetkennedy0102/vlc
  • shaneb243/vlc
  • ahmadbader/vlc
  • rajduttcse26/vlc-audio-filters
  • Juniorzito8415/vlc
  • achernyakov/vlc
  • lucasjetgroup/vlc
  • pupdoggy666/vlc
  • gmde9363/vlc
  • alexnwayne/vlc
  • bahareebrahimi781/vlc
  • hamad633666/vlc
  • umghof3112/vlc
  • joe0199771874/vlc
  • Octocats66666666/vlc
  • jjm_223/vlc
  • btech10110.19/vlc
  • sunnykfc028/vlc-audio-filters
  • loic/vlc
  • nguyenminhducmx1/vlc
  • JanekKrueger/vlc
  • bstubbington2/vlc
  • rcombs/vlc
  • Ordissimo/vlc
  • king7532/vlc
  • noobsauce101/vlc
  • schong0525/vlc
  • myQwil/vlc
  • apisbg91/vlc
  • geeboy0101017/vlc
  • kim.faughey/vlc
  • nurupo/vlc
  • yyusea/vlc
  • 0711235879.khco/vlc
  • ialo/vlc
  • iloveyeye2/vlc
  • gdtdftdqtd/vlc
  • leandroconsiglio/vlc
  • AndyHTML2012/vlc
  • ncz/vlc
  • lucenticus/vlc
  • knr1931/vlc
  • kjoonlee/vlc
  • chandrakant100/vlc-qt
  • johge42/vlc
  • polter/vlc
  • hexchain/vlc
  • Tushwrld/vlc
  • mztea928/vlc
  • jbelloncastro/vlc
  • alvinhochun/vlc
  • ghostpiratecrow/vlc
  • ujjwaltwitx/vlc
  • alexsonarin06/vlc
  • adrianbon76/vlc
  • altsod/vlc
  • damien.lucas44/vlc
  • dmytrivtaisa/vlc
  • utk202/vlc
  • aaxhrj/vlc
  • thomas.hermes/vlc
  • structurenewworldorder/vlc
  • slomo/vlc
  • wantlamy/vlc
  • musc.o3cminc/vlc
  • thebarshablog/vlc
  • kerrick/vlc
  • kratos142518/vlc
  • leogps/vlc
  • vacantron/vlc
  • luna_koly/vlc
  • Ratio2/vlc
  • anuoshemohammad/vlc
  • apsun/vlc
  • aaa1115910/vlc
  • alimotmoyo/vlc
  • Ambossmann/vlc
  • Sam-LearnsToCode/vlc
  • Chilledheart/vlc
  • Labnann/vlc
  • ktcoooot1/vlc
  • mohit-marathe/vlc
  • johnddx/vlc
  • manstabuk/vlc
  • Omar-ahmed314/vlc
  • vineethkm/vlc
  • 9Enemi86/vlc
  • radoslav.m.panteleev/vlc
  • ashishami2002/vlc
  • Corbax/vlc
  • firnasahmed/vlc
  • pelayarmalam4/vlc
  • c0ff330k/vlc
  • shikhindahikar/vlc
  • l342723951/vlc
  • christianschwandner/vlc
  • douniwan5788/vlc
  • 7damian7/vlc
  • ferdnyc/vlc
  • f.ales1/vlc
  • pandagby/vlc
  • BaaBaa/vlc
  • jewe37/vlc
  • w00drow/vlc
  • russelltg/vlc
  • ironicallygod/vlc
  • soumyaDghosh/vlc
  • linzihao1999/vlc
  • deyayush6/vlc
  • mibi88/vlc
  • newabdallah10/vlc
  • jhorbincolombia/vlc
  • rimvihaqueshupto/vlc
  • andrewkhon98/vlc
  • fab78/vlc
  • lapaz17/vlc
  • amanna13/vlc
  • mdakram28/vlc
  • 07jw1980/vlc
  • sohamgupta/vlc
  • Eson-Jia1/vlc
  • Sumou/vlc
  • vikram-kangotra/vlc
  • chalice191/vlc
  • olivercalder/vlc
  • aaasg4001/vlc
  • zipdox/vlc
  • kwizart/vlc
  • Dragon-S/vlc
  • jdemeule/vlc
  • gabriel_lt/vlc
  • locutusofborg/vlc
  • sammirata/vlc-librist
  • another/vlc
  • Benjamin_Loison/vlc
  • ahmedmoselhi/vlc
  • petergaal/vlc
  • huynhsontung/vlc
  • dariusmihut/vlc
  • tvermaashutosh/vlc
  • buti/vlc
  • Niram7777/vlc
  • rohan-here/vlc
  • balaji-sivasakthi/vlc
  • rlindner81/vlc
  • Kakadus/vlc
  • djain/vlc
  • ABBurmeister/vlc
  • craighuggins/vlc
  • orbea/vlc
  • maxos/vlc
  • aakarshmj/vlc
  • kblaschke/vlc
  • ankitm/vlc
  • advait-0/vlc
  • mohak2003/vlc
  • yselkowitz/vlc
  • AZM999/vlc-azm
  • andrey.turkin/vlc
  • Disha-Baghel/vlc
  • nowrep/vlc
  • Apeng/vlc
  • Choucroute_melba/vlc
  • autra/vlc
  • eclipseo/vlc
  • fhuber/vlc
  • olafhering/vlc
  • sdasda7777/vlc
  • 1div0/vlc
  • skosnits/vlc-extended-playlist-support
  • dnicolson/vlc
  • Timshel/vlc
  • octopols/vlc
  • MangalK/vlc
  • nima64/vlc
  • misawai/vlc
  • Alexander-Wilms/vlc
  • Maxime2/vlc-fork-for-visualizer
  • ww/vlc
  • jeske/vlc
  • sgross-emlix/vlc
  • morenonatural/vlc
  • freakingLovesVLC/vlc
  • borisgolovnev/vlc
  • mpromonet/vlc
  • diogo.simao-marques/vlc
  • masstock/vlc
  • pratikpatel8982/vlc
  • hugok79/vlc
  • longervision/vlc
  • abhiudaysurya/vlc
  • rishabhgarg/vlc
  • tumic/vlc
  • cart/vlc
  • shubham442/vlc
  • Aditya692005/vlc
  • sammirata/vlc4
  • syrykh/vlc
  • Vvorcun/macos-new-icon
  • AyaanshC/vlc
  • nasso/vlc
  • Quark/vlc
  • sebastinas/vlc
  • rhstone/vlc
  • talregev/vlc
  • Managor/vlc
  • abdsaber000/vlc
  • falbrechtskirchinger/vlc
  • b.sullender/vlc
  • hulxv/vlc
  • zyad-ayad/vlc
  • shocknovaa/vlc
  • gremlinflat/vlc
  • Pratham24D/vlc
411 results
Show changes
Commits on Source (12)
Showing with 141 additions and 58 deletions
......@@ -144,6 +144,12 @@ static void addShadow(NSImageView *__unsafe_unretained imageView)
imageView.shadow = buttonShadow;
}
@interface VLCLibraryWindow ()
@property BOOL presentLoadingOverlayOnVideoPlaybackHide;
@end
@implementation VLCLibraryWindow
- (void)awakeFromNib
......@@ -806,12 +812,19 @@ static void addShadow(NSImageView *__unsafe_unretained imageView)
[self showControlsBarImmediately];
[self updateArtworkButtonEnabledState];
self.splitViewController.multifunctionSidebarViewController.mainVideoModeEnabled = NO;
if (self.presentLoadingOverlayOnVideoPlaybackHide) {
[self showLoadingOverlay];
}
}
- (void)showLoadingOverlay
{
if ([self.libraryTargetView.subviews containsObject:self.loadingOverlayView]) {
return;
} else if ([self.libraryTargetView.subviews containsObject:self.videoViewController.view]) {
self.presentLoadingOverlayOnVideoPlaybackHide = YES;
return;
}
self.loadingOverlayView.wantsLayer = YES;
......@@ -831,6 +844,8 @@ static void addShadow(NSImageView *__unsafe_unretained imageView)
- (void)hideLoadingOverlay
{
self.presentLoadingOverlayOnVideoPlaybackHide = NO;
if (![self.libraryTargetView.subviews containsObject:self.loadingOverlayView]) {
return;
}
......
......@@ -61,6 +61,8 @@
#include <QUrl>
#include <QDate>
#include <QMimeData>
#include <QClipboard>
#include <QInputDialog>
#include <QQmlProperty>
#include <QQmlContext>
......@@ -829,6 +831,66 @@ VLCVarChoiceModel* MainCtx::getExtraInterfaces()
return m_extraInterfaces;
}
bool MainCtx::pasteFromClipboard()
{
assert(qApp);
const QClipboard *const clipboard = qApp->clipboard();
if (Q_UNLIKELY(!clipboard))
return false;
const QMimeData *mimeData = clipboard->mimeData(QClipboard::Selection);
if (!mimeData || !mimeData->hasUrls())
mimeData = clipboard->mimeData(QClipboard::Clipboard);
if (Q_UNLIKELY(!mimeData))
return false;
QList<QUrl> urlList = mimeData->urls();
QString text = mimeData->text();
if (urlList.count() > 1 || text.contains('\n'))
{
// NOTE: The reason that mime data for `text/uri-list` is not used
// directly as the placeholder of the input dialog instead of
// re-constructing is to decode the urls in the list.
QString placeholder;
if (urlList.isEmpty())
{
placeholder = std::move(text);
}
else
{
for (const auto& i : urlList)
placeholder += i.toString(QUrl::PrettyDecoded) + '\n';
placeholder.chop(1);
}
bool ok = false;
const QString ret = QInputDialog::getMultiLineText(nullptr,
qtr("Paste from clipboard"),
qtr("Do you want to enqueue the following URLs into the playlist?"),
placeholder,
&ok);
if (!ok)
return false;
for (const auto& i : QStringView(ret).split('\n'))
{
if (i.length() > 0)
THEMPL->append(i.trimmed().toString(), false);
}
return true;
}
else if ((urlList.count() == 1) || mimeData->hasText())
{
THEDP->openUrlDialog();
return true;
}
return false;
}
/*****************************************************************************
* PopupMenuCB: callback triggered by the intf-popupmenu playlist variable.
* We don't show the menu directly here because we don't want the
......
......@@ -439,6 +439,8 @@ public slots:
virtual void reloadPrefs();
VLCVarChoiceModel* getExtraInterfaces();
bool pasteFromClipboard();
protected slots:
void onInputChanged( bool );
......
......@@ -103,8 +103,8 @@ FocusScope {
Widgets.RoundImage {
source: artist.cover || VLCStyle.noArtArtist
sourceSize.width: width
sourceSize.height: height
sourceSize.width: width * Screen.devicePixelRatio
sourceSize.height: height * Screen.devicePixelRatio
anchors.fill: parent
radius: VLCStyle.cover_normal
}
......
......@@ -16,6 +16,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
import QtQuick
import QtQuick.Window
import QtQuick.Controls
import QtQuick.Layouts
import QtQml.Models
......@@ -125,8 +126,8 @@ FocusScope {
source: (root.model && root.model.cover && root.model.cover !== "")
? root.model.cover
: VLCStyle.noArtAlbumCover
sourceSize.width: width
sourceSize.height: height
sourceSize.width: width * Screen.devicePixelRatio
sourceSize.height: height * Screen.devicePixelRatio
Widgets.DefaultShadow {
anchors.centerIn: parent
......
......@@ -19,6 +19,7 @@
*****************************************************************************/
import QtQuick
import QtQuick.Window
import QtQuick.Templates as T
import QtQuick.Layouts
import QtQml.Models
......@@ -166,8 +167,8 @@ T.ItemDelegate {
source: (model.cover) ? model.cover
: VLCStyle.noArtArtistSmall
sourceSize.width: width
sourceSize.height: height
sourceSize.width: width * Screen.devicePixelRatio
sourceSize.height: height * Screen.devicePixelRatio
Layout.alignment: Qt.AlignLeft | Qt.AlignVCenter
......
......@@ -16,6 +16,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
import QtQuick
import QtQuick.Window
import QtQuick.Controls
import QtQml.Models
import QtQuick.Layouts
......@@ -113,8 +114,8 @@ FocusScope {
anchors.fill: parent
source: model.thumbnail || VLCStyle.noArtVideoCover
sourceSize.width: width
sourceSize.height: height
sourceSize.width: width * Screen.devicePixelRatio
sourceSize.height: height * Screen.devicePixelRatio
radius: VLCStyle.gridCover_radius
Widgets.DefaultShadow {
......
......@@ -28,7 +28,7 @@ Item {
ShortcutExt{ sequence:"Ctrl+D"; onActivated: DialogsProvider.openDiscDialog(); }
ShortcutExt{ sequence:"Ctrl+N"; onActivated: DialogsProvider.openNetDialog(); }
ShortcutExt{ sequence:"Ctrl+C"; onActivated: DialogsProvider.openCaptureDialog(); }
ShortcutExt{ sequence:"Ctrl+V"; onActivated: DialogsProvider.openUrlDialog(); }
ShortcutExt{ sequence: StandardKey.Paste; onActivated: MainCtx.pasteFromClipboard(); }
ShortcutExt{ context: Qt.WindowShortcut; sequence:"Ctrl+Y"; onActivated: DialogsProvider.savePlayingToPlaylist(); }
ShortcutExt{ sequence:"Ctrl+R"; onActivated: DialogsProvider.openAndTranscodingDialogs(); }
ShortcutExt{ sequence:"Ctrl+S"; onActivated: DialogsProvider.openAndStreamingDialogs(); }
......
......@@ -18,6 +18,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
import QtQuick
import QtQuick.Window
import QtQuick.Templates as T
import QtQml.Models
......@@ -471,7 +472,7 @@ Item {
height: coverSize
radius: bg.radius
source: modelData.artwork ?? ""
sourceSize: dragItem.imageSourceSize ?? Qt.size(width, height)
sourceSize: dragItem.imageSourceSize ?? Qt.size(width * Screen.devicePixelRatio, height * Screen.devicePixelRatio)
onStatusChanged: {
if (status === Image.Ready)
......
......@@ -17,6 +17,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
import QtQuick
import QtQuick.Window
import QtQuick.Controls
......@@ -82,8 +83,8 @@ Rectangle {
radius: root.radius
sourceSize.width: root.pictureWidth
sourceSize.height: root.pictureHeight
sourceSize.width: root.pictureWidth * Screen.devicePixelRatio
sourceSize.height: root.pictureHeight * Screen.devicePixelRatio
onStatusChanged: {
if (status === Image.Loading) {
......@@ -112,8 +113,8 @@ Rectangle {
// try to release the resources otherwise
source: visible ? root.fallbackImageSource : ""
sourceSize.width: root.pictureWidth
sourceSize.height: root.pictureHeight
sourceSize.width: root.pictureWidth * Screen.devicePixelRatio
sourceSize.height: root.pictureHeight * Screen.devicePixelRatio
cache: true
}
......
......@@ -196,6 +196,21 @@ tc_vaegl_update(const struct vlc_gl_interop *interop, uint32_t textures[],
(void) plane_offset;
struct priv *priv = interop->priv;
vlc_object_t *o = VLC_OBJECT(interop->gl);
if (pic == priv->last.pic)
{
#if VA_CHECK_VERSION(1, 1, 0)
for (unsigned i = 0; i < priv->last.va_surface_descriptor.num_layers; ++i)
#else
for (unsigned i = 0; i < priv->last.va_image.num_planes; ++i)
#endif
{
priv->gl.BindTexture(interop->tex_target, textures[i]);
priv->glEGLImageTargetTexture2DOES(interop->tex_target, priv->last.egl_images[i]);
}
return VLC_SUCCESS;
}
#if VA_CHECK_VERSION(1, 1, 0)
VADRMPRIMESurfaceDescriptor va_surface_descriptor;
#else
......@@ -206,43 +221,30 @@ tc_vaegl_update(const struct vlc_gl_interop *interop, uint32_t textures[],
bool release_image = false, release_buffer_info = false;
unsigned num_planes = 0;
if (pic == priv->last.pic)
{
#if VA_CHECK_VERSION(1, 1, 0)
va_surface_descriptor = priv->last.va_surface_descriptor;
#else
va_image = priv->last.va_image;
#endif
for (unsigned i = 0; i < priv->last.num_planes; ++i)
egl_images[i] = priv->last.egl_images[i];
}
else
{
#if VA_CHECK_VERSION(1, 1, 0)
VA_CALL(o, vaSyncSurface, priv->vadpy, vlc_vaapi_PicGetSurface(pic));
if (vlc_vaapi_ExportSurfaceHandle(o, priv->vadpy, vlc_vaapi_PicGetSurface(pic),
VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2,
VA_EXPORT_SURFACE_READ_ONLY | VA_EXPORT_SURFACE_SEPARATE_LAYERS,
&va_surface_descriptor))
goto error;
release_image = true;
VA_CALL(o, vaSyncSurface, priv->vadpy, vlc_vaapi_PicGetSurface(pic));
if (vlc_vaapi_ExportSurfaceHandle(o, priv->vadpy, vlc_vaapi_PicGetSurface(pic),
VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2,
VA_EXPORT_SURFACE_READ_ONLY | VA_EXPORT_SURFACE_SEPARATE_LAYERS,
&va_surface_descriptor))
goto error;
release_image = true;
#else
if (vlc_vaapi_DeriveImage(o, priv->vadpy, vlc_vaapi_PicGetSurface(pic),
&va_image))
goto error;
release_image = true;
if (vlc_vaapi_DeriveImage(o, priv->vadpy, vlc_vaapi_PicGetSurface(pic),
&va_image))
goto error;
release_image = true;
assert(va_image.format.fourcc == priv->fourcc);
assert(va_image.format.fourcc == priv->fourcc);
va_buffer_info = (VABufferInfo) {
.mem_type = VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME
};
if (vlc_vaapi_AcquireBufferHandle(o, priv->vadpy, va_image.buf,
&va_buffer_info))
goto error;
va_buffer_info = (VABufferInfo) {
.mem_type = VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME
};
if (vlc_vaapi_AcquireBufferHandle(o, priv->vadpy, va_image.buf,
&va_buffer_info))
goto error;
#endif
release_buffer_info = true;
}
release_buffer_info = true;
#if VA_CHECK_VERSION(1, 1, 0)
num_planes = va_surface_descriptor.num_layers;
......@@ -282,22 +284,19 @@ tc_vaegl_update(const struct vlc_gl_interop *interop, uint32_t textures[],
}
#endif
if (pic != priv->last.pic)
{
if (priv->last.pic != NULL)
vaegl_release_last_pic(interop, priv);
priv->last.pic = picture_Hold(pic);
if (priv->last.pic != NULL)
vaegl_release_last_pic(interop, priv);
priv->last.pic = picture_Hold(pic);
#if VA_CHECK_VERSION(1, 1, 0)
priv->last.va_surface_descriptor = va_surface_descriptor;
priv->last.va_surface_descriptor = va_surface_descriptor;
#else
priv->last.va_image = va_image;
priv->last.va_buffer_info = va_buffer_info;
priv->last.va_image = va_image;
priv->last.va_buffer_info = va_buffer_info;
#endif
priv->last.num_planes = num_planes;
priv->last.num_planes = num_planes;
for (unsigned i = 0; i < num_planes; ++i)
priv->last.egl_images[i] = egl_images[i];
}
for (unsigned i = 0; i < num_planes; ++i)
priv->last.egl_images[i] = egl_images[i];
return VLC_SUCCESS;
......