Recherche avancée

Médias (2)

Mot : - Tags -/kml

Autres articles (37)

  • 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

  • Other interesting software

    13 avril 2011, par

    We don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
    The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
    We don’t know them, we didn’t try them, but you can take a peek.
    Videopress
    Website : http://videopress.com/
    License : GNU/GPL v2
    Source code : (...)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

Sur d’autres sites (4866)

  • Mapping streams by language in FFmpeg

    8 décembre 2016, par ffmpeg123

    I have lots of files with multiple audio and subtitle languages, however the track numbers aren’t consistent (the English audio stream isn’t always the first) so using a command such as :

    ffmpeg -i "input.mkv" -map 0 -map -0:a:1 -c:v copy -c:a copy "output.mkv"

    doesn’t yield expected results. After searching around I discovered it was possible to map streams based on language with this command :

    ffmpeg -i "input.mkv" -map 0 -map -0:m:language:eng -c:v copy -c:a copy "output.mkv"

    However -map -0:m:language:eng will remove all tracks with the English language flag. To keep the subtitle tracks you can use -map 0:s this is a good solution however, I want to know if it’s possible to only map audio streams based on language.

  • Perl and ffmpeg script

    21 novembre 2016, par armight29

    The first part of my script that asks whether to check for cinavia doesn’t work. That is, if I type in ’y’ or ’Y’ it doesn’t proceed to the CNVIACHk function but goes instead to the MVIEPARAMs function.

    # GET FILE INPUT..

    print "Enter Filename..";
    my $MOVIe = <stdin>;

    print "Check For Cinavia? Enter y or n\n";
    my $CNVIAQUESt = <stdin>;

    if ( $CNVIAQUESt eq "y" || $CNVIAQUESt eq "Y" ) {
       CNVIACHk( $MOVIe );
    }
    else {
       MVIEPARAMs( $MOVIe );
    }


    sub MVIEPARAMs {

       system(
           "ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 $MOVIe"
       );

       print "Duration In Seconds..";
       $DURATIOn = <stdin>;

       system(
           'ffprobe -v error -of flat=s=_ -select_streams v:0 -show_entries stream=height,width "$MOVIe"'
       );

       print "Movie Width? ";
       $MOVIEWIDTh = <stdin>;

       print "Movie Height? ";
       $MOVIEHEIGHt = <stdin>;

       print "Enter Target Width.. ";
       $TARGETWIDTh = <stdin>;

       print "Enter Target Height.. ";
       $TARGETHEIGHt = <stdin>;

       system(
           'ffprobe -show_entries stream=index,codec_type:stream_tags=language -of compact "$MOVIe" -v 0 | grep eng'
       );

       print "Enter number of English Audio Track.. ";
       $ENGAUDTRk = <stdin>;

       print "English Audio Track Number Is ", $ENGAUDTRk, ".";
       $BTRTe = 31875072 / $DURATIOn;

       DETRMNEPAd;
    }


    sub DETRMNEPAd {

       if ( $MOVIEWIDTh &lt; $TARGETWIDTh ) {
           $X = $TARGETWIDTh - $MOVIEWIDTh / 2;
       }
       elsif ( $MOVIEHEIGHt &lt; $TARGETHEIGHt ) {
           $Y = $TARGETHEIGHt - $MOVIEHEIGHt / 2;
           $X = 0;
           print $Y;
       }
       else {
           print "Padding Not Needed Moving On...";
           CNVRTWOPAd();
       }

       CNVRTWPAd();
    }


    sub CNVIACHk {

       print "Checking Movie For Cinavia.. ";
       system( "cinde -i $MOVIe -q high -l" );

       print "Enter Track To Check.. ";
       $TRKTOCHEk = <stdin>;

       system( "cinde -i $MOVIe -q high -t $TRKTOCHEk" );

       print "Was Cinavia Detected?";
       $CNVIACHKANSr = <stdin>;

       if ( $CNVIACHKANSr eq "y" ) {
           exit;
       }
       else {

           print "Would You Like To Check Another Track?";
           $CHKANTHRTRk = <stdin>;

           if ( $CHKANTHRTRk eq "y" ) {
               CNVIACHk();
           }
           else {
               MVIEPARAMs();
           }
       }
    }


    sub CNVRTWOPAd {

       print "BEGINNING CONVERSION...\n";

       print "What Preset Would You Like To Use?";
       $PRESEt = <stdin>;

       system(
           "ffmpeg -i $MOVIe -map 0:0 -map 0:$ENGAUDTRk -c:v libx264 -b:v $BTRTe -preset $PRESEt -strict -2 -c:a ac3 -b:a 192k -threads 12 -pass 1 -f matroska dummy &amp;&amp; ",
           "ffmpeg -i $MOVIe -map 0:0 -map 0:$ENGAUDTRk -c:v libx264 -b:v $BTRTe -preset $PRESEt -strict -2 -c:a ac3 -b:a 192k -threads 12 -pass 2 -f matroska ENCODE1.mkv"
       );
    }


    sub CNVRTWPAd {

       print "BEGINNING CONVERSION...\n";

       print "What Preset Would You Like To Use?";
       my $PRESEt = <stdin>;

       system(
           "ffmpeg -i $MOVIe -map 0:0 -map 0:$ENGAUDTRk -c:v libx264 -b:v $BTRTe -preset $PRESEt -vf \"pad=$TARGETWIDTh:$TARGETHEIGHt:$X:$Y:black\" -strict -2 -c:a ac3 -b:a 192k ",
           " -threads 12 -pass 1 -f matroska dummy &amp;&amp; ffmpeg -i $MOVIe -map 0:0 -map 0:$ENDAUDTRk -c:v libx264 -b:v $BTRTe -preset $PRESEt -vf \"pad=$TARGETWIDTh:$TARGETHEIGHt:$X:$Y:black\"",
           " -strict -2 -c:a ac3 -b:a 192k -threads 12 -pass 2 -f matroska ENCODE1.mkv"
       );
    }
    </stdin></stdin></stdin></stdin></stdin></stdin></stdin></stdin></stdin></stdin></stdin></stdin></stdin>
  • Transcoding rtsp over http

    24 novembre 2016, par NikiDon

    Before I explain my problem : Sorry for bad English and if you want you can help me on my spelling too.

    I have a low cost IP camera who give only a RTSP link :
    192.168.x.x/onvif2
    It doesn’t need authentication to see video... my router doesn’t have open ports^^

    I want to trancode rtsp ( because of html can’t play it) with FFMPEG to send it on a server node.js ( express ) and in index.html play stream in video tag :

    Server.js :

    <code class="echappe-js">&lt;script&gt;<br />
       var express = require('express');<br />
       var path = require('path');<br />
       var app = express();<br />
       var server = require('http').Server(app);<br />
       var io = require('socket.io')(server);<br />
    <br />
       app.use(express.static(path.join(__dirname, 'public')));<br />
    <br />
       app.get('/', function (req, res) {<br />
           res.sendFile(__dirname + '/index.html');<br />
       });<br />
    <br />
       server.listen(8080);<br />
       console.log(&quot;server run at 127.0.0.1:8080&quot;);<br />
    <br />
       io.on('connection',function(socket){<br />
           socket.emit('hello','hello user');<br />
       });<br />
    &lt;/script&gt;

    and index.html :

       <video style="background-color: black;" width="480" height="270" autoplay="autoplay">
       <source src="http://127.0.0.1:8080/vid2.mp4" type="video/mp4" codecs="avc1.42E01E, mp4a.40.2">
       </source></video>

       <code class="echappe-js">&lt;script&gt;<br />
           var socket = io.connect();<br />
           socket.on('hello',function(data){<br />
               console.log(data);<br />
           });<br />
    <br />
       &lt;/script&gt;

    ffmpeg -i rtsp ://192.168.x.x/onvif2 -crf 30 -preset ultrafast -acodec aac -strict experimental -ar 44100 -ac 2 -b:a 96k -vcodec libx264 -r 25 -b:v 500k -f flv http://127.0.0.1:xx/vid2.mp4

    The camera starts but I can’t find vid2.mp4

    How can I replace ffserver with a node server (http? udp ?...)