Recherche avancée

Médias (91)

Autres articles (108)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...)

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

  • dashenc : Write segment timelines properly if the timeline has gaps

    28 novembre 2014, par Martin Storsjö
    dashenc : Write segment timelines properly if the timeline has gaps
    

    Write a new start time if the duration of the previous segment
    didn’t match the start of the next one. Check that segments
    actually are continuous before writing a repeat count.

    This makes sure timestamps deduced from the timeline actually
    match the real start timestamp as written in filenames (if
    using a template containing $Time$).

    Signed-off-by : Martin Storsjö <martin@martin.st>

    • [DH] libavformat/dashenc.c
  • How can I sync the frames of multiple videos from a multi-camera capture system using FFMPEG

    9 février 2023, par user9114146

    I have a multi-camera capture setup with 2 canon cameras. Each of these cameras have a tentacle sync e timecode generator connected to them.

    &#xA;

    After a video capture with these 2 cameras, the generated timecode (SMPTE format) is stored in the video files metadata.

    &#xA;

    It looks like this 00:00:53;30

    &#xA;

    Is there a bash script that uses FFmpeg to trim the start time of the video that started earlier (based on timecode) to match the other and then trim the end time of the video that ended last to match the one that ended first ?

    &#xA;

    The two trimmed output videos should be synced based on the timecode and have the same duration.

    &#xA;

    So far, my bash script looks like this :

    &#xA;

    file1="A001C002_220101EB_CANON.MXF"&#xA;file2="A001C002_220101US_CANON.MXF"&#xA;&#xA;# Get the SMPTE timecodes of the two files&#xA;timecode1=$(ffmpeg -i "$file1" 2>&amp;1 | sed -n &#x27;s/timecode.*: \(.*\)/\1/p&#x27;)&#xA;timecode2=$(ffmpeg -i "$file2" 2>&amp;1 | sed -n &#x27;s/timecode.*: \(.*\)/\1/p&#x27;)&#xA;&#xA;# Convert the SMPTE timecode to start time in seconds&#xA;start_time_1=$(echo "$timecode1" | awk -F &#x27;:&#x27; &#x27;{print 3600*$1 &#x2B; 60*$2 &#x2B; $3}&#x27;)&#xA;start_time_2=$(echo "$timecode2" | awk -F &#x27;:&#x27; &#x27;{print 3600*$1 &#x2B; 60*$2 &#x2B; $3}&#x27;)&#xA;&#xA;# Trim the start of the video with the earlier start timecode so that both videos have the same start time&#xA;if [ "$start_time_1" -lt "$start_time_2" ]; then&#xA;  ffmpeg -i "$file1" -ss "$start_time_2" -c:v libx264 -crf 18 -preset veryfast trimmed_file1.mp4&#xA;  ffmpeg -i "$file2" -c:v libx264 -crf 18 -preset veryfast trimmed_file2.mp4&#xA;else&#xA;  ffmpeg -i "$file2" -ss "$start_time_1" -c:v libx264 -crf 18 -preset veryfast trimmed_file2.mp4&#xA;  ffmpeg -i "$file1" -c:v libx264 -crf 18 -preset veryfast trimmed_file1.mp4&#xA;fi&#xA;&#xA;# Get the duration of both files&#xA;duration_1=$(ffmpeg -i trimmed_file1.mp4 2>&amp;1 | grep "Duration" | cut -d &#x27; &#x27; -f 4 | sed s/,//)&#xA;duration_2=$(ffmpeg -i trimmed_file2.mp4 2>&amp;1 | grep "Duration" | cut -d &#x27; &#x27; -f 4 | sed s/,//)&#xA;&#xA;# Convert the duration to seconds&#xA;duration_1_secs=$(echo $duration_1 | awk -F: &#x27;{ print ($1 * 3600) &#x2B; ($2 * 60) &#x2B; $3 }&#x27;)&#xA;duration_2_secs=$(echo $duration_2 | awk -F: &#x27;{ print ($1 * 3600) &#x2B; ($2 * 60) &#x2B; $3 }&#x27;)&#xA;&#xA;# Trim the end time of the video that ended last to match the one that ended first&#xA;if [ "$duration_1_secs" -gt "$duration_2_secs" ]; then&#xA;  echo "Trimming end time of file1 to match file2"&#xA;  ffmpeg -i trimmed_file1.mp4 -t "$duration_2" -c:v libx264 -c:a aac trimmed_file1.mp4&#xA;else&#xA;  echo "Trimming end time of file2 to match file1"&#xA;  ffmpeg -i trimmed_file2.mp4 -t "$duration_1" -c:v libx264 -c:a aac trimmed_file2.mp4&#xA;fi&#xA;

    &#xA;

    But this does not make the videos have matching frames.

    &#xA;

    Thanks !

    &#xA;

  • How can I manually extract Metadata from mp4 Videoframes ?

    3 décembre 2020, par bennimueller

    I have a large GoPro Video about 11:44 min. Each second the GoPro records 30 frames with datetime(UNIX) and gps(lat, long) information. So there are round about 21188 frames in my video.

    &#xA;

    I need to extract the GPS data to bring every single frame to a map. There's a tool called GoProtelemetryextractor (https://goprotelemetryextractor.com/free/). This gives me a csv file with 19800 lines (1 line for each frame). Obviously there are 1400 rows/frames missing in the csv. If I now multiplex the csv with the mp4 in a GIS software, the frames get assigned to wrong "csv frames". I need to match these 19800 frames correctly to the frames in the video by deleting "None metadata frames" out of the video.&#xA;I guess the problem is that the goprotelemetry extractor starts writing the csv with the first metadata it finds. And not starting at the first frame and just write "NO METADATA ROWS".

    &#xA;

    Basically my question is : How can I extract the metadata from each mp4 Frame "manually" to know where the csv "starts" and match video and csv ?

    &#xA;