Recherche avancée

Médias (1)

Mot : - Tags -/biographie

Autres articles (95)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • Les vidéos

    21 avril 2011, par

    Comme les documents de type "audio", Mediaspip affiche dans la mesure du possible les vidéos grâce à la balise html5 .
    Un des inconvénients de cette balise est qu’elle n’est pas reconnue correctement par certains navigateurs (Internet Explorer pour ne pas le nommer) et que chaque navigateur ne gère en natif que certains formats de vidéos.
    Son avantage principal quant à lui est de bénéficier de la prise en charge native de vidéos dans les navigateur et donc de se passer de l’utilisation de Flash et (...)

Sur d’autres sites (8686)

  • Vagrant provision fails to execute the next script without an obvious reason why

    14 juin 2016, par JakeTheSnake

    I’ve created/co-opted several bash scripts to provision my guest Ubuntu 14.04 OS ; the one giving me trouble right now is installing ffmpeg. When the script finishes, vagrant simply does nothing save for sending SSH keep-alives.

    Host OS : Windows 7 x64

    The last output before the infinitely repeating keep-alives is :

    INSTALL libavutil/sha.h
    INSTALL libavutil/sha512.h
    INSTALL libavutil/stereo3d.h
    INSTALL libavutil/threadmessage.h
    INSTALL libavutil/time.h
    INSTALL libavutil/timecode.h
    INSTALL libavutil/timestamp.h
    INSTALL libavutil/tree.h
    INSTALL libavutil/twofish.h
    INSTALL libavutil/version.h
    INSTALL libavutil/xtea.h
    INSTALL libavutil/tea.h
    INSTALL libavutil/lzo.h
    INSTALL libavutil/avconfig.h
    INSTALL libavutil/ffversion.h

    DEBUG ssh: stdout: INSTALL      libavutil/libavutil.pc

    DEBUG ssh: stdout: Done

    DEBUG ssh: Sending SSH keep-alive...
    DEBUG ssh: Sending SSH keep-alive...
    DEBUG ssh: Sending SSH keep-alive...

    Here are the relevant scripts :

    Vagrantfile

    # -*- mode: ruby -*-
    # vi: set ft=ruby :

    # All Vagrant configuration is done below. The "2" in Vagrant.configure
    # configures the configuration version (we support older styles for
    # backwards compatibility). Please don't change it unless you know what
    # you're doing.
    Vagrant.configure(2) do |config|
     # The most common configuration options are documented and commented below.
     # For a complete reference, please see the online documentation at
     # https://docs.vagrantup.com.

     # Every Vagrant development environment requires a box. You can search for
     # boxes at https://atlas.hashicorp.com/search.
     config.vm.box = 'ubuntu/trusty64'
     config.vm.hostname = 'dev'

     config.ssh.forward_agent = true
     config.ssh.pty = true

     # Create a private network, which allows host-only access to the machine
     # using a specific IP.
     config.vm.network :private_network, type: :dhcp, auto_config: false

     # Create a public network, which generally matched to bridged network.
     # Bridged networks make the machine appear as another physical device on
     # your network.
     config.vm.network :public_network,
                       ip: '192.168.11.14',
                       bridge: 'Realtek PCIe GBE Family Controller'

     # Share an additional folder to the guest VM. The first argument is
     # the path on the host to the actual folder. The second argument is
     # the path on the guest to mount the folder. And the optional third
     # argument is a set of non-required options.
     #
     # Do not share root directory of vagrant
     # config.vm.synced_folder '.', '/vagrant', disabled: true
     # Share ruby repository directories
     config.vm.synced_folder '.',
                             '/home/vagrant/apps',
                             nfs: true,
                             mount_options: [
                               'nfsvers=3',
                               'vers=3',
                               'actimeo=1',
                               'rsize=8192',
                               'wsize=8192',
                               'timeo=14',
                               :nolock,
                               :udp,
                               :intr,
                               :user,
                               :auto,
                               :exec,
                               :rw
                             ]

     # Provider-specific configuration so you can fine-tune various
     # backing providers for Vagrant. These expose provider-specific options.
     # Example for VirtualBox:
     #
     config.vm.provider :virtualbox do |vb|
       # Display the VirtualBox GUI when booting the machine
       vb.gui = true

       # Use VBoxManage to customize the VM.
       vb.name = 'Ubuntu'
       vb.cpus = 4
       vb.memory = 2048
       vb.customize ['modifyvm', :id, '--vram', 64]
       vb.customize ['modifyvm', :id, '--audio', :dsound]
       vb.customize ['modifyvm', :id, '--audiocontroller', :ac97]
       vb.customize ['modifyvm', :id, '--clipboard', :bidirectional]
     end

     # Provisioning
     config.vm.provision :shell, path: './provisioning/user/install-apps.sh',
                                 privileged: false, name: 'Applications'
     config.vm.provision :shell, path: './provisioning/user/install-rvm.sh',
                                 args: 'stable', privileged: false, name: 'RVM'
     config.vm.provision :shell, path: './provisioning/user/install-ruby.sh',
                                 args: '2.3.1', privileged: false, name: 'Ruby'
     config.vm.provision :shell, path: './provisioning/user/install-ruby-gems.sh',
                                 privileged: false, name: 'Ruby Gems'
     config.vm.provision :shell, path: './provisioning/root/install-nginx.sh',
                                 args: '1.9.9', name: 'Nginx'

     config.vm.provision :chef_solo do |chef|
       # chef.version = '12.10.40'

       # Paths to your cookbooks (on the host)
       chef.cookbooks_path = ['cookbooks']
       # Add chef recipes
       chef.add_recipe 'apt'
       chef.add_recipe 'git' # Is required for NPM
       chef.add_recipe 'sqlite'
       chef.add_recipe 'mysql'
       chef.add_recipe 'nodejs'
       chef.add_recipe 'memcached'
       chef.add_recipe 'imagemagick'
       chef.add_recipe 'optipng'
       chef.add_recipe 'sublime-text'
       chef.add_recipe 'tomcat'
     end
    end

    install-apps.sh

    #!/usr/bin/env bash

    echo Turning off console beeps...
    grep '^set bell-style none' /etc/inputrc || echo 'set bell-style none' >> /etc/inputrc

    echo Installing languages
    sudo apt-get -y update
    sudo locale-gen en_US en_US.UTF-8
    sudo dpkg-reconfigure locales

    echo Installing essential apps
    sudo apt-get -y install build-essential curl yasm

    echo Installing desktop apps
    sudo apt-get -y install ubuntu-desktop

    hash ffmpeg 2>/dev/null || {
     # Build ffmpeg
     echo Installing ffmpeg

     sudo apt-get -y install autoconf automake libass-dev libfreetype6-dev \
       libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev \
       libxcb-xfixes0-dev pkg-config texinfo zlib1g-dev libx264-dev libmp3lame-dev libopus-dev

     mkdir ~/ffmpeg_sources
     cd ~/ffmpeg_sources
     wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
     tar xjvf ffmpeg-snapshot.tar.bz2
     cd ffmpeg
     PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
       --prefix="$HOME/ffmpeg_build" \
       --pkg-config-flags="--static" \
       --extra-cflags="-I$HOME/ffmpeg_build/include" \
       --extra-ldflags="-L$HOME/ffmpeg_build/lib" \
       --bindir="$HOME/bin" \
       --enable-gpl \
       --enable-libass \
       --enable-libfreetype \
       --enable-libmp3lame \
       --enable-libopus \
       --enable-libtheora \
       --enable-libvorbis \
       --enable-libx264 \
       --enable-nonfree

     PATH="$HOME/bin:$PATH" make
     make install
     make distclean
     hash -r

     source ~/.profile
    }

    echo Done
    exit 0

    install-rvm.sh

    #!/usr/bin/env bash

    echo Installing RVM gpg key
    gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 --trust-model always

    echo Installing RVM
    \curl -sSL https://get.rvm.io | bash -s $1

    exit 0

    I won’t include the other scripts for the sake of brevity. When logging into vagrant with the gui nothing seems out of the ordinary, and ffmpeg is available...but nothing else is provisioned. No RVM, no Nginx, nothing.

  • Video concatenation puts sound out of sync

    9 août 2019, par mmorin

    (Cross-posted from Video Production, where the question received no answers and may be more technical than usual video production.)

    I have several MOV files from a DSLR camera. I concatenate them with directions from this thread :

    ffmpeg -safe 0 -f concat -i files_to_combine -vcodec copy -acodec copy temp.MOV

    where files_to_combine is :

    file ./DSC_0013.MOV
    ...
    file ./DSC_0019.MOV

    The result has image and sound in sync for the first clip and is out of sync by fractions of a second in the second clip, and out of sync by around a second for the last clip. It is probably related to this error from the log :

    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f82dd802200] st: 0 edit list: 1 Missing key frame while searching for timestamp: 1000
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f82dd802200] st: 0 edit list 1 Cannot find an index entry before timestamp: 1000.
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f82dd802200] Auto-inserting h264_mp4toannexb bitstream filter

    How can I trim the frames to the available sound stream, then concatenate the two videos ?

    The full log from the ffmpeg command is :

    ffmpeg version 4.1.3 Copyright (c) 2000-2019 the FFmpeg developers
     built with Apple LLVM version 10.0.1 (clang-1001.0.46.4)
     configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1.3_1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/adoptopenjdk-11.0.2.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/adoptopenjdk-11.0.2.jdk/Contents/Home/include/darwin' --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libsnappy --enable-libtesseract --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-videotoolbox --disable-libjack --disable-indev=jack --enable-libaom --enable-libsoxr
     libavutil      56. 22.100 / 56. 22.100
     libavcodec     58. 35.100 / 58. 35.100
     libavformat    58. 20.100 / 58. 20.100
     libavdevice    58.  5.100 / 58.  5.100
     libavfilter     7. 40.101 /  7. 40.101
     libavresample   4.  0.  0 /  4.  0.  0
     libswscale      5.  3.100 /  5.  3.100
     libswresample   3.  3.100 /  3.  3.100
     libpostproc    55.  3.100 / 55.  3.100
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f82dc00e000] Auto-inserting h264_mp4toannexb bitstream filter
    Input #0, concat, from 'files_to_combine':
     Duration: N/A, start: -0.592000, bitrate: 36888 kb/s
       Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, smpte170m/bt709/bt470m), 1920x1080, 35352 kb/s, 50 fps, 50 tbr, 50k tbn, 100 tbc
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s
       Metadata:
         handler_name    : SoundHandler
    Output #0, mov, to 'temp.MOV':
     Metadata:
       encoder         : Lavf58.20.100
       Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, smpte170m/bt709/bt470m), 1920x1080, q=2-31, 35352 kb/s, 50 fps, 50 tbr, 50k tbn, 50k tbc
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s
       Metadata:
         handler_name    : SoundHandler
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
    Press [q] to stop, [?] for help
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f82dd802200] st: 0 edit list: 1 Missing key frame while searching for timestamp: 1000
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f82dd802200] st: 0 edit list 1 Cannot find an index entry before timestamp: 1000.
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f82dd802200] Auto-inserting h264_mp4toannexb bitstream filter
    frame=41886 fps=547 q=-1.0 Lsize= 3789826kB time=00:13:58.75 bitrate=37014.8kbits/s speed=10.9x    
    video:3631879kB audio:157123kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.021759%

    Update (1 July 2019)

    I thought that the files had a problem at the beginning or at the end, so I
    trimmed one second from each end, but it still had the sound out of sync :

    FILES=files_to_combine
    OUTPUT=show2.MOV
    rm $FILES
    for i in 3 4 5 6 7 8 9; do
       rm ${i}.MOV
       duration=$(ffprobe -v 0 -show_entries format=duration -of compact=p=0:nk=1  DSC_001${i}.MOV)
       trimmed=$(echo $duration - 1 | bc)
       ffmpeg -ss 1 -t $trimmed -i DSC_001${i}.MOV -vcodec copy -acodec copy ${i}.MOV
       echo file ./${i}.MOV >> $FILES
    done

    rm $OUTPUT
    ffmpeg -safe 0 -f concat -i $FILES -vcodec copy -acodec copy $OUTPUT

    When I trim a single file near the end, the sound and video do not seem out of sync :

    ffmpeg -ss 00:09:20 -t 20 -i DSC_0014.MOV -vcodec copy -acodec copy end.MOV

    When I concatenate only 30 seconds from each video, the result seems OK :

    FILES=files_to_combine
    OUTPUT=show2.MOV
    rm $FILES
    for i in 3 4 5 6 7 8 9; do
       rm ${i}.MOV
       duration=$(ffprobe -v 0 -show_entries format=duration -of compact=p=0:nk=1  DSC_001${i}.MOV)
       start=$(echo $duration - 30 | bc)
       end=$(echo $duration - 1 | bc)
       ffmpeg -ss $start -t $end -i DSC_001${i}.MOV -vcodec copy -acodec copy ${i}.MOV
       echo file ./${i}.MOV >> $FILES
    done

    rm $OUTPUT
    ffmpeg -safe 0 -f concat -i $FILES -vcodec copy -acodec copy $OUTPUT

    This last concatenation gives this error multiple times :

    [mov @ 0x7fc3c7837400] Non-monotonous DTS in output stream 0:0; previous: 9080205, current: 9080200; changing to 9080206. This may result in incorrect timestamps in the output file.

    So I am guessing that the problem is small differences in timestamps that
    accumulate and become more noticeable with longer durations and the
    concatenation of multiple files.

    For reference, the DSLR that shot these clips is a Nikon D3300 and the result
    of ffprobe on one of the files is :

    $ ffprobe DSC_0017.MOV -hide_banner
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fab70003800] st: 0 edit list: 1 Missing key frame while searching for timestamp: 1000
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fab70003800] st: 0 edit list 1 Cannot find an index entry before timestamp: 1000.
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'DSC_0017.MOV':
     Metadata:
       major_brand     : qt  
       minor_version   : 537331968
       compatible_brands: qt  niko
       creation_time   : 2019-06-12T23:52:37.000000Z
     Duration: 00:09:53.58, start: 0.000000, bitrate: 36843 kb/s
       Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, smpte170m/bt709/bt470m), 1920x1080, 35300 kb/s, 50 fps, 50 tbr, 50k tbn, 100 tbc (default)
       Metadata:
         creation_time   : 2019-06-12T23:52:37.000000Z
       Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 2 channels, s16, 1536 kb/s (default)
       Metadata:
         creation_time   : 2019-06-12T23:52:37.000000Z

    Update (9 August 2019)

    I concatenated the files in iMovie and the sound and image are not as out of sync as with FFMPEG. Maybe iMovie aligns the timestamps at the end of each clip instead of concatenating the audio and image streams separately.

    I ran the concatenation again with the latest ffmpeg 4.1.4_1 on these files and others from the same camera. The audio and image are in sync in one case (the results lasts 46 minutes) out of sync in another (the result lasts 48 minutes).

  • Configure ffmpeg to work with native client

    11 juin 2016, par Mohammad Abu Musa

    I followed the steps https://chromium.googlesource.com/webports/+/master to port ffmpeg to native client. I do not know what is the issue here. here are the configuration and here what I get

    NACL_ARCH=pnacl TOOLCHAIN=pnacl make ffmpeg

    Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\@anchor{ <-- HERE (?:[^\}]*)\}/ at /home/user/Desktop/webports/src/out/build/ffmpeg/ffmpeg-2.6.1/doc/texi2pod.pl line 387.
    MAN doc/ffmpeg.1
    MAN doc/ffprobe.1
    MAN doc/ffmpeg-all.1
    MAN doc/ffprobe-all.1
    LD  ffmpeg_g
    LD  ffprobe_g
    /home/user/Desktop/webports/src/out/build/ffmpeg/ffmpeg-2.6.1/Makefile:124: recipe for target 'ffprobe_g' failed
    make[1]: *** [ffprobe_g] Error 247
    make[1]: *** Waiting for unfinished jobs....
    /home/user/Desktop/webports/src/out/build/ffmpeg/ffmpeg-2.6.1/Makefile:124: recipe for target 'ffmpeg_g' failed
    make[1]: *** [ffmpeg_g] Error 247
    make[1]: Leaving directory '/home/user/Desktop/webports/src/out/build/ffmpeg/build_pnacl'
    webports: Build failed: 'ffmpeg' [pnacl/release]
    Makefile:89: recipe for target 'ffmpeg' failed
    make: *** [ffmpeg] Error 1