Recherche avancée

Médias (0)

Mot : - Tags -/interaction

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (67)

  • 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 formats acceptés

    28 janvier 2010, par

    Les commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
    ffmpeg -codecs ffmpeg -formats
    Les format videos acceptés en entrée
    Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
    Les formats vidéos de sortie possibles
    Dans un premier temps on (...)

Sur d’autres sites (5449)

  • 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;