1. 24 Jun, 2014 1 commit
  2. 14 Jun, 2014 1 commit
    • Konstantinos Tsanaktsidis's avatar
      Fix libmod_plugin undefined __imp_ symbols building for win32 · 298616dd
      Konstantinos Tsanaktsidis authored
      When building current HEAD of master for x86_64-w64-mingw32 against current
      contribs, compilation fails at libmod_plugin due to undefined symbols of
      the form __imp_ModPlug_*. This patch modifies libmodplug in contribs by
      adding -DMODPLUG_STATIC to CFlags in the pkg-config file. A bug is also
      fixed in the main build system to make sure the CFLAGS are picked up from
      this pkg-config file.
      
      This problem occurs because of the following code in
      contrib/x86_64-w64-mingw32/include/libmodplug/modplug.h. This code is
      present in libmodplug obtained from running "make fetch & make" in the
      contribs directory, but not present in the prebuilt contribs obtained from
      running "make prebuilt".
      
       #if defined(_WIN32) || defined(__CYGWIN__)
       # if defined(MODPLUG_BUILD) && defined(DLL_EXPORT)
       #   define MODPLUG_EXPORT __declspec(dllexport)
       # elif defined(MODPLUG_BUILD) || defined(MODPLUG_STATIC)
       #   define MODPLUG_EXPORT
       # else
       #   define MODPLUG_EXPORT __declspec(dllimport)
       # endif
      
      When building for Windows, if MODPLUG_STATIC is not defined, MODPLUG_EXPORT
      is defined as "__declspec(dllimport)". On Windows, dynamic symbols are
      prefixed with "__imp_", so this causes GCC to adjust the symbol references
      to the libmodplug functions accordingly.
      
      This patch therefore adds a patch to contribs for libmodplug's pkg-config
      file. It adds -DMODPLUG_STATIC to CFlags, so that when libmod_plugin is
      building it will have the correct symbol names.
      
      However, there is also a bug in the build system that needs to be fixed for
      this to work. The configure script sets a CXXFLAGS_mod containing the
      output of pkg-config for libmodplug, but not CFLAGS_mod. Additionally, the
      Makefile.ac for libmod_plugin sets CXXFLAGS when in fact the relevant files
      (mod.c) are plain C. Autotools therefore ignores these CXXFLAGS when
      generating a makefile.
      
      The solution is to add a macro to configure.ac to set CFLAGS_mod. This then
      needs to be used in modules/demux/Makefile.am to populate
      libmod_plugin_la_CFLAGS instead of libmod_plugin_la_CXXFLAGS (which gets
      ignored).
      Signed-off-by: Jean-Baptiste Kempf's avatarJean-Baptiste Kempf <jb@videolan.org>
      298616dd
  3. 02 Jun, 2014 1 commit
  4. 10 Mar, 2014 1 commit
    • François Cartegnie's avatar
      demux: ogg: rewrite pts and pts computation (fix #9828) · ff681fc7
      François Cartegnie authored
      - Previous algorithm was unable to guess the first packet
      pts because of ogg design (some codecs/opus/vorbis have total
      sample at page granule and only granule on last packet. You
      then need to compute first packet pts backward using packets
      duration).
      So we were stuck either assuming a start at pts/pcr zero, or
      be unable to handle ogg streaming (non zero start) correctly,
      or had to always drop the 0..N-1 packets for first page.
      We need libvorbis to correcly compute those durations (code
      is far more complex than opus's one).
      - Refactorized to discard the tons of cases appended
      with each new codec.
      - lots of other fixes in many places
      ff681fc7
  5. 27 Feb, 2014 1 commit
    • Rémi Denis-Courmont's avatar
      avcodec: remove the VLC DSP mask (except on Android on ARM) · 8512cab6
      Rémi Denis-Courmont authored
      libavutil will always check for all CPU features that it understands,
      even those VLC masked. Thus masking features provides no savings.
      
      libavutil runs more tests than VLC. Depending on the platform and
      operating system combination, libavutil is either as conservative or
      more conservative than VLC. As such masking features provides no extra
      safety.
      
      So overall, GetVlcDspMask() is useless, at least nowadays.
      
      Android ARM NEON seems controversial so it is kept for now.
      8512cab6
  6. 24 Feb, 2014 1 commit
  7. 11 Feb, 2014 1 commit
  8. 30 Dec, 2013 1 commit
  9. 04 Dec, 2013 1 commit
  10. 02 Oct, 2013 1 commit
  11. 21 Sep, 2013 3 commits
  12. 16 Sep, 2013 4 commits