Recherche avancée

Médias (1)

Mot : - Tags -/biomaping

Autres articles (40)

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

  • 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 (...)

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

Sur d’autres sites (7892)

  • FFMPEG S3 AWS Laravel Unable to check existence

    18 avril 2023, par Moomen Aldahdouh

    the error in logs laravel file
[2023-04-18 14:11:22] production.ERROR : Unable to check existence for : videos/643ea50862566/643ea50862566_0_300_%05d.ts "exception" :"[object] (League\Flysystem\UnableToCheckFileExistence(code : 0) : Unable to check existence for : videos/643ea50862566/643ea50862566_0_300_%05d.ts at C :\inetpub\mysite\vendor\league\flysystem\src\UnableToCheckExistence.php:19)
[stacktrace]

    


    I'm trying to upload a video on S3 service using Laravel FFMPEG and convert the video to multi-resolution after adding Frames, the error appears on the server, but on localhost not appear, and working very well locally.

    


    `FFMpeg::fromDisk('s3')//uploads
    ->open($this->data["storage_path_full"])
        ->exportForHLS()
        ->addFormat($lowBitrate, function ($media) {
            $media->addFilter('scale=256:144'); 
        })
        ->addFormat($superLowBitrate, function ($media) {
            $media->addFilter('scale=426:240'); 
        })
        ->addFormat($midBitrate, function ($media) {
            $media->addFilter('scale=480:360'); 
        })
        ->addFormat($superMidBitrate, function ($media) {
            $media->addFilter('scale=640:480'); 
        })
        ->addFormat($highBitrate, function ($media) {
            $media->addFilter('scale=1280:720'); 
        })
        ->addFormat($superHighBitrate, function ($media) {
            $media->addFilter('scale=1920:1080'); 
        })
        ->toDisk('s3')
        ->save($this->data["storage_path_video"]);`


    


  • How to combine multiple videos in android using ffmpeg ?

    23 mai 2023, par Haeiny

    I added dependency to use ffmpeg on Android.

    


    implementation "com.arthenica:mobile-ffmpeg-full:4.4"


    


    And I wanted to combine the videos from the gallery, so I temporarily saved the imported video in the cache directory in the app.

    


    After that, I wrote the following function to take the saved images and merge them using ffmpeg :

    


    
fun mergeVideos(videoPaths: List\): Int {
        val cacheDirectory = this.externalCacheDir
        mergedVideoFile = File(cacheDirectory, "merged_video.mp4").absolutePath

        val command = StringBuilder()
        command.append("ffmpeg")
        for (videoPath in videoPaths) {
            command.append(" -i ").append(videoPath)
        }

        command.append(" -filter_complex ").append("\"")
        for (i in videoPaths.indices) {
            command.append("[$i:v] ").append("[$i:a] ")
        }

        command.append("concat=n=").append(videoPaths.size).append(":v=1:a=1 [v] [a]").append("\"")
        command.append(" -map \"[v]\" -map \"[a]\" ").append(mergedVideoFile)
    
        return FFmpeg.execute(command.toString())
    }


    


    I wanted to temporarily save the merged video in the "mergedVideoFile" so that I could save them in the cache directory, and videoPaths would get the Urls of the videos I wanted to merge into the list.

    


    The command verified through Log.d :

    


    
ffmpeg -i /storage/emulated/0/Android/data/"project name"/files/Movies/VIDEO1.mp4 -i /storage/emulated/0/Android/data/"project name"/files/Movies/VIDEO2.mp4 -filter_complex "\[0:v\] \[0:a\] \[1:v\] \[1:a\] concat=n=2:v=1:a=1 \[v\] \[a\]" -map "\[v\]" -map "\[a\]" /storage/emulated/0/Android/data/"project name"/cache/merged_video.mp4


    


    result of mergeVideos execution :

    


    
Loading mobile-ffmpeg.
Loaded mobile-ffmpeg-full-arm64-v8a-4.4-20210207.
Callback thread started.
ffmpeg version v4.4-dev-416
Copyright (c) 2000-2020 the FFmpeg developers
built with Android (6454773 based on r365631c2) clang version 9.0.8 (https://android.googlesource.com/toolchain/llvm-project 98c855489587874b2a325e7a516b99d838599c6f) (based on LLVM 9.0.8svn)

configuration: --cross-prefix=aarch64-linux-android- --sysroot=/files/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/sysroot --prefix=/home/taner/Projects/mobile-ffmpeg/prebuilt/android-arm64/ffmpeg --pkg-config=/usr/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8-a --cc=aarch64-linux-android24-clang --cxx=aarch64-linux-android24-clang++ --extra-libs='-L/home/taner/Projects/mobile-ffmpeg/prebuilt/android-arm64/cpu-features/lib -lndk_compat' --target-os=android --enable-neon --enable-asm --enable-inline-asm --enable-cross-compile --enable-pic --enable-jni --enable-optimizations --enable-swscale --enable-shared --enable-v4l2-m2m --disable-outdev=fbdev --disable-indev=fbdev --enable-small --disable-openssl --disable-xmm-clobber-test --disable-debug --enable-lto --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-videotoolbox --disable-audiotoolbox --disable-appkit --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gmp --enable-gnutls --enable-libmp3lame --enable-libass --enable-iconv --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxml2 --enable-libopencore-amrnb --enable-libshine --enable-libspeex --enable-libwavpack --enable-libkvazaar --enable-libilbc --enable-libopus --enable-libsnappy --enable-libsoxr --enable-libaom --enable-libtwolame --disable-sdl2 --enable-libvo-amrwbenc --enable-zlib --enable-mediacodec

libavutil      56. 55.100 / 56. 55.100
libavcodec     58. 96.100 / 58. 96.100
libavformat    58. 48.100 / 58. 48.100
libavdevice    58. 11.101 / 58. 11.101
libavfilter     7. 87.100 /  7. 87.100
libswscale      5.  8.100 /  5.  8.100
libswresample   3.  8.100 /  3.  8.100

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/Android/data/"project name"/files/Movies/VIDEO1.mp4':

Metadata:
major_brand     :   mp42
minor_version   :   0
compatible_brands:  isommp42
creation_time   :   2023-05-02T12:22:45.000000Z
com.android.version:  11
com.android.capture.fps:  30.000000
Duration:  00:00:02.51  , start:   0.000000  , bitrate:  14232 kb/s

      Stream #0:0

(eng)
: Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 14022 kb/s
, SAR 1:1 DAR 16:9 ,  30 fps, 30 tbr,  90k tbn,  180k tbc   (default)

Metadata:
rotate          :  90
creation_time   : 2023-05-02T12:22:45.000000Z
handler_name    :  VideoHandle
Side data:
displaymatrix: rotation of -90.00 degrees

      Stream #0:1

(eng)
: Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 256 kb/s   (default)

     Metadata:
        creation_time   :   2023-05-02T12:22:45.000000Z
        handler_name    :   SoundHandle

Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/Android/data/"project name"/files/Movies/VIDEO2.mp4':

... Input #1's video metadatas ...

\[NULL @ 0x78367662e0\] Unable to find a suitable output format for 'ffmpeg'
ffmpeg: Invalid argument


    


    I don't know what is the problem in my code.
Please help me.

    


  • Discord Music Bot interrupts music playback on Heroku

    29 mars 2023, par denisnumb

    I have a music discord bot written in Python. Bot plays music from YouTube using the yt-dlp library and ffmpeg.

    


    Everything worked fine, but a couple of days ago the bot began to interrupt the playback of any tracks for ~80% duration, crashing with an error :

    


    [tls @ 0x6e3b440] Error in the pull function.
[tls @ 0x6e3b440] IO error: Connection reset by peer
[https @ 0x6e37900] Will reconnect at 720896 in 0 second(s), error=Connection reset by peer.


    


    I have the latest version of py-cord=2.4.1 and yt-dlp==2023.3.4 installed. When the bot is launched on my computer, the bot plays all the tracks to the end, so the problem is clearly not in the code and not in the libraries.

    


    I suspect something is wrong with ffmpeg, so I tried installing different buildpacks, but that didn't solve the problem.

    


    At the moment I have the following installed :

    


    https://github.com/xrisk/heroku-opus.git
https://github.com/jonathanong/heroku-buildpack-ffmpeg-latest.git


    


    What could be the problem and how to solve it ? Why did this problem appear only on hosting ? Why didn't this happen before ?