Recherche avancée

Médias (5)

Mot : - Tags -/open film making

Autres articles (29)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

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

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

Sur d’autres sites (6405)

  • Running ffmpeg in Docker environment on AWS EC2 [duplicate]

    5 mai 2024, par must

    I want to use FFMPEG inside my Java application.
I want to instal ffmpeg in environment where this app is running.

    


    My current Dockerfile :

    


    # Stage 1: Build the application
FROM maven:3.8.4-openjdk-17 AS build
WORKDIR /app
COPY pom.xml .
COPY src ./src
RUN mvn clean install -Dmaven.test.skip=true

# Stage 2: Run the application
FROM openjdk:17
WORKDIR /app
COPY --from=build /app/target/application.jar ./app.jar
EXPOSE 8080
CMD ["java", "-jar", "-Dspring.profiles.active=pr", "app.jar"]


    


    I simply built a docker image by running docker buildx build --platform linux/amd64 -t repo/app:1.0 .

    


    Then in AWS Console I run docker run and pull built image.

    


    Everyone writes about adding

    


    RUN apt-get -y update && apt-get -y upgrade && apt-get install -y --no-install-recommends ffmpeg


    


    but I cannot do it as I'm building image on MacOS and I do no have apt-get command.

    


    When I was trying to pull some image form DockerHub FFMPEG could not be found.

    


    I tried this one : https://hub.docker.com/r/jrottenberg/ffmpeg

    


    and declared DockerFile as :

    


    # Stage 1: Build the application
FROM maven:3.8.4-openjdk-17 AS build
WORKDIR /app
COPY pom.xml .
COPY src ./src
RUN mvn clean install -Dmaven.test.skip=true

# Stage 2: Install ffmpeg
FROM jrottenberg/ffmpeg:latest AS ffmpeg

# Stage 3: Run the application
FROM openjdk:17
WORKDIR /app
COPY --from=build /app/target/application.jar ./app.jar
COPY --from=ffmpeg /usr/local/bin/ffmpeg /usr/local/bin/ffmpeg

EXPOSE 8080
CMD ["java", "-jar", "-Dspring.profiles.active=pr", "app.jar"]


    


    but still it did not work. I get :

    


    ffmpeg: error while loading shared libraries: libavdevice.so.58: cannot open shared object file: No such file or directory


    


    I'm using Amazon Linux on EC2.

    


    Can someone get me on the right track ?

    


  • Extracting Thumbnail URL from Video URL

    29 août 2023, par Deepak Sangle

    So, I have a video URL in an Amazon S3 bucket. I must extract the thumbnail image (preview image) from the video URL. The catch is that I do not have the luxury to download or upload the complete video since it takes time. My approach is something like this.
I first created a blob object containing the first few seconds of that video using something like this.

    


      const chunkSize = 1024*1024; // 1MB
  const start = 0;
  const end = chunkSize - 1;
  const rangeHeader = `bytes=${start}-${end}`;
  
  const VideoResponse = await axios.get(url, { 
    responseType: 'arraybuffer',
    headers: { Range: rangeHeader }
  });

  const chunkData = VideoResponse.data; 
  
  const videoBlob = new Blob([chunkData], { type: 'video/mp4' });
  const videoUrl = URL.createObjectURL(videoBlob);
  console.log({chunkData, videoBlob, videoUrl});


    


    Console gives me something like this

    


    {&#xA;  chunkData: <buffer 00="00" 1c="1c" 66="66" 74="74" 79="79" 70="70" 6d="6d" 34="34" 32="32" 69="69" 73="73" 6f="6f" 61="61" 76="76" 63="63" 31="31" 02="02" bd="bd" ab="ab" 6c="6c" 68="68" 64="64" c7="c7" 1048526="1048526" more="more" bytes="bytes">,&#xA;  videoBlob: Blob { size: 1048576, type: &#x27;video/mp4&#x27; },&#xA;  videoUrl: &#x27;blob:nodedata:764fce87-792f-47e8-bc3e-15921ee5787f&#x27;&#xA;}&#xA;</buffer>

    &#xA;

    Now, there are many options after this. I am trying to download this blob object by converting it into a file. After I successfully convert it into an mp4 file, I can easily take a screenshot of it using fluent-ffmpeg package. However, I couldn't convert it into a file. If I try to do something like this

    &#xA;

      const BlobResponse = await axios({&#xA;    method: &#x27;GET&#x27;,&#xA;    url: videoUrl,&#xA;    responseType: &#x27;stream&#x27;&#xA;  });&#xA;&#xA;  const file = fs.createWriteStream(`video.mp4`);&#xA;  BlobResponse.data.pipe(file);&#xA;  &#xA;  file.on("error", (error) => {&#xA;    console.log(`There was an error writing the file. Details: $ {error}`);&#xA;  });&#xA;&#xA;  file.on(&#x27;finish&#x27;, () => {&#xA;    file.close();&#xA;    console.log("File downloaded successfully");&#xA;  });&#xA;

    &#xA;

    But it throws me the error AxiosError: Unsupported protocol blob:

    &#xA;

    I also tried to directly convert the blob object to a jpeg object but to no avail.

    &#xA;

    I have searched complete StackOverflow, and I have not found a single solution working so please let me know why those are not working or if there is any new solution to do this.

    &#xA;

  • java.lang.NoClassDefFoundError : Could not initialize class on Linux (Works fine on Windows)

    26 décembre 2016, par Jake Miller

    I’m using a C++ FFmpeg wrapper for Java (org.bytedeco.javacpp). This works perfectly on a Windows machine (my development machine) but throws this error when ran on Linux (Amazon Web Services Elastic Beanstalk) :

    java.lang.NoClassDefFoundError: Could not initialize class org.bytedeco.javacpp.avutil
       at java.lang.Class.forName0(Native Method) ~[na:1.8.0_111]
       at java.lang.Class.forName(Class.java:348) ~[na:1.8.0_111]
       at org.bytedeco.javacpp.Loader.load(Loader.java:472) ~[javacpp-1.2.1.jar!/:1.2.1]
       at org.bytedeco.javacpp.Loader.load(Loader.java:417) ~[javacpp-1.2.1.jar!/:1.2.1]
       at org.bytedeco.javacpp.avformat$AVFormatContext.<clinit>(avformat.java:2819) ~[ffmpeg-3.2.1-1.3.jar!/:1.2.1]
       at org.bytedeco.javacv.FFmpegFrameGrabber.startUnsafe(FFmpegFrameGrabber.java:391) ~[javacv-1.3.jar!/:1.3]
       at org.bytedeco.javacv.FFmpegFrameGrabber.start(FFmpegFrameGrabber.java:385) ~[javacv-1.3.jar!/:1.3]
    </clinit>

    I’ve been troubleshooting for the past 2 days and have tried the following to fix the issue :

    • upgrade to Linux to 2.4
    • downgrading javacpp to 1.2.1
    • running mvn clean
    • running mvn -U
    • deleting contents of /.m2/ and redownloading dependencies
    • various combinations of dependency versions
    • git clone on a Linux VM & running mvn install there

    When looking further into the issue, I stumbled upon documentation for avformat$AVFormatContext as it’s in the stack trace posted above (6th line). The documentation for a C++ class named AVFormatContext. Whenever I attempt to view the class in Eclipse, it says Source Not Found.

    My question : could this problem possibly be caused by the C++ libraries on my Linux VM ? None of the above solutions fixed it so this is my only hypothesis as of now.

    Here’s my other Stack Overflow question regarding this subject : Java.lang.NoClassDefFoundError caused by FFmpeg when deployed on Linux as a packaged .war (Works on development machine)