Recherche avancée

Médias (1)

Mot : - Tags -/stallman

Autres articles (56)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

  • 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

  • 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

Sur d’autres sites (13624)

  • Live stream doesn't seem to be passed to AWS correctly

    12 août 2024, par NoobAmI

    I'm trying to stream my live video into Amazon IVS and I don't see it on the live channels.

    


    Is it possible I have a mistake in my FFMPEG configuration ?
I'm expecting to see this in my playback url or on the console screen for playback but I see nothing at the moment.

    


    As I understand it, shouldn't I see some kind of playback in the live channels if a stream is being sent that channel ?

    


    `  async sendDataToIvs(channelArn: string, payload: any): Promise<void> {&#xA;    const injestServer = &#x27;***.global-contribute.live-video.net&#x27;;&#xA;    const streamKey = &#x27;sk_us-east-1_*****&#x27;;&#xA;  &#xA;    const ffmpeg = spawn(&#x27;ffmpeg&#x27;, [&#xA;      &#x27;-re&#x27;, // Read input at native frame rate&#xA;      &#x27;-i&#x27;, &#x27;-&#x27;, // Input from stdin (live stream data)&#xA;      &#x27;-r&#x27;, &#x27;30&#x27;, // Frame rate&#xA;      &#x27;-c:v&#x27;, &#x27;libx264&#x27;, // Video codec - H.264&#xA;      &#x27;-pix_fmt&#x27;, &#x27;yuv420p&#x27;, // Pixel format&#xA;      &#x27;-profile:v&#x27;, &#x27;main&#x27;, // H.264 profile&#xA;      &#x27;-preset&#x27;, &#x27;veryfast&#x27;, // Encoder quality setting&#xA;      &#x27;-x264opts&#x27;, &#x27;nal-hrd=cbr:no-scenecut&#x27;, // Additional x264 options&#xA;      &#x27;-minrate&#x27;, &#x27;3000&#x27;, // Minimum bitrate&#xA;      &#x27;-maxrate&#x27;, &#x27;3000&#x27;, // Maximum bitrate&#xA;      &#x27;-g&#x27;, &#x27;60&#x27;, // GOP size&#xA;      &#x27;-c:a&#x27;, &#x27;aac&#x27;, // Audio codec&#xA;      &#x27;-b:a&#x27;, &#x27;160k&#x27;, // Audio bitrate&#xA;      &#x27;-ac&#x27;, &#x27;2&#x27;, // Audio channels&#xA;      &#x27;-ar&#x27;, &#x27;44100&#x27;, // Audio sample rate&#xA;      &#x27;-f&#x27;, &#x27;flv&#x27;, // Output format&#xA;      `rtmps://${injestServer}:443/app/${streamKey}` // Output destination&#xA;    ]);&#xA;  &#xA;    ffmpeg.stdin.write(payload, (err) => {&#xA;      console.log(payload)&#xA;      if (err) console.error(&#x27;Error writing payload to FFmpeg stdin:&#x27;, err);&#xA;    });&#xA;  &#xA;    ffmpeg.on(&#x27;close&#x27;, (code) => {&#xA;      console.log(`FFmpeg process exited with code ${code}`);&#xA;    });&#xA;  &#xA;    ffmpeg.stdin.on(&#x27;error&#x27;, (err) => {&#xA;      console.error(&#x27;Error writing to FFmpeg stdin:&#x27;, err);&#xA;    });&#xA;  &#xA;    ffmpeg.stderr.on(&#x27;data&#x27;, (data) => {&#xA;      console.error(`FFmpeg error: ${data}`);&#xA;    });&#xA;  } `&#xA;</void>

    &#xA;

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

    5 mai 2024, par must

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

    &#xA;

    My current Dockerfile :

    &#xA;

    # Stage 1: Build the application&#xA;FROM maven:3.8.4-openjdk-17 AS build&#xA;WORKDIR /app&#xA;COPY pom.xml .&#xA;COPY src ./src&#xA;RUN mvn clean install -Dmaven.test.skip=true&#xA;&#xA;# Stage 2: Run the application&#xA;FROM openjdk:17&#xA;WORKDIR /app&#xA;COPY --from=build /app/target/application.jar ./app.jar&#xA;EXPOSE 8080&#xA;CMD ["java", "-jar", "-Dspring.profiles.active=pr", "app.jar"]&#xA;

    &#xA;

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

    &#xA;

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

    &#xA;

    Everyone writes about adding

    &#xA;

    RUN apt-get -y update &amp;&amp; apt-get -y upgrade &amp;&amp; apt-get install -y --no-install-recommends ffmpeg&#xA;

    &#xA;

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

    &#xA;

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

    &#xA;

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

    &#xA;

    and declared DockerFile as :

    &#xA;

    # Stage 1: Build the application&#xA;FROM maven:3.8.4-openjdk-17 AS build&#xA;WORKDIR /app&#xA;COPY pom.xml .&#xA;COPY src ./src&#xA;RUN mvn clean install -Dmaven.test.skip=true&#xA;&#xA;# Stage 2: Install ffmpeg&#xA;FROM jrottenberg/ffmpeg:latest AS ffmpeg&#xA;&#xA;# Stage 3: Run the application&#xA;FROM openjdk:17&#xA;WORKDIR /app&#xA;COPY --from=build /app/target/application.jar ./app.jar&#xA;COPY --from=ffmpeg /usr/local/bin/ffmpeg /usr/local/bin/ffmpeg&#xA;&#xA;EXPOSE 8080&#xA;CMD ["java", "-jar", "-Dspring.profiles.active=pr", "app.jar"]&#xA;

    &#xA;

    but still it did not work. I get :

    &#xA;

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

    &#xA;

    I'm using Amazon Linux on EC2.

    &#xA;

    Can someone get me on the right track ?

    &#xA;

  • Why does fluent-ffmpeg only work when it throws the error Output stream closed

    29 mars 2024, par volume one

    I am using fluent-ffmpeg to process a video file (and then upload that to Amazon S3). The code is very straightforward but it only works if :

    &#xA;

      &#xA;
    • pipe option {end: true} is set in .output()
    • &#xA;

    • which has a side-effect that causes the following console log output
    • &#xA;

    &#xA;

    &#xA;

    Processing : 19.261847354642416% done Processing :&#xA;32.365144874807335% done Processing : 48.80978326261429% done Processing : 78.35771917058617%&#xA;Processing : 91.49377493455148% done Processing :&#xA;99.91264359125745% done An error occurred : Output stream closed

    &#xA;

    &#xA;

    Despite that error, it seems the file is generated correctly and it gets uploaded to Amazon S3 fine.

    &#xA;

    This is the fluent-ffmpeg code :

    &#xA;

    import {PassThrough} from &#x27;node:stream&#x27;;&#xA;import FFMpeg from &#x27;fluent-ffmpeg&#x27;;&#xA;&#xA;let PassThroughStream = new PassThrough();&#xA;&#xA;             FFMpeg(&#x27;/testvideo.mp4&#x27;)&#xA;                    .videoCodec(&#x27;libx264&#x27;)&#xA;                    .audioCodec(&#x27;libmp3lame&#x27;)&#xA;                    .size(`640x480`)&#xA;                    // Stream output requires manually specifying output formats&#xA;                    .format(&#x27;mp4&#x27;)&#xA;                    .outputOptions(&#x27;-movflags dash&#x27;)&#xA;                    .on(&#x27;progress&#x27;, function (progress) {&#xA;                        console.log(&#x27;Processing: &#x27; &#x2B; progress.percent &#x2B; &#x27;% done&#x27;);&#xA;                    })&#xA;                    .on(&#x27;error&#x27;, function (err) {&#xA;                        console.log(&#x27;An error occurred: &#x27; &#x2B; err.message);&#xA;                    })&#xA;                    .on(&#x27;end&#x27;, function () {&#xA;                        console.log(&#x27;FFMpeg Processing finished!&#x27;);&#xA;                    })&#xA;                    .output(PassThroughStream, {end: true})&#xA;                    .run();&#xA;&#xA;   // Now upload to S3&#xA;    try {&#xA;          await s3Upload({&#xA;              AWSS3Client: &#x27;mys3client&#x27;,&#xA;              Bucket: &#x27;publicbucket,&#xA;              ACL: "public-read",&#xA;              ContentType: &#x27;video/mp4&#x27;,&#xA;              Key: &#x27;whoever/whatever.mp4&#x27;,&#xA;              Body: PassThroughStream&#xA;           });&#xA;    } catch (error) {&#xA;                    console.log(`s3Upload error`, error)&#xA;                }&#xA;

    &#xA;

    If I set the pipe output() option to {end: false} then there is no error from fluent-ffmpeg and I get "Processing: 100% done FFMpeg Processing finished!" as the final console log.

    &#xA;

    BUT the problem is that the s3Upload() does not do anything. There are no errors. Just no activity.

    &#xA;

    I feel very uncomfortable letting fluent-ffmpeg end in an error even if the code itself does the job intended. It will also cause testing to fail. What could be the issue ?

    &#xA;

    The command line code is : ffmpeg -i https:/xxxbucket.s3.amazonaws.com/14555/file-example.mp4 -acodec libmp3lame -vcodec libx264 -filter:v scale=w=trunc(oh*a/2)*2:h=480 -f mp4 -movflags dash pipe:1

    &#xA;