Recherche avancée

Médias (1)

Mot : - Tags -/getid3

Autres articles (58)

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

  • Les tâches Cron régulières de la ferme

    1er décembre 2010, par

    La gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
    Le super Cron (gestion_mutu_super_cron)
    Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)

Sur d’autres sites (6950)

  • ffmpeg : "Input/output error" Read gif from named pipe ?

    23 octobre 2022, par Xirado

    I've been trying to debug this for hours now, and cannot seem to understand why it doesn't work.

    


    I want to overlay a png onto all frames of a gif, and since writing all the files to disk is slow, i wanted to use pipes.

    


    I created a named pipe using mkfifo imgstream1 and then launch ffmpeg :

    


    ffmpeg -report -hide_banner -v 9 -loglevel 99 -y -f gif -i imgstream1 out1.gif


    


    (This isn't actually useful as it just spits out the same gif again but it's simpler for debugging)

    


    After ffmpeg launches it waits for data from the pipe, so i write an actual gif file to the pipe using this kotlin code

    


    val backgroundFifo = File("imgstream1")
val inputOne = File("background.gif").readBytes()
println("background.gif -> ${inputOne.size} bytes")
val output = backgroundFifo.outputStream()
output.write(inputOne)
output.flush()
output.close()


    


    It prints : background.gif -> 7233247 bytes

    


    Now ffmpeg should read the bytes and spit out a gif, but it always seems to fail doing so.

    


    Opening an input file: imgstream1.
[gif @ 0x7714180] Opening 'imgstream1' for reading
[file @ 0x7714980] Setting default whitelist 'file,crypto,data'
[AVIOContext @ 0x7724dc0] Statistics: 7233247 bytes read, 0 seeks
imgstream1: Input/output error


    


    Sadly this does not give any further information, i'm already on the highest log level...

    


    I've tried multiple things :

    


      

    • -f image2pipe -> Works, but only loads the first 2 frames of the gif
    • 


    • Renaming the pipe to imgstream1.gif so ffmpeg thinks it's a gif file, no change.
    • 


    • Different ffmpeg versions
    • 


    • Using the actual gif as an ffmpeg input works
    • 


    


    At this point i have no idea what the problem might be, as ffmpeg seems to load all bytes.
It's worth noting that doing cat imgstream1 > file.gif produces the desired gif.

    


    Any help would be appreciated !

    


  • ffmpeg throws "cur_dts is invalid" error when trying to get stream from IP camera

    17 octobre 2022, par Max

    I'm trying to stream from an IP camera with the following ffmpeg command :

    


    const command = [
        '-loglevel',
        'debug',
        '-timeout',
        '10000000',
        '-rtsp_transport',
        'tcp',
        '-i',
        this.cameraInfo.url,
        '-c:v',
        'copy',
        '-c:a',
        'aac',
        '-f',
        'mp4',
        '-movflags',
        '+faststart+frag_every_frame+empty_moov+default_base_moof',
        "-min_frag_duration",
        this.livestreamSegmentDuration,
        'pipe:1',
    ];


    


    With this command I pass an output to another stream transformer and stream as HLS using "mp4" instead of "ts" to avoid transcoding.

    


    Everything works smoothly with different cams, but when I try to get the stream from "Meldana" (issue is related to all ip cameras of this manufacturer), it constantly throws the following error and does not stream :

    


    cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)


    


    Even though it does not work with ffmpeg, I can watch the stream just fine in VLC.
What might be the problem ? Is there anything that could be corrected in the ffmpeg command ?

    


  • FFmpeg "Could not open file" error message when processing with PHP

    22 juin 2022, par FlyingCat

    I am using ffmpeg to get the image from several video files. I got my ffmpeg codes ready but I got the following error when I exec my codes.

    



    ffmpeg version 0.8.6-4:0.8.6-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
built on Apr  2 2013 17:02:36 with gcc 4.6.3

*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
//files info...
//files info...
Incompatible pixel format 'yuv420p' for codec 'mjpeg', auto-selecting format 'yuvj420p'
//file info...
[buffer @ 0x1513c40] Buffering several frames is not supported. Please consume all available frames before adding a new one.
 Last message repeated 75 times
[image2 @ 0x1513460] Could not open file : /test/project
av_interleaved_write_frame(): Input/output error


    



    I only show the error messages that have color highlighted. 
My code :

    



     $ffmpeg ="/usr/bin/ffmpeg";

 $image_source_path = '/test/project/test.mp4';
 $ALL_PLACE_WIDTH = 300;
 $ALL_PLACE_HEIGHT = 300;

 $image_cmd = " -r 1 -ss 00:00:10 -t 00:00:01 -s ".$ALL_PLACE_WIDTH."x".$ALL_PLACE_HEIGHT."   -f image2 " ;

 $dest_image_path = '/test/project';

 $str_command= $ffmpeg  ." -i " . $image_source_path . $image_cmd .$dest_image_path;
 shell_exec($str_command);


    



    It seems my Linux wants to me to switch to avconv. I am not sure how to fix these errors. Can someone give me a hint about it ?