[vlc-commits] [Git][videolan/vlc][master] aout: remove original_pts

2024-04-07 Thread Thomas Guillem (@tguillem)


Thomas Guillem pushed to branch master at VideoLAN / VLC


Commits:
1727b938 by Thomas Guillem at 2024-04-07T18:11:04+00:00
aout: remove original_pts

Partial revert of 9d4bad0da0f49033ed0efaa961066d1187ac5780

All audio resampler already use the original pts (out-pts = 
in-pts)
(but the block-length do match the new rate).

- - - - -


1 changed file:

- src/audio_output/dec.c


Changes:

=
src/audio_output/dec.c
=
@@ -59,7 +59,6 @@ struct vlc_aout_stream
 vlc_tick_t request_delay;
 vlc_tick_t delay;
 } sync;
-vlc_tick_t original_pts;
 
 struct
 {
@@ -159,7 +158,6 @@ static int stream_GetDelay(vlc_aout_stream *stream, 
vlc_tick_t *delay)
 static void stream_Discontinuity(vlc_aout_stream *stream)
 {
 stream->sync.discontinuity = true;
-stream->original_pts = VLC_TICK_INVALID;
 
 vlc_mutex_lock(>timing.lock);
 stream->timing.first_pts = VLC_TICK_INVALID;
@@ -735,15 +733,6 @@ int vlc_aout_stream_Play(vlc_aout_stream *stream, block_t 
*block)
 if (block->i_flags & BLOCK_FLAG_DISCONTINUITY)
 stream_Discontinuity(stream);
 
-if (stream->original_pts == VLC_TICK_INVALID)
-{
-/* Use the original PTS for synchronization and as a play date of the
- * aout module. This PTS need to be saved here in order to use the PTS
- * of the first block that has been filtered. Indeed, aout filters may
- * need more than one block to output a new one. */
-stream->original_pts = block->i_pts;
-}
-
 if (stream->filters)
 {
 if (atomic_load_explicit(>vp.update, memory_order_relaxed))
@@ -759,9 +748,6 @@ int vlc_aout_stream_Play(vlc_aout_stream *stream, block_t 
*block)
 return ret;
 }
 
-const vlc_tick_t original_pts = stream->original_pts;
-stream->original_pts = VLC_TICK_INVALID;
-
 /* Software volume */
 if (stream->volume != NULL)
 aout_volume_Amplify(stream->volume, block);
@@ -784,10 +770,10 @@ int vlc_aout_stream_Play(vlc_aout_stream *stream, block_t 
*block)
 
 vlc_clock_Lock(stream->sync.clock);
 vlc_tick_t play_date =
-vlc_clock_ConvertToSystem(stream->sync.clock, system_now, original_pts,
+vlc_clock_ConvertToSystem(stream->sync.clock, system_now, block->i_pts,
   stream->sync.rate);
 vlc_clock_Unlock(stream->sync.clock);
-stream_Synchronize(stream, system_now, play_date, original_pts);
+stream_Synchronize(stream, system_now, play_date, block->i_pts);
 
 vlc_audio_meter_Process(>meter, block, play_date);
 
@@ -797,14 +783,14 @@ int vlc_aout_stream_Play(vlc_aout_stream *stream, block_t 
*block)
 vlc_mutex_lock(>timing.lock);
 /* Save the first timing point seeing a rate change */
 stream->timing.rate_system_ts = play_date;
-stream->timing.rate_audio_ts = original_pts;
+stream->timing.rate_audio_ts = block->i_pts;
 stream->timing.rate = stream->sync.rate;
 
 /* Update the clock immediately with the new rate, instead of waiting
  * for a timing update that could come too late (after 1second). */
 vlc_clock_Lock(stream->sync.clock);
 stream->timing.last_drift =
-vlc_clock_Update(stream->sync.clock, play_date, original_pts,
+vlc_clock_Update(stream->sync.clock, play_date, block->i_pts,
  stream->sync.rate);
 vlc_clock_Unlock(stream->sync.clock);
 vlc_mutex_unlock(>timing.lock);
@@ -813,7 +799,7 @@ int vlc_aout_stream_Play(vlc_aout_stream *stream, block_t 
*block)
 if (stream->timing.first_pts == VLC_TICK_INVALID)
 {
 vlc_mutex_lock(>timing.lock);
-stream->timing.first_pts = original_pts;
+stream->timing.first_pts = block->i_pts;
 vlc_mutex_unlock(>timing.lock);
 }
 



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/1727b938bf13514bbb34ecb00c4adb91164b4e57

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/1727b938bf13514bbb34ecb00c4adb91164b4e57
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] [Git][videolan/vlc][master] 2 commits: visualization: meson: use enabled flag

2024-04-07 Thread @fkuehne


Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
62686410 by Alexandre Janniaux at 2024-04-07T14:59:17+00:00
visualization: meson: use enabled flag

- - - - -
0a03780c by Alexandre Janniaux at 2024-04-07T14:59:17+00:00
visualization: meson: add missing plugins

- - - - -


2 changed files:

- meson_options.txt
- modules/visualization/meson.build


Changes:

=
meson_options.txt
=
@@ -265,6 +265,11 @@ option('vorbis',
 value : 'auto',
 description : 'Enable/disable vorbis support')
 
+option('vsxu',
+type : 'feature',
+value : 'auto',
+description : 'Enable/disable VSXU visualization support')
+
 option('x265',
 type : 'feature',
 value : 'auto',


=
modules/visualization/meson.build
=
@@ -1,12 +1,22 @@
+# glspectrum plugin
+vlc_modules += {
+'name' : 'glspectrum',
+'sources' : files('glspectrum.c',
+  'visual/fft.c', 'visual/fft.h',
+  'visual/window.c', 'visual/window.h',
+  'visual/window_presets.h'),
+'dependencies' : [opengl_dep, m_lib],
+'enabled' : opengl_dep.found(),
+}
+
 # goom visualization plugin
 goom2_dep = dependency('libgoom2', required: get_option('goom2'))
-if goom2_dep.found()
-vlc_modules += {
-'name' : 'goom',
-'sources' : files('goom.c'),
-'dependencies' : [goom2_dep, m_lib]
-}
-endif
+vlc_modules += {
+'name' : 'goom',
+'sources' : files('goom.c'),
+'dependencies' : [goom2_dep, m_lib],
+'enabled' : goom2_dep.found(),
+}
 
 # projectM visualization plugin
 projectm_dep = dependency('libprojectM', version: '>= 2.0.0', required: false)
@@ -19,13 +29,30 @@ else
 required: false)
 endif
 
-if projectm_dep.found()
-  if host_system != 'windows'
-vlc_modules += {
-'name' : 'projectm',
-'sources' : files('projectm.cpp'),
-'dependencies' : [projectm_dep],
-'cpp_args' : [projectm_args]
-}
-  endif
-endif
+vlc_modules += {
+'name' : 'projectm',
+'sources' : files('projectm.cpp'),
+'dependencies' : [projectm_dep],
+'cpp_args' : [projectm_args],
+'enabled' : projectm_dep.found() and host_system != 'windows'
+}
+
+# Visual visualization plugin
+vlc_modules += {
+'name' : 'visual',
+'sources' : files(
+'visual/visual.c', 'visual/visual.h',
+'visual/fft.c', 'visual/fft.h',
+'visual/window.c', 'visual/window.h',
+'visual/effects.c', 'visual/window_presets.h'),
+'dependencies' : [m_lib],
+}
+
+# Vsxu plugin
+vsxu_dep = dependency('libvsxu', required: get_option('vsxu'))
+vlc_modules += {
+'name' : 'vsxu',
+'sources' : files('vsxu.cpp', 'cyclic_buffer.h'),
+'dependencies' : [m_lib, vsxu_dep],
+'enabled' : vsxu_dep.found()
+}



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/ee8329a5afc0af367324c838e3336c8b267a489e...0a03780ca80b992ce81b05c1d93dd838903f27cb

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/ee8329a5afc0af367324c838e3336c8b267a489e...0a03780ca80b992ce81b05c1d93dd838903f27cb
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] [Git][videolan/vlc][master] 2 commits: stream_out: meson: refactor chromaprint enabled

2024-04-07 Thread @fkuehne


Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
53cef95f by Alexandre Janniaux at 2024-04-07T13:33:14+00:00
stream_out: meson: refactor chromaprint enabled

- - - - -
ee8329a5 by Alexandre Janniaux at 2024-04-07T13:33:14+00:00
stream_out: meson: add chromecast module

- - - - -


3 changed files:

- meson_options.txt
- + modules/stream_out/chromecast/meson.build
- modules/stream_out/meson.build


Changes:

=
meson_options.txt
=
@@ -115,6 +115,10 @@ option('css_engine',
 description : 'CSS selector engine for WebVTT')
 
 # Dependency options
+option('chromecast',
+type : 'feature',
+value : 'auto',
+description : 'Enable chromecast support')
 
 option('qt',
 type : 'feature',


=
modules/stream_out/chromecast/meson.build
=
@@ -0,0 +1,49 @@
+# Chromecast module
+protobuf_dep = dependency('protobuf', required: get_option('chromecast'))
+protoc = disabler()
+chromecast_proto = []
+
+if protobuf_dep.found()
+protobuf_version_list = protobuf_dep.version().split('.')
+protoc = find_program('protoc',
+version: '@0@.@1@'.format(protobuf_version_list[0], 
protobuf_version_list[1]),
+required: get_option('chromecast'))
+protobuf_gen = generator(protoc,
+output: [
+'@basen...@.pb.cc'.format(protobuf_dep.version()),
+'@BASENAME@.pb.h'.format(protobuf_dep.version())
+],
+arguments: [
+'--proto_path=@CURRENT_SOURCE_DIR@',
+'--cpp_out=@BUILD_DIR@',
+'@INPUT@',
+])
+chromecast_proto += [protobuf_gen.process('cast_channel.proto')]
+endif
+
+vlc_modules += {
+'name' : 'demux_chromecast',
+'sources' : files(
+'chromecast_demux.cpp',
+'chromecast.h',
+'chromecast_common.h') + chromecast_proto,
+'dependencies' : [protobuf_dep],
+'enabled': get_option('stream_outputs') and protoc.found() and 
protobuf_dep.found(),
+}
+
+vlc_modules += {
+'name' : 'chromecast',
+'sources' : files(
+'cast.cpp',
+'chromecast.h',
+'chromecast_common.h',
+'chromecast_ctrl.cpp',
+'chromecast_communication.cpp',
+'../../misc/webservices/json.c',
+'../../misc/webservices/json.h',
+'../renderer_common.cpp',
+'../renderer_common.hpp') +
+chromecast_proto,
+'dependencies' : [socket_libs, protobuf_dep],
+'enabled': get_option('stream_outputs') and protobuf_dep.found() and 
protoc.found(),
+}


=
modules/stream_out/meson.build
=
@@ -141,10 +141,12 @@ vlc_modules += {
 
 # Chromaprint module
 libchromaprint_dep = dependency('libchromaprint', version: '>= 0.6.0', 
required: get_option('libchromaprint'))
-if libchromaprint_dep.found()
-vlc_modules += {
-'name' : 'stream_out_chromaprint',
-'sources' : files('chromaprint.c'),
-'dependencies' : [libchromaprint_dep]
-}
-endif
+vlc_modules += {
+'name' : 'stream_out_chromaprint',
+'sources' : files('chromaprint.c'),
+'dependencies' : [libchromaprint_dep],
+'enabled' : libchromaprint_dep.found(),
+}
+
+# Chromecast module
+subdir('chromecast')



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/07f3a9cc958b9cf19ff1fabd1930ce7aefbf7ded...ee8329a5afc0af367324c838e3336c8b267a489e

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/07f3a9cc958b9cf19ff1fabd1930ce7aefbf7ded...ee8329a5afc0af367324c838e3336c8b267a489e
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] [Git][videolan/vlc][master] macosx: Prevent crash in audio view controller libraryModelUpdated

2024-04-07 Thread @fkuehne


Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
07f3a9cc by Claudio Cambra at 2024-04-07T12:17:06+00:00
macosx: Prevent crash in audio view controller libraryModelUpdated

This selector can handle notifications that do not necessarily carry a 
VLCLibraryModel object

Signed-off-by: Claudio Cambra develo...@claudiocambra.com

- - - - -


1 changed file:

- modules/gui/macosx/library/audio-library/VLCLibraryAudioViewController.m


Changes:

=
modules/gui/macosx/library/audio-library/VLCLibraryAudioViewController.m
=
@@ -593,9 +593,7 @@ NSString *VLCLibraryPlaceholderAudioViewIdentifier = 
@"VLCLibraryPlaceholderAudi
 
 - (void)libraryModelUpdated:(NSNotification *)aNotification
 {
-NSParameterAssert(aNotification);
-VLCLibraryModel *model = (VLCLibraryModel *)aNotification.object;
-NSAssert(model, @"Notification object should be a VLCLibraryModel");
+VLCLibraryModel * const model = 
VLCMain.sharedInstance.libraryController.libraryModel;
 const NSUInteger audioCount = model.numberOfAudioMedia;
 
 if ((self.libraryWindow.librarySegmentType == VLCLibraryMusicSegment ||



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/07f3a9cc958b9cf19ff1fabd1930ce7aefbf7ded

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/07f3a9cc958b9cf19ff1fabd1930ce7aefbf7ded
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] [Git][videolan/vlc][master] macosx: Remove components relating to obsolete "Brightness Threshold" video filter

2024-04-07 Thread @fkuehne


Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
c19fcb5d by Claudio Cambra at 2024-04-07T10:40:15+00:00
macosx: Remove components relating to obsolete Brightness Threshold 
video filter

Signed-off-by: Claudio Cambra develo...@claudiocambra.com

- - - - -


3 changed files:

- modules/gui/macosx/UI/VideoEffects.xib
- modules/gui/macosx/panels/VLCVideoEffectsWindowController.h
- modules/gui/macosx/panels/VLCVideoEffectsWindowController.m


Changes:

=
modules/gui/macosx/UI/VideoEffects.xib
=
@@ -20,7 +20,6 @@
 
 
 
-
 
 
 
@@ -265,7 +264,6 @@
 
 
 
-
 
 
 
@@ -280,7 +278,6 @@
 
 
 
-
 
 
 
@@ -288,8 +285,7 @@
 
 
 
-
-
+
 
 
 


=
modules/gui/macosx/panels/VLCVideoEffectsWindowController.h
=
@@ -41,7 +41,6 @@
 @property (readwrite, weak) IBOutlet NSSlider *adjustContrastSlider;
 @property (readwrite, weak) IBOutlet NSTextField *adjustBrightnessLabel;
 @property (readwrite, weak) IBOutlet NSSlider *adjustBrightnessSlider;
-@property (readwrite, weak) IBOutlet NSButton *adjustBrightnessCheckbox;
 @property (readwrite, weak) IBOutlet NSTextField *adjustSaturationLabel;
 @property (readwrite, weak) IBOutlet NSSlider *adjustSaturationSlider;
 @property (readwrite, weak) IBOutlet NSTextField *adjustGammaLabel;
@@ -171,7 +170,6 @@
 /* basic */
 - (IBAction)enableAdjust:(id)sender;
 - (IBAction)adjustSliderChanged:(id)sender;
-- (IBAction)enableAdjustBrightnessThreshold:(id)sender;
 - (IBAction)enableSharpen:(id)sender;
 - (IBAction)sharpenSliderChanged:(id)sender;
 - (IBAction)enableBanding:(id)sender;


=
modules/gui/macosx/panels/VLCVideoEffectsWindowController.m
=
@@ -219,7 +219,6 @@ NSString *VLCVideoEffectsProfileNamesKey = 
@"VideoEffectProfileNames";
 [_adjustHueLabel setStringValue:_NS("Hue")];
 [_adjustContrastLabel setStringValue:_NS("Contrast")];
 [_adjustBrightnessLabel setStringValue:_NS("Brightness")];
-[_adjustBrightnessCheckbox setTitle:_NS("Brightness Threshold")];
 [_adjustSaturationLabel setStringValue:_NS("Saturation")];
 [_adjustGammaLabel setStringValue:_NS("Gamma")];
 [_adjustResetButton setTitle: _NS("Reset")];
@@ -928,7 +927,6 @@ NSString *VLCVideoEffectsProfileNamesKey = 
@"VideoEffectProfileNames";
 
 [VLCVideoFilterHelper setVideoFilter: "adjust" on: b_state];
 [_adjustBrightnessSlider setEnabled: b_state];
-[_adjustBrightnessCheckbox setEnabled: NO];
 [_adjustBrightnessLabel setEnabled: b_state];
 [_adjustContrastSlider setEnabled: b_state];
 [_adjustContrastLabel setEnabled: b_state];



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/c19fcb5d165c565d2b71d8d88cc4222dedfdab72

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/c19fcb5d165c565d2b71d8d88cc4222dedfdab72
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] [Git][videolan/vlc][master] macosx: Fix use of deprecated kAudioHardwareServiceDeviceProperty_VirtualMasterVolume

2024-04-07 Thread @fkuehne


Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
1d06870f by Claudio Cambra at 2024-04-07T09:41:13+00:00
macosx: Fix use of deprecated 
kAudioHardwareServiceDeviceProperty_VirtualMasterVolume

Signed-off-by: Claudio Cambra develo...@claudiocambra.com

- - - - -


1 changed file:

- modules/gui/macosx/os-integration/VLCSystemVolume.m


Changes:

=
modules/gui/macosx/os-integration/VLCSystemVolume.m
=
@@ -31,7 +31,7 @@
 static const AudioObjectPropertyAddress virtualMasterPropertyAddress = {
 .mElement   = kAudioObjectPropertyElementMaster,
 .mScope = kAudioObjectPropertyScopeOutput,
-.mSelector  = kAudioHardwareServiceDeviceProperty_VirtualMasterVolume,
+.mSelector  = kAudioHardwareServiceDeviceProperty_VirtualMainVolume,
 };
 
 @implementation VLCSystemVolume



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/1d06870f2d939de96e8f96b357804c60b98e5a38

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/1d06870f2d939de96e8f96b357804c60b98e5a38
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] [Git][videolan/vlc][master] macosx: Fix implicit self warnings

2024-04-07 Thread @fkuehne


Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
c849a7c5 by Claudio Cambra at 2024-04-07T07:25:28+00:00
macosx: Fix implicit self warnings

Signed-off-by: Claudio Cambra develo...@claudiocambra.com

- - - - -


2 changed files:

- modules/gui/macosx/views/VLCTrackingView.m
- modules/gui/macosx/windows/video/VLCVoutView.m


Changes:

=
modules/gui/macosx/views/VLCTrackingView.m
=
@@ -49,7 +49,7 @@
 weakViewToHide.animator.alphaValue = hideVTH ? 0.0 : 1.0;
 weakViewToShow.animator.alphaValue = hideVTS ? 0.0 : 1.0;
 } completionHandler:^{
-if (startMouseIn != _mouseIn) {
+if (startMouseIn != self->_mouseIn) {
 return;
 }
 weakViewToHide.hidden = hideVTH;


=
modules/gui/macosx/windows/video/VLCVoutView.m
=
@@ -110,9 +110,10 @@
 // dispatch the event async to prevent potential deadlock 
 // with video output's RenderPicture's display lock
 dispatch_async(_eventQueue, ^{
-if (_wnd == NULL)
+if (self->_wnd == NULL) {
 return;
-vlc_window_ReportSize(_wnd, bounds.size.width, bounds.size.height);
+}
+vlc_window_ReportSize(self->_wnd, bounds.size.width, 
bounds.size.height);
 });
 [super layout];
 }



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/c849a7c55f28e78d703db95485e9334936b674e6

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/c849a7c55f28e78d703db95485e9334936b674e6
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits