Recherche avancée

Médias (91)

Autres articles (31)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

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

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

  • Getting this error using ffmpeg concat in ReactNative "concat imposible to open"

    2 février 2021, par Josip Bogdan

    Hy, I am trying to concat multyple video using ffmpeg concat, testing on samsung j76, android version 8.1.0

    


    const textFile = await (await writeTextFileWithAllVideoFiles(filePaths))  
const outputPath = Platform.OS === 'ios' ? `${RNFS.DocumentDirectoryPath}/video-1.mp4` : `${RNFS.DocumentDirectoryPath}/video-1.mp4`
console.log(`-f concat -safe 0 -i ${textFile} -c copy ${outputPath}`)
const result = await RNFFmpeg.execute(`-f concat -safe 0 -i ${textFile} -c copy ${outputPath}`)


    


    And here is how I create the txt file

    


    const writeTextFileWithAllVideoFiles = async (filePaths) => {
var RNFS = require('react-native-fs');
var path = RNFS.DocumentDirectoryPath + '/videoList.txt';

var fileContent = ''
console.log("fileplay1");
filePaths.forEach(path => {
   fileContent += 'file ' + '\'' + path.substring(8) + '\'' + '\r\n'
});
console.log(fileContent);
return RNFS.writeFile(path, fileContent, 'utf8')
.then((success) => {
   console.log(path)
   if (RNFS.exists(path))
      console.log('FILE WRITTEN!')
   return path
})
.catch((err) => {
    console.log(err.message)
    return err.message
});  
}


    


    This is my console log output

    


    file 'data/user/0/com.videoeditorapp/cache/Camera/f27579d2-1488-4a59-8a9d-7a4e7b6fe716.mp4'
file 'data/user/0/com.videoeditorapp/cache/Camera/58130175-bd20-4002-9629-070d0cdd18ac.mp4'

[Tue Feb 02 2021 16:30:45.375]  LOG      /data/user/0/com.videoeditorapp/files/videoList.txt
[Tue Feb 02 2021 16:30:45.376]  LOG      FILE WRITTEN!
[Tue Feb 02 2021 16:30:45.376]  LOG      -f concat -safe 0 -i /data/user/0/com.videoeditorapp/files/videoList.txt -c copy /data/user/0/com.videoeditorapp/files/video-1.mp4
[Tue Feb 02 2021 16:30:45.376]  LOG      [concat @ 0xe2b22000] Impossible to open '/data/user/0/com.videoeditorapp/files/data/user/0/com.videoeditorapp/cache/Camera/f27579d2-1488-4a59-8a9d-7a4e7b6fe716.mp4'
[Tue Feb 02 2021 16:30:45.377]  LOG      /data/user/0/com.videoeditorapp/files/videoList.txt: No such file or directory


    


    And the txt file is not on my android device
My manifest is like this

    


    &#xA;  &#xA;      &#xA;&#xA;<application></application>&#xA;

    &#xA;

  • Basic "pass-through" use of FFmpegReader/FFmpegWriter in scikit-video

    6 février 2021, par JonathanZ supports MonicaC

    I am starting to use scikit-video and am having trouble writing files. I have reduced the problem to the simplest possible example

    &#xA;

    vid_file = "6710185719062326259_stamp_25pct.mp4"&#xA;output_file = "out_temp3.mp4"&#xA;reader = skvideo.io.FFmpegReader(vid_file)&#xA;writer = skvideo.io.FFmpegWriter(output_file)&#xA;for frame in reader.nextFrame():&#xA;        writer.writeFrame(frame)&#xA;writer.close()&#xA;

    &#xA;

    I'm playing the files in VLC, and the vid_file is valid but the output file, though playable, is mostly big green blocks (though I can discern some details from the original video in it).

    &#xA;

    My goal, or course, is to do "interesting" manipulations of the frame before I write it out, but I need to get the "no modifications" version working correctly first. I'm also going to be using this on large files, so the vread/vwrite functions that process an entire file at once are not appropriate.

    &#xA;

    I'm guessing I need to set the appropriate values in the outputdict parameter for the FFmpegWriter, but there are so many that I don't know where to start. I have tried

    &#xA;

    writer = skvideo.io.FFmpegWriter(output_file, outputdict={&#x27;-crf&#x27;: &#x27;0&#x27;, &#x27;-pix_fmt&#x27;: &#x27;rgb24&#x27;})&#xA;

    &#xA;

    (-crf 0 to suppress any compression, -pixfmt rgb24 as that's what FFmpegReader says it delivers by default, but these don't work either.

    &#xA;

    Any ideas on how to make this work ?

    &#xA;

    Here's the skvideo.io.ffprobe video information for the input file.

    &#xA;

    {&#xA;    "@index": "0",&#xA;    "@codec_name": "h264",&#xA;    "@codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",&#xA;    "@profile": "High",&#xA;    "@codec_type": "video",&#xA;    "@codec_time_base": "1/30",&#xA;    "@codec_tag_string": "avc1",&#xA;    "@codec_tag": "0x31637661",&#xA;    "@width": "480",&#xA;    "@height": "270",&#xA;    "@coded_width": "480",&#xA;    "@coded_height": "272",&#xA;    "@has_b_frames": "2",&#xA;    "@pix_fmt": "yuv420p",&#xA;    "@level": "21",&#xA;    "@chroma_location": "left",&#xA;    "@refs": "1",&#xA;    "@is_avc": "true",&#xA;    "@nal_length_size": "4",&#xA;    "@r_frame_rate": "15/1",&#xA;    "@avg_frame_rate": "15/1",&#xA;    "@time_base": "1/15360",&#xA;    "@start_pts": "0",&#xA;    "@start_time": "0.000000",&#xA;    "@duration_ts": "122880",&#xA;    "@duration": "8.000000",&#xA;    "@bit_rate": "183806",&#xA;    "@bits_per_raw_sample": "8",&#xA;    "@nb_frames": "120",&#xA;    "disposition": {&#xA;        "@default": "1",&#xA;        "@dub": "0",&#xA;        "@original": "0",&#xA;        "@comment": "0",&#xA;        "@lyrics": "0",&#xA;        "@karaoke": "0",&#xA;        "@forced": "0",&#xA;        "@hearing_impaired": "0",&#xA;        "@visual_impaired": "0",&#xA;        "@clean_effects": "0",&#xA;        "@attached_pic": "0",&#xA;        "@timed_thumbnails": "0"&#xA;    },&#xA;    "tag": [&#xA;        {&#xA;            "@key": "language",&#xA;            "@value": "und"&#xA;        },&#xA;        {&#xA;            "@key": "handler_name",&#xA;            "@value": "VideoHandler"&#xA;        }&#xA;    ]&#xA;}&#xA;

    &#xA;

    I will mention that when I ffprobe the output file the only differences I see are 1) the timing data is different, which isn't surprising, and 2) the output file has

    &#xA;

        "@has_b_frames": "0",&#xA;    "@pix_fmt": "yuv444p",&#xA;

    &#xA;

    I'm pretty confident the reader is working okay, because if I write out the data with

    &#xA;

    skimage.io.imsave(&#x27;x.png&#x27;, frame,  check_contrast=False)&#xA;

    &#xA;

    it looks good.

    &#xA;

  • FFMPEG, macOS Catalina : "ffmpeg stderr : /private/tmp/com.apple.launchd.ID/org.macosforge.xquartz:0 : Operation not supported on socket"

    11 février 2021, par Bogdan Slyusarenko

    I'm trying to record selenium test run with FFMPEG, for automation testing of web extensions (selenium+js/ts).&#xA;FFMPEG initiated by command :

    &#xA;

        const { spawn } = require("child_process");&#xA;        ffmpeg = spawn("ffmpeg", [&#xA;          "-x265-params",&#xA;          "-f",&#xA;          "xcbgrab", &#xA;          "-video_size",&#xA;          "1280x1024", &#xA;          "-i",&#xA;          process.env.DISPLAY, // "/private/tmp/com.apple.launchd.ID/org.macosforge.xquartz:0"&#xA;          "-loglevel",&#xA;          "debug", &#xA;          "-y", &#xA;          "-pix_fmt",&#xA;          "yuv420p",&#xA;          videoPath, &#xA;        ]);&#xA;

    &#xA;

    Return constantly error,related to process.DISPLAY, I'm not sure why it's so :

    &#xA;

        ffmpeg stderr: /private/tmp/com.apple.launchd.W851FkeNXz/org.macosforge.xquartz:0: Operation not supported on socket&#xA;

    &#xA;

    Full debug login is :

    &#xA;

    ffmpeg stderr: ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers&#xA;ffmpeg stderr:   built with Apple clang version 12.0.0 (clang-1200.0.32.28)&#xA;ffmpeg stderr:   configuration: --prefix=/usr/local/Cellar/ffmpeg/4.3.1_9 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --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-libsoxr --enable-videotoolbox --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack&#xA;ffmpeg stderr: libavutil      56. 51.100 / 56. 51.100&#xA;ffmpeg stderr:   libavcodec     58. 91.100 / 58. 91.100&#xA;ffmpeg stderr:   libavformat    58. 45.100 / 58. 45.100&#xA;ffmpeg stderr:   libavdevice    58. 10.100 / 58. 10.100&#xA;ffmpeg stderr:   libavfilter     7. 85.100 /  7. 85.100&#xA;ffmpeg stderr:   libavresample   4.  0.  0 /  4.  0.  0&#xA;ffmpeg stderr:   libswscale      5.  7.100 /  5.  7.100&#xA;ffmpeg stderr:   libswresample   3.  7.100 /  3.  7.100&#xA;ffmpeg stderr:   libpostproc    55.  7.100 / 55.  7.100&#xA;ffmpeg stderr: Splitting the commandline.&#xA;ffmpeg stderr: Reading option &#x27;-x265-params&#x27; ...&#xA;ffmpeg stderr: matched as AVOption &#x27;x265-params&#x27; with argument &#x27;-f&#x27;.&#xA;ffmpeg stderr: Reading option &#x27;xcbgrab&#x27; ...&#xA;ffmpeg stderr: matched as output url.&#xA;ffmpeg stderr: Reading option &#x27;-video_size&#x27; ...&#xA;ffmpeg stderr: matched as AVOption &#x27;video_size&#x27; with argument &#x27;1280x1024&#x27;.&#xA;ffmpeg stderr: Reading option &#x27;-i&#x27; ... matched as input url with argument &#x27;/private/tmp/com.apple.launchd.W851FkeNXz/org.macosforge.xquartz:0&#x27;.&#xA;ffmpeg stderr: Reading option &#x27;-loglevel&#x27; ... matched as option &#x27;loglevel&#x27; (set logging level) with argument &#x27;debug&#x27;.&#xA;ffmpeg stderr: Reading option &#x27;-y&#x27; ...&#xA;ffmpeg stderr: matched as option &#x27;y&#x27; (overwrite output files) with argument &#x27;1&#x27;.&#xA;ffmpeg stderr: Reading option &#x27;-pix_fmt&#x27; ... matched as option &#x27;pix_fmt&#x27; (set pixel format) with argument &#x27;yuv420p&#x27;.&#xA;ffmpeg stderr: Reading option &#x27;/Volumes/MacHD2/Upprojects/TEST/log/Checkout-Google.com-Search-on-Google.mp4&#x27; ... matched as output url.&#xA;ffmpeg stderr: Finished splitting the commandline.&#xA;ffmpeg stderr: Parsing a group of options: global .&#xA;ffmpeg stderr: Applying option loglevel (set logging level) with argument debug.&#xA;ffmpeg stderr: Applying option y (overwrite output files) with argument 1.&#xA;ffmpeg stderr: Successfully parsed a group of options.&#xA;ffmpeg stderr: Parsing a group of options: input url /private/tmp/com.apple.launchd.W851FkeNXz/org.macosforge.xquartz:0.&#xA;ffmpeg stderr: Successfully parsed a group of options.&#xA;ffmpeg stderr: Opening an input file: /private/tmp/com.apple.launchd.W851FkeNXz/org.macosforge.xquartz:0.&#xA;ffmpeg stderr: [NULL @ 0x7fcf80016800] Opening &#x27;/private/tmp/com.apple.launchd.W851FkeNXz/org.macosforge.xquartz:0&#x27; for reading&#xA;ffmpeg stderr: [file @ 0x7fcf7f507a00] Setting default whitelist &#x27;file,crypto,data&#x27;&#xA;ffmpeg stderr: /private/tmp/com.apple.launchd.W851FkeNXz/org.macosforge.xquartz:0: Operation not supported on socket&#xA;&#xA;

    &#xA;

    Any feedback appreciated

    &#xA;