Recherche avancée

Médias (91)

Autres articles (71)

  • XMP PHP

    13 mai 2011, par

    Dixit Wikipedia, XMP signifie :
    Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
    Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
    XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)

  • 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" (...)

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

Sur d’autres sites (7902)

  • Wave64 (.w64) file format : question regarding chunk GUIDs

    24 janvier 2023, par pdu

    I am having trouble understanding the headers of the Wave64 (.w64) files generated by ffmpeg and especially the GUIDs.

    


    The specification

    


    I have found this document which describes the file format and the GUIDs. I have also found other websites (here and here) that (indirectly) point to the same document. So this document is the only thing I have.

    


    According to this document the GUIDs are 128bits/16bytes long and should start with the FourCC of the Wave file format, but in lowercase instead of uppercase (see page 3). It also says that the 64bits fields are stored in little-endian (see item 3 of the list page 1), but it does not say anything about 128bits fields (but it should be the same).
For example the GUID for the RIFF chunk is : 66666972-912E-11CF-A5D6-28DB04C10000.

    


    The problem

    


    When I open a .w64 file generated by ffmpeg with an hex editor, I get this : 72 69 66 66 2E 91 CF 11 A5 D6 28 DB 04 C1 00 00. At the beginning, 76 69 66 66 stands for riff in ASCII. We can see that 0x66666972 from the spec was indeed stored in little-endian order (so far, so good). If we continue, we have 2E 91 and CF 11, which are still little-endian for 0x912E and 0x11CF. But now it gets weird : the following group of bytes are : A5 D6 and 28 DB 04 C1 00 00 for 0xA5D6 and 0x28DB04C10000 in the spec. So it is in big-endian now ?

    


    For reference, the relevant ffmpeg source files are wavenc.c, w64.h and w64.c.
I have also found this thread where someone implemented a .wav to .w64 converter (see the .7z attachment in the first post) and the GUIDs are stored in the same way as ffmpeg.

    


    Conclusion

    


    Seeing that two different implementations are doing the same thing, it probably means that I am missing something. Do you have any explanation ?

    


  • How to improve this Powershell script ?

    3 janvier 2023, par Joan Venge

    I wrote a powershell script that merges go pro video files if they have multiple files. It works when the videos are at the root drive i.e. C :, but otherwise not. The mergevideos.txt file is not created if I run the script from a different directory. Or the txt is created but it's empty. Not sure what's going on when run from a different directory.

    


    So is there a way to fix these issues and refactor this code to make it better ? Ideally I want the script to automatically look at the directory it's in or allows me to specify the directory it should work in so I can just call it from the same location but the videos can be anywhere.

    


    $path = "C:/NewVideos/"
$oldvids = Get-ChildItem -Path $path *.mp4
foreach ($oldvid in $oldvids) {
    $curpath = $oldvid.DirectoryName

    $name = [System.IO.Path]::GetFileNameWithoutExtension($oldvid)
    $ext = [System.IO.Path]::GetExtension($oldvid)
    if ($name.StartsWith("GX01") -and !($name.EndsWith("_merged")))
    {
        $newvid = $curpath + $name + "_merged" + $ext
        if ([System.IO.File]::Exists($newvid))
        {
            Write-Output "$name | ALREADY MERGED"
            continue
        }

        $count = 1

        for ($num = 2; $num -lt 10; $num++)
        {
            $nextpart = $name.Replace("GX01", "GX0" + $num)
            if ([System.IO.File]::Exists($curpath + "/" + $nextpart + $ext))
            {
                $count = $num
            }
        }

        if ($count -eq 1)
        {
            Write-Output "$name | SINGLE VIDEO"
            continue
        }

        $mergefile = $curpath + "mergevideos.txt"
        if (!(Test-Path $mergefile))
        {
            New-Item -path $curpath -name mergevideos.txt -type "file"
        }

        Clear-Content $mergefile

        for ($num = 1; $num -le $count; $num++)
        {
            $nextpart = $name.Replace("GX01", "GX0" + $num)
            $videofilename = "file '" + $nextpart + $ext + "'"
            Add-Content $mergefile $videofilename
        }

         Write-Output "$name | MERGING  $count VIDEOS"
         ffmpeg -f concat -safe 0 -i $mergefile -c copy $newvid
    }
}


    


  • Unable to inject album art into m4a when converting from mp3 FFMPEG

    25 décembre 2022, par Ryan

    I've been trying so many variations of conversion for mp3 to M4A with album art injection via URL. The command below is written in Go, but runs directly in shell. I assume I need to parse the item in the stream differently or more explicitly specify jpg codec somehow, but at a loss.

    


        cmd = exec.Command(
        "ffmpeg",
        "-i",
        escapedInputPath,
        "-i",
        bookArt,
        "-c:v",
        "copy",
        "-c:a",
        "aac",
        "-b:a",
        "256k",
        "-map",
        "0:0",
        "-map",
        "1:0",
        "-metadata:s:v",
        "title=Album cover",
        "-metadata:s:v",
        "comment=Cover (front)",
        escapedOutputPath,
    )


    


    Error

    


     Metadata:
    encoder         : Lavf59.27.100
  Duration: 05:54:05.07, start: 0.025057, bitrate: 64 kb/s
  Stream #0:0: Audio: mp3, 44100 Hz, mono, fltp, 64 kb/s
Input #1, image2, from 'https://myimage.jpg':
  Duration: 00:00:00.04, start: 0.000000, bitrate: 17234 kb/s
  Stream #1:0: Video: mjpeg (Progressive), yuvj444p(pc, bt470bg/unknown/unknown), 267x400 [SAR 300:300 DAR 267:400], 25 fps, 25 tbr, 25 tbn
Stream mapping:
  Stream #0:0 -> #0:0 (mp3 (mp3float) -> aac (native))
  Stream #1:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
[ipod @ 0x119b04d30] Could not find tag for codec mjpeg in stream #1, codec not currently supported in container
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
Error initializing output stream 0:0 -- 
[aac @ 0x119b05ae0] Qavg: nan
Conversion failed!