Recherche avancée

Médias (91)

Autres articles (70)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

Sur d’autres sites (8930)

  • Draw FFmpeg AVFrame data with OpenGL with Go

    27 avril 2018, par nevernew

    I’m making a video player in Go (on Windows) using FFmpeg and OpenGl, with the go wrappers goav and go-gl respectively. I want to set the pixels (stored in AVFrame->data) as a texture to display with OpenGL.

    I have it drawing pixels from a test array I created in Go, but it’s not taking the AVFrame data at all. The gl wrapper is giving me an error panic: reflect: call of reflect.Value.Pointer on uintptr Value with this code, I’ve tried different ways, trying to cast the data to the right type to be accepted but to no avail.

    This is the offending code where f is of type *Frame :

    type Frame C.struct_AVFrame

    dataPtr := (*uint8)(unsafe.Pointer((*C.uint8_t)(unsafe.Pointer(&f.data))))
    dataAddr := uintptr(unsafe.Pointer(dataPtr))

    glPixelPointer := gl.Ptr(dataAddr) // reflect error happens here, so the pointer is wrong

    Trying to get the data from this C struct :

    #include

    typedef struct AVFrame {
    #define AV_NUM_DATA_POINTERS 8
       uint8_t *data[AV_NUM_DATA_POINTERS];
    }

    I can provide the rest of the code if needed, but there’s a lot of it to get the example running.

  • Draw FFmpeg AVFrame data with OpenGL in Go

    27 avril 2018, par nevernew

    I’m making a video player in Go (on Windows) using FFmpeg and OpenGl, with the go wrappers goav and go-gl respectively. I want to set the pixels (stored in AVFrame->data) as a texture to display with OpenGL.

    I have it drawing pixels from a test array I created in Go, but it’s not taking the AVFrame data at all. The gl wrapper is giving me an error panic: reflect: call of reflect.Value.Pointer on uintptr Value with this code, I’ve tried different ways, trying to cast the data to the right type to be accepted but to no avail.

    This is the offending code where f is of type *Frame :

    type Frame C.struct_AVFrame

    dataPtr := (*uint8)(unsafe.Pointer((*C.uint8_t)(unsafe.Pointer(&f.data))))
    dataAddr := uintptr(unsafe.Pointer(dataPtr))

    glPixelPointer := gl.Ptr(dataAddr) // reflect error happens here, so the pointer is wrong

    Trying to get the data from this C struct :

    #include

    typedef struct AVFrame {
    #define AV_NUM_DATA_POINTERS 8
       uint8_t *data[AV_NUM_DATA_POINTERS];
    }

    I can provide the rest of the code if needed, but there’s a lot of it to get the example running.

  • ffmpeg makes video with no sound on video.js

    21 septembre 2023, par Laurent B

    I have this code that creates m3u8 file to stream a mkv file after transcoding.

    


    ffmpeg.setFfmpegPath(ffmpegPath);
childProcess = ffmpeg()
    .input(inputFilePath)
    // .native()
    .inputOptions(['-y', '-progress', 'pipe:1'])
    .outputOptions(['-b:v 1M', '-hls_time 2', '-hls_list_size 0', '-hls_segment_size 500000'])
    .output('public/output.m3u8')
    .on('end', () => {
        io.emit('conversionComplete', { percent: 100, time: totalDuration, totalDuration, timemark: millisecondsToTimeString(totalDuration) });
        childProcess = null
    })
    .on('error', (error) => {
        io.emit('conversionError', { error });
        childProcess = null
    })
    .on('progress', (progress) => {
        io.emit('conversionProgress', { ...progress, time: timeStringToMilliseconds(progress.timemark), totalDuration });
    });

childProcess.run();


    


    The m3u8 is readable by VLC Player and video.js and can be casted to Chrome Cast. For some others, 4Go files moreless, it works only when the video is transcoded without sound with option .inputOption('-an').

    


    Here's the content of m3u8

    


    #EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:4
#EXTINF:10.000000,
output4.ts
#EXTINF:10.000000,
output5.ts
#EXTINF:8.640000,
output6.ts
#EXTINF:10.000000,
output7.ts
#EXTINF:10.000000,
output8.ts


    


      

    • I tried with all possible audio codecs provided by ffmpeg
    • 


    • I tried with bigger/smaller parts for ts files
    • 


    • I tried with other bitrate
    • 


    


    Thanks in advance for your ideas