Recherche avancée

Médias (91)

Autres articles (66)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

  • L’utiliser, en parler, le critiquer

    10 avril 2011

    La première attitude à adopter est d’en parler, soit directement avec les personnes impliquées dans son développement, soit autour de vous pour convaincre de nouvelles personnes à l’utiliser.
    Plus la communauté sera nombreuse et plus les évolutions seront rapides ...
    Une liste de discussion est disponible pour tout échange entre utilisateurs.

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

Sur d’autres sites (6110)

  • Error while capturing video via RTSP from a network camera using OpenCV and FFMPEG

    29 octobre 2012, par Dídac Pérez

    I am using OpenCV and FFMPEG to capture frames from a network camera using RTSP. The point is that OpenCV successfully loads the FFMPEG .dll but icvCreateFileCapture_FFMPEG_p returns false in the following code of cap_ffmpeg.cpp :

    virtual bool open( const char* filename )
    {
       close();

       icvInitFFMPEG();
       if( !icvCreateFileCapture_FFMPEG_p )
           return false;
       ffmpegCapture = icvCreateFileCapture_FFMPEG_p( filename );
       return ffmpegCapture != 0;
    }
  • fatal error : libavcodec/avcodec.h no such file or directory compilation terminated

    25 mai 2016, par user1625271

    I’m trying to execute tutorial01.c using gcc and I have the gcc and tutorial01.c in the same folder along with libavcodec and libavformat and its associated files it gives me this error

    fatal error : libavcodec/avcodec.h no such file or directory compilation terminated

    when I run gcc -o tutorial01 tutorial01.c -lavformat -lavcodec -lz through the terminal in ubuntu 12.04

    the code is

    #include  libavcodec/avcodec.h
    #include libavformat/avformat.h
    #include stdio.h

    void SaveFrame(AVFrame *pFrame, int width, int height, int iFrame)
    {
     FILE *pFile;
     char szFilename[32];
     int  y;

     // Open file
     sprintf(szFilename, "frame%d.ppm", iFrame);
     pFile=fopen(szFilename, "wb");
     if(pFile==NULL)
       return;

     // Write header
     fprintf(pFile, "P6\n%d %d\n255\n", width, height);
     // Write pixel data
     for(y=0; ydata[0]+y*pFrame->linesize[0], 1, width*3, pFile);

     // Close file
     fclose(pFile);
    }

    int main(int argc, char *argv[])
    {
     AVFormatContext *pFormatCtx;
     int             i, videoStream;
     AVCodecContext  *pCodecCtx;
     AVCodec         *pCodec;
     AVFrame         *pFrame;
     AVFrame         *pFrameRGB;
     AVPacket        packet;
     int             frameFinished;
     int             numBytes;
     uint8_t         *buffer;

     if(argc < 2)
     {
       printf("Please provide a movie file\n");
       return -1;
     }

     // Register all formats and codecs
     av_register_all();
     // Open video file
     if(av_open_input_file(&pFormatCtx, argv[1], NULL, 0, NULL)!=0)
       return -1; // Couldn't open file

     // Retrieve stream information
     if(av_find_stream_info(pFormatCtx)<0)
       return -1; // Couldn't find stream information

     // Dump information about file onto standard error
     dump_format(pFormatCtx, 0, argv[1], 0);
     // Find the first video stream
     videoStream=-1;
     for(i=0; inb_streams; i++)
       if(pFormatCtx->streams[i]->codec->codec_type==CODEC_TYPE_VIDEO)
       {
         videoStream=i;
         break;
       }
     if(videoStream==-1)
       return -1; // Didn't find a video stream

     // Get a pointer to the codec context for the video stream
     pCodecCtx=pFormatCtx->streams[videoStream]->codec;
     // Find the decoder for the video stream
     pCodec=avcodec_find_decoder(pCodecCtx->codec_id);
     if(pCodec==NULL)
     {
       fprintf(stderr, "Unsupported codec!\n");
       return -1; // Codec not found
     }

     // Open codec
     if(avcodec_open(pCodecCtx, pCodec)<0)
       return -1; // Could not open codec

     // Allocate video frame
     pFrame=avcodec_alloc_frame();

     // Allocate an AVFrame structure
     pFrameRGB=avcodec_alloc_frame();

     if(pFrameRGB==NULL)
       return -1;

     // Determine required buffer size and allocate buffer              
    numBytes=avpicture_get_size(PIX_FMT_RGB24, pCodecCtx->width,
                     pCodecCtx->height);

     buffer=(uint8_t *)av_malloc(numBytes*sizeof(uint8_t));

     // Assign appropriate parts of buffer to image planes in pFrameRGB
     // Note that pFrameRGB is an AVFrame, but AVFrame is a superset
     // of AVPicture
     avpicture_fill((AVPicture *)pFrameRGB, buffer, PIX_FMT_RGB24,
            pCodecCtx->width, pCodecCtx->height);

     // Read frames and save first five frames to disk
     i=0;
     while(av_read_frame(pFormatCtx, &packet)>=0)
    {
       // Is this a packet from the video stream?
       if(packet.stream_index==videoStream)
       {
         // Decode video frame
         avcodec_decode_video(pCodecCtx, pFrame, &frameFinished,
                  packet.data, packet.size);

         // Did we get a video frame?
         if(frameFinished)
         {
           // Convert the image from its native format to RGB




       img_convert((AVPicture *)pFrameRGB, PIX_FMT_RGB24,
                       (AVPicture*)pFrame, pCodecCtx->pix_fmt, pCodecCtx->width,
                       pCodecCtx->height);




       // Save the frame to disk

       if(++i<=5)
     SaveFrame(pFrameRGB, pCodecCtx->width, pCodecCtx->height,
               i);
         }
      }

       // Free the packet that was allocated by av_read_frame
       av_free_packet(&packet);
     }

     // Free the RGB image
     av_free(buffer);
     av_free(pFrameRGB);

     // Free the YUV frame
     av_free(pFrame);

    // Close the codec
     avcodec_close(pCodecCtx);


     // Close the video file
     av_close_input_file(pFormatCtx);


     return 0;

    }
  • Android- Error during executing Runtime.getRuntime().exec() - Environment Null -ffmpeg

    18 février 2015, par Chaitanya Chandurkar

    I have compiled ffmpeg library on ubuntu 11.10 and ported compiled files on android.
    After compiling i got libffmpeg.so successfully. It gets loaded on android successfully.

    I am doing it on ubuntu 11.10 eclipse android emulator.

    I have created a small test application which act as command prompt which accepts command from user and displays result. (testing ffmpeg commands)

    When i run simple commands like "ls", "ls -l" it works perfectly. but when i simply type "cd mnt" or "ffmpeg" as command and try to run it. I got Warnings in Logcat saying that

    08-26 16:44:52.553: W/System.err(5961): java.io.IOException: Error running exec(). Command: [ffmpeg] Working Directory: null Environment: null
    08-26 16:44:52.573: W/System.err(5961):     at java.lang.ProcessManager.exec(ProcessManager.java:211)
    08-26 16:44:52.573: W/System.err(5961):     at java.lang.Runtime.exec(Runtime.java:168)
    08-26 16:44:52.573: W/System.err(5961):     at java.lang.Runtime.exec(Runtime.java:241)
    08-26 16:44:52.583: W/System.err(5961):     at java.lang.Runtime.exec(Runtime.java:184)
    08-26 16:44:52.593: W/System.err(5961):     at ch.ffmpeg.reversit.MainActivity.Execute(MainActivity.java:61)
    08-26 16:44:52.593: W/System.err(5961):     at ch.ffmpeg.reversit.MainActivity$1.onClick(MainActivity.java:46)
    08-26 16:44:52.593: W/System.err(5961):     at android.view.View.performClick(View.java:3480)
    08-26 16:44:52.593: W/System.err(5961):     at android.view.View$PerformClick.run(View.java:13983)
    08-26 16:44:52.603: W/System.err(5961):     at android.os.Handler.handleCallback(Handler.java:605)
    08-26 16:44:52.603: W/System.err(5961):     at android.os.Handler.dispatchMessage(Handler.java:92)
    08-26 16:44:52.603: W/System.err(5961):     at android.os.Looper.loop(Looper.java:137)
    08-26 16:44:52.614: W/System.err(5961):     at android.app.ActivityThread.main(ActivityThread.java:4340)
    08-26 16:44:52.624: W/System.err(5961):     at java.lang.reflect.Method.invokeNative(Native Method)
    08-26 16:44:52.624: W/System.err(5961):     at java.lang.reflect.Method.invoke(Method.java:511)
    08-26 16:44:52.634: W/System.err(5961):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
    08-26 16:44:52.634: W/System.err(5961):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    08-26 16:44:52.644: W/System.err(5961):     at dalvik.system.NativeStart.main(Native Method)
    08-26 16:44:52.644: W/System.err(5961): Caused by: java.io.IOException: Permission denied
    08-26 16:44:52.674: W/System.err(5961):     at java.lang.ProcessManager.exec(Native Method)
    08-26 16:44:52.674: W/System.err(5961):     at java.lang.ProcessManager.exec(ProcessManager.java:209)
    08-26 16:44:52.684: W/System.err(5961):     ... 16 more

    Here is my code :

    imports;
    public class MainActivity extends Activity {
       String com;
       Process process;
       EditText command;
       Button run;
       RelativeLayout main_layout;

       static {
        System.loadLibrary("ffmpeg");
       }

       /** Called when the activity is first created. */
       @Override
       public void onCreate(Bundle savedInstanceState) {
           super.onCreate(savedInstanceState);
           setContentView(R.layout.activity_main);

          //find view
          command=(EditText)findViewById(R.id.command);
          run=(Button)findViewById(R.id.run);

           run.setOnClickListener(new OnClickListener() {
               public void onClick(View v) {
                   com=command.getText().toString();
                   try {
                       Execute();
                   } catch (IOException e) {
                       // TODO Auto-generated catch block
                       e.printStackTrace();
                   } catch (InterruptedException e) {
                       // TODO Auto-generated catch block
                       e.printStackTrace();
                   }

               }
           });

       }

       public void Execute() throws IOException, InterruptedException{
           process=Runtime.getRuntime().exec(com);
           // process = pb.command(com).redirectErrorStream(true).start();

           if(process!=null)
           ShowOutput();
           else
           Toast.makeText(getBaseContext(),"Null Process",Toast.LENGTH_LONG).show();
       }

       public void ShowOutput() throws IOException, InterruptedException{
           String s,text="",errors="";
           BufferedReader stdInput = new BufferedReader(new
                   InputStreamReader(process.getInputStream()));

              BufferedReader stdError = new BufferedReader(new
                   InputStreamReader(process.getErrorStream()));


              TextView output=(TextView)findViewById(R.id.output);
              TextView error=(TextView)findViewById(R.id.error);

               while ((s = stdInput.readLine()) != null) {
                      text+=s.toString()+"\n";
                      System.out.println("Error: "+s);
                  }

            output.setText(text);
            text="";
              // read any errors from the attempted command
              System.out.println("Here is the standard error of the command (if any):\n");
              while ((s = stdError.readLine()) != null) {
                  text+=s.toString()+"\n";
                  System.out.println("Error: "+s);
              }

              error.setText(text);

              error.setMovementMethod(new ScrollingMovementMethod());
              output.setMovementMethod(new ScrollingMovementMethod());

              stdInput.close();
              stdError.close();

              process.waitFor();
              process.getOutputStream().close();
              process.getInputStream().close();
              process.getErrorStream().close();
              process.destroy();


       }

    }

    I even tried process = pb.command(com).redirectErrorStream(true).start(); for execution. It gives me same error but this time environment was [ANDROID_SOCKET_Zygot] bla bla bla..

    EDIT 1 :
    I use Openjdk on ubuntu

    Help me out !!