Skip to content
Snippets Groups Projects
  1. Mar 20, 2023
  2. Mar 19, 2023
  3. Mar 18, 2023
  4. Mar 17, 2023
    • Pierre Lamot's avatar
      4d5606c5
    • Pierre Lamot's avatar
      qt: use high-contrast colors on windows · 1a4eb729
      Pierre Lamot authored and Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf committed
      when the user enable the high-contrast mode on windows, we must comply to the
      system palette
      1a4eb729
    • Thomas Guillem's avatar
      audiotrack: use precise latency · e476328e
      Thomas Guillem authored and Steve Lhomme's avatar Steve Lhomme committed
      AudioTrack#getTimestamp, present since API 19, is the most precise,
      [-20ms;0ms] delay tested with the Sync-One2.
      e476328e
    • Thomas Guillem's avatar
      audiotrack: use TimingReport API · 4bb250cd
      Thomas Guillem authored and Steve Lhomme's avatar Steve Lhomme committed
      Remove the smoothpos hack that was only needed for time_get.
      4bb250cd
    • Thomas Guillem's avatar
      audiotrack: remove unused cond · 8d0819f5
      Thomas Guillem authored and Steve Lhomme's avatar Steve Lhomme committed
      Leftover from 582570aa
      8d0819f5
    • Thomas Guillem's avatar
      audiotrack: reorder to avoid forward declaration · 6202abd9
      Thomas Guillem authored and Steve Lhomme's avatar Steve Lhomme committed
      No functional changes.
      6202abd9
    • Benjamin Arnaud's avatar
      qml/Player: Add pin background opacity · cb8d5930
      Benjamin Arnaud authored and Steve Lhomme's avatar Steve Lhomme committed
      cb8d5930
    • Benjamin Arnaud's avatar
      qml/Player: Update the 'pinned' behavior · a965917a
      Benjamin Arnaud authored and Steve Lhomme's avatar Steve Lhomme committed
      When pinned in fullscreen, we want the controlbar to retain the default design and hide
      everything at the top.
      a965917a
    • Benjamin Arnaud's avatar
      qml/TopBar: Add the 'resumeVisible' property · 45875b43
      Benjamin Arnaud authored and Steve Lhomme's avatar Steve Lhomme committed
      45875b43
    • Benjamin Arnaud's avatar
      qt/mainctx: Add the 'pinOpacity' property · debe7eac
      Benjamin Arnaud authored and Steve Lhomme's avatar Steve Lhomme committed
      debe7eac
    • Alaric Senat's avatar
      taglib: wav: fix RIFF INFO tags parsing · a26e2ba3
      Alaric Senat authored and Steve Lhomme's avatar Steve Lhomme committed
      TagLib does not provide an union of both ID3v2 and INFO tags via the
      usual `File::tag()` method. Their justification lies in the code for
      now:
      
      ```cpp
      /*!
       * Returns the ID3v2 Tag for this file.
       *
       * \note This method does not return all the tags for this file for
       * backward compatibility.  Will be fixed in TagLib 2.0.
       */
      ID3v2::Tag *tag() const;
      ```
      
      To support WAV files providing RIFF INFO tags, we must specifically
      parse them before TagLib 2.0 (not released yet).
      
      Fixes #25690
      a26e2ba3
    • Alaric Senat's avatar
      taglib: move default meta access to a function · 294cbdba
      Alaric Senat authored and Steve Lhomme's avatar Steve Lhomme committed
      No functional changes.
      294cbdba
    • Thomas Guillem's avatar
      vlc_queue: fix restrict violation · 90e98b01
      Thomas Guillem authored
      `restrict` tells the compiler that the tombstone pointer is the only way
      to access the variable pointed by it. This is not case with multi-threading.
      
      From the C11 specs:
      
      § 6.7.3 item 8
          An object that is accessed through a restrict-qualified pointer has
          a special association with that pointer. This association, defined
          in 6.7.3.1 below, requires that all accesses to that object use,
          directly or indirectly, the value of that particular pointer.
      
      § 6.7.3.1 item 4
          Every other lvalue used to access the value of X shall also have its
          address based on P.
      
      Also set the pointer to const.
      
      Fixes the following race condition when closing live555:
      
      Thread 80 (Thread 28393.4880):
      0  0x0000007953dbebbc in syscall () from /home/tom/work/git/libvlcjni/libvlc/.gdb/obj/local/arm64-v8a/system/lib64/libc.so
      1  0x0000007855d2c0ec in sys_futex (addr=0x89, op=137, val=0, to=0x0, addr2=0x0, val3=-1) at ../../src/linux/thread.c:82
      2  vlc_futex_wait (addr=0x89, flags=0, val=0, to=0x0) at ../../src/linux/thread.c:93
      3  vlc_atomic_wait (addr=0x89, val=0) at ../../src/linux/thread.c:109
      4  0x0000007855d20e9c in vlc_cond_wait (cond=cond@entry=0x7829f26ce8, mutex=mutex@entry=0x7829f26cd8) at ../../src/misc/threads.c:298
      5  0x0000007855d42244 in vlc_queue_Wait (q=0x7829f26cc0) at ../../include/vlc_queue.h:122
      6  vlc_queue_DequeueKillable (q=0x7829f26cc0, tombstone=0x7829f26d00) at ../../include/vlc_queue.h:248
      7  vlc_stream_fifo_Block (s=<optimized out>, eof=0x78709a8838) at ../../src/input/stream_fifo.c:75
      8  0x0000007855cfa160 in vlc_stream_ReadRaw (s=s@entry=0x7819411360, buf=buf@entry=0x78c4393c80, len=len@entry=188) at ../../src/input/stream.c:466
      9  0x0000007855cf9fe0 in vlc_stream_ReadPartial (s=s@entry=0x7819411360, buf=buf@entry=0x78c4393c80, len=len@entry=188) at ../../src/input/stream.c:489
      10 0x0000007855cfad44 in vlc_stream_Read (s=<optimized out>, buf=0x78c4393c80, len=188) at ../../src/input/stream.c:504
      11 vlc_stream_Block (s=0x7819411360, size=<optimized out>) at ../../src/input/stream.c:909
      12 0x0000007855f1fe5c in ReadTSPacket (p_demux=p_demux@entry=0x78c42c0ce0) at ../../modules/demux/mpeg/ts.c:1808
      13 0x0000007855f1de30 in Demux (p_demux=<optimized out>) at ../../modules/demux/mpeg/ts.c:649
      4 0x0000007855d41e4c in vlc_demux_chained_Thread (data=0x7829f26c70) at ../../src/input/demux_chained.c:96
      15 0x0000007855d2d5b8 in joinable_thread (data=0x7823341ea0) at ../../src/android/thread.c:96
      16 0x0000007953e217c4 in __pthread_start(void*) () from /home/tom/work/git/libvlcjni/libvlc/.gdb/obj/local/arm64-v8a/system/lib64/libc.so
      17 0x0000007953dc41ac in __start_thread () from /home/tom/work/git/libvlcjni/libvlc/.gdb/obj/local/arm64-v8a/system/lib64/libc.so
      
      Thread 79 (Thread 28393.4875):
      0  0x0000007953dbebbc in syscall () from /home/tom/work/git/libvlcjni/libvlc/.gdb/obj/local/arm64-v8a/system/lib64/libc.so
      1  0x0000007953e21d98 in pthread_join () from /home/tom/work/git/libvlcjni/libvlc/.gdb/obj/local/arm64-v8a/system/lib64/libc.so
      2  0x0000007855d2d204 in vlc_join (handle=0x7823341ea0, result=0x0) at ../../src/android/thread.c:147
      3  0x0000007855d4202c in vlc_demux_chained_Delete (dc=0x7829f26c70) at ../../src/input/demux_chained.c:167
      4  0x0000007855d3d92c in Close (p_this=<optimized out>) at ../../modules/access/live555.cpp:505
      5  0x0000007855cb49dc in module_unneed (obj=obj@entry=0x78194110c0, module=0x78c83b0520) at ../../src/modules/modules.c:305
      6  0x0000007855ceae78 in vlc_access_Destroy (access=0x78194110c0) at ../../src/input/access.c:54
      7  0x0000007855cf958c in vlc_stream_Delete (s=0x78194110c0) at ../../src/input/stream.c:150
      8  0x0000007855ce4954 in demux_Delete (demux=0x78709a8d60) at ../../include/vlc_demux.h:291
      9  InputSourceDestroy (in=0x781a3aa780) at ../../src/input/input.c:2852
      10 0x0000007855ce39f0 in End (p_input=p_input@entry=0x7863073c00) at ../../src/input/input.c:1413
      11 0x0000007855ce0620 in Run (data=0x7863073c00) at ../../src/input/input.c:431
      12 0x0000007855d2d5b8 in joinable_thread (data=0x78231b02c0) at ../../src/android/thread.c:96
      13 0x0000007953e217c4 in __pthread_start(void*) () from /home/tom/work/git/libvlcjni/libvlc/.gdb/obj/local/arm64-v8a/system/lib64/libc.so
      14 0x0000007953dc41ac in __start_thread () from /home/tom/work/git/libvlcjni/libvlc/.gdb/obj/local/arm64-v8a/system/lib64/libc.so
      90e98b01
  5. Mar 16, 2023
  6. Mar 15, 2023
    • Pierre Lamot's avatar
      demux: adaptive: fix language parsing · 6d90eba0
      Pierre Lamot authored and Steve Lhomme's avatar Steve Lhomme committed
      6d90eba0
    • Alexandre Janniaux's avatar
      audio_output: android: split DynamicsProcessing · 38d17118
      Alexandre Janniaux authored and Thomas Guillem's avatar Thomas Guillem committed
      DynamicsProcessing is used by android/device.c, by audiotrack and by
      aaudio and a common vtable is needed as well as the matching JNI helpers
      to use the vtable.
      
      The vtable is currently stored in the audiotrack vtable, which is
      available in the other plugins in static build. But it leads to
      undefined reference errors when compiling a dynamic build of libvlc for
      android.
      
      Split the code handling this vtable in a separate convenience library to
      address this, which is then linked to every other targets.
      
      Since convenience libraries are playing a different role than static
      libraries, and are not linked but merged into the final objects that
      will be part of the library output (shared or archive), the symbols are
      then available to each of the plugins.
      
      Fixes #27726
      38d17118
    • Thomas Guillem's avatar
      audio_output: android: add vlc_android_AudioFormat_FourCCToEncoding() · 352a3cd3
      Thomas Guillem authored
      Finish the transition to the new audioformat_jni helper.
      352a3cd3
    • Thomas Guillem's avatar
      audio_output: android: remove AudioTrack_HasEncoding() · ec94c477
      Thomas Guillem authored
      The encoding is previously checked in device.c
      ec94c477
    • Alexandre Janniaux's avatar
      audio_output: android: move AudioFormat vtable · 189d4353
      Alexandre Janniaux authored and Thomas Guillem's avatar Thomas Guillem committed
      Move the AudioFormat vtable to a separate file and convenience library
      so as to use the AudioFormat vtable from device.c.
      
      The choice of a convenience library here is to compile the code only
      once but be able to use it from different locations, especially since it
      needs the vtable filled before using the associated function.
      
      The commit doesn't change audiotrack yet, as the goal is mostly to fix
      the dynamic build on Android, and thus duplicates part of the code from
      there. Some more changes would be needed to potentially supply the
      vtable as parameter and provides what's missing for audiotrack.c to use
      this convenience library instead.
      189d4353
    • Alexandre Janniaux's avatar
      audio_output: android: link android_env · ddb540cb
      Alexandre Janniaux authored and Thomas Guillem's avatar Thomas Guillem committed
      The convenience library libandroid_env is needed in particular for the
      function android_GetEnv.
      
      There's no functional changes for the current way we distribute android,
      ie. in static builds, since link options are ignored, but it's needed to
      compile a dynamic build.
      ddb540cb
Loading