Recherche avancée

Médias (1)

Mot : - Tags -/berlin

Autres articles (67)

  • Les tâches Cron régulières de la ferme

    1er décembre 2010, par

    La gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
    Le super Cron (gestion_mutu_super_cron)
    Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)

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

  • Replacing one segment of fragmented mp4

    24 mai 2023, par Stsh4lson

    I created mpeg-dash stream with fragmented mp4 stream with init.m4a and .m4s segments using following command :

    


    ffmpeg -i $1 -c:v h264_nvenc -c:a aac -g 100 \
    -sc_threshold 0 -reset_timestamps 1 -an -map v:0 -s:0 1920x1080 \
    -profile:v baseline -level:v 5.0 -streaming 1 \
    -s:1 1920x1080 -use_template 1 -use_timeline 0 \
    -seg_duration 4 -frag_duration 1 -frag_type duration -pix_fmt yuv420p \
    -f dash $2


    


    I also generated second mpeg-dash vod with same ffmpeg command and i want to replace some segments in the first video with segments form second video.
When i just replace segments manually the video is frozen at that segment.

    


    Additionally when i replace segments that are in the same timestamp, i replace segment no.1 with segment no.1 etc. everything works fine.
Segments that are replaces with different segments from the same videos are also freezing.

    


    And when i do cat init_stream0.m4s chunk_segment0001.m4s chunk_segment0003.m4s > combined.mp4, constructed video has 12 seconds in player with missing video from 4s to 8s.

    


    I suspect that there is some timeline information in segments but i can find no information about structure of those m4s segments, and h264 has suposedly no timeline information.

    


    Do .m4s fragments in mpeg-dash have some internal timestamp information, and can i overwrite/replace this timestamp info ?

    


  • ffmpeg, live MPEG-TS demux & decode

    8 mai 2017, par NadavRub

    Environment

    • Ubuntu-14
    • C++
    • ffmpeg

    Use-case

    • Live SPTS is received via UDP by a 3rd party module
    • TS Packets are received iteratively
    • The TS Video (ES) should be decoded in minimal latency

    Considered Implementation

    • Upon TS packet reception, immediately push it to the TS demux
    • Once enough packets are received the video format is resolvable, create the video codec
    • Push each video packet into the video decoder
    • Once enough video packets were processed the video codec result a valid output frame

    Problem at-hand

    Can this be done w/ ffmpeg ?!?!, … using “avformat_open_input” mandate a file to read from… I need a way where I can iteratively push packets to the TS demuxer ( w/ minimal latency )…

    Does ffmpeg support the above mentioned use-case ? How ?

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