Recherche avancée

Médias (1)

Mot : - Tags -/ticket

Autres articles (50)

  • Creating farms of unique websites

    13 avril 2011, par

    MediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
    This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)

  • 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

  • Changer son thème graphique

    22 février 2011, par

    Le thème graphique ne touche pas à la disposition à proprement dite des éléments dans la page. Il ne fait que modifier l’apparence des éléments.
    Le placement peut être modifié effectivement, mais cette modification n’est que visuelle et non pas au niveau de la représentation sémantique de la page.
    Modifier le thème graphique utilisé
    Pour modifier le thème graphique utilisé, il est nécessaire que le plugin zen-garden soit activé sur le site.
    Il suffit ensuite de se rendre dans l’espace de configuration du (...)

Sur d’autres sites (5478)

  • ffmpeg : fast video split by encoding only missing keyframes and copying the rest

    29 janvier 2023, par Eduardo Poço

    I am splitting a video in many files, removing the silent periods. The script is ready to detect the voiced parts, split and concat.

    


    At first, it thought copying the frames (-c copy) would be faster, but if a starting time of a part is not a keyframe, the video gets messed and some frames freeze until another keyframe appears. But reencoding each split file, although working, takes a long time.

    


    So, I was wondering if it is possible to reencode only the moments whose frames lost its keyframe, while copying everything so on. Is there a ffmpeg option for suck a task, or is there a way to differentiate those frames and treat them differently when splitting the file ?

    


    After reading some articles and documentation, that is how I understand what I am observing. Please, correct me if I misunderstood how ffmpeg works when splitting a file starting from a timestamp without a keyframe.

    


  • How to split ffmpeg output into multiple files ?

    15 novembre 2020, par Genius Billionaire

    What I want to happen : the equivalent of this : split -n 4 output.mp4, which generates 4 files. Only the first file is "valid mp4" that you can play. The other 3 files rely on the previous file.

    


    A similar request can be seen here : https://lists.ffmpeg.org/pipermail/ffmpeg-user/2013-May/015090.html

    


    Why I want this to happen : running FFMPEG in the browser, which means 1) file size limit, 2) I don't have the Linux command split to help me out, just FFMPEG. If I can get FFMPEG to output files of X MB each, I can iteratively delete files as soon as I've read them.

    


    EDIT : as a commenter asked, yes it is possible to run several ffmpeg commands if necessary.

    


    The right solution is not using segments. The following example command generates several 4 valid mp4 files. That's not exactly what I want.
ffmpeg -i ../flv.flv -segment_time 5 -f segment -t 20 %d.mp4

    


    This other solution also does not work (it's the same output as previous incorrect solution) :

    


    ffmpeg -i ../flv.flv -ss 00:00:00 -t 5 1.mp4

    


    ffmpeg -i ../flv.flv -ss 00:00:05 -t 5 2.mp4

    


  • Unable to split audio using easy_audio_trimmer

    27 juillet 2023, par Sana Wasim

    can we use the easy_audio_trimmer package to split an audio ? I tried using the ffmpeg but it is conflicting with the above package and not work.

    


    I tried splitting by using these functions and it gave an error at the FlutterFFmpeg() method and i cant find an alternative also the duration(filePath) in the command final durationResult = await flutterSound.duration(filePath) ; shows an error

    


    Future<void> _splitAudio() async {&#xA;    setState(() {&#xA;      _progressVisibility = true;&#xA;    });&#xA;&#xA;    // Get the application documents directory&#xA;    final appDocumentsDirectory = await getApplicationDocumentsDirectory();&#xA;&#xA;    // Get the input audio file path&#xA;    final inputAudioPath = widget.file.path;&#xA;&#xA;    // Get the output file names for the two parts&#xA;    final outputFileName1 = &#x27;split_audio_part1.mp3&#x27;;&#xA;    final outputFileName2 = &#x27;split_audio_part2.mp3&#x27;;&#xA;&#xA;    // Get the output file paths for the two parts&#xA;    final outputPath1 = &#x27;${appDocumentsDirectory.path}/$outputFileName1&#x27;;&#xA;    final outputPath2 = &#x27;${appDocumentsDirectory.path}/$outputFileName2&#x27;;&#xA;&#xA;    // Calculate the duration of the original audio&#xA;    final originalDuration = await _getAudioDuration(inputAudioPath);&#xA;&#xA;    // Calculate the durations of the two parts&#xA;    final part1Duration = _startValue;&#xA;    final part2Duration = originalDuration - _endValue;&#xA;&#xA;    // Construct the FFmpeg command to split the audio&#xA;    final ffmpeg = FlutterFFmpeg();&#xA;    final splitCommand = &#x27;-i $inputAudioPath -ss 0 -t $part1Duration -c copy $outputPath1 -ss $_endValue -t $part2Duration -c copy $outputPath2&#x27;;&#xA;&#xA;    try {&#xA;      // Execute the FFmpeg command to split the audio&#xA;      final int result = await ffmpeg.execute(splitCommand);&#xA;&#xA;      if (result == 0) {&#xA;        setState(() {&#xA;          _progressVisibility = false;&#xA;        });&#xA;        debugPrint(&#x27;Audio split successfully.&#x27;);&#xA;      } else {&#xA;        setState(() {&#xA;          _progressVisibility = false;&#xA;        });&#xA;        debugPrint(&#x27;Failed to split audio.&#x27;);&#xA;      }&#xA;    } catch (error) {&#xA;      setState(() {&#xA;        _progressVisibility = false;&#xA;      });&#xA;      debugPrint(&#x27;Error while splitting audio: $error&#x27;);&#xA;    }&#xA;  }&#xA;&#xA;  Future<int> _getAudioDuration(String filePath) async {&#xA;    final flutterSound = FlutterSound();&#xA;    final durationResult = await flutterSound.duration(filePath);&#xA;    return durationResult.inMilliseconds;&#xA;  }&#xA;</int></void>

    &#xA;

    Dependencies

    &#xA;

     path_provider: ^2.0.15&#xA;  ffmpeg_kit_flutter: ^5.1.0&#xA;  audioplayers: ^4.1.0&#xA;  flutter_sound: ^9.2.13&#xA;

    &#xA;