Recherche avancée

Médias (0)

Mot : - Tags -/tags

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (29)

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

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

Sur d’autres sites (3751)

  • Having trouble obtaining the time from RTP Timestamps obtained through OpenCV

    24 août 2019, par Fr0sty

    I am finding it a bit difficult trying to understand whether or not the hack around with FFmpeg and OpenCV really provided a RTP timestamp. My last post helped a little bit but got me stuck in trying to validate the timestamps obtained through this work around by modifying ffmpeg and opencv.

    FFmpeg version : 4.1.0
    OpenCV version : 3.4.1

    import cv2
    import time
    from datetime import datetime, date

    uri = 'rtsp://admin:password@192.168.1.66:554/Streaming/Channels/101'
    cap = cv2.VideoCapture(uri)
    '''One is the offset between the two epochs. Unix uses an epoch located at 1/1/1970-00:00h (UTC) and NTP uses 1/1/1900-00:00h.
    This leads to an offset equivalent to 70 years in seconds (there are 17 leap years between the two dates so the offset is'''
    time_offset = 2208988800 # (70*365 + 17)*86400 = 2208988800 (in seconds)
    # offset = 3775484294
    days = 43697
    pdat = "1900-01-01 00:00:00:00"
    mdat = "2019-08-23 22:02:44:00" # str(datetime.now()) + str(datetime.now().time())
    pdate = datetime.strptime(pdat, "%Y-%m-%d %H:%M:%S:%f").date()
    mdate = datetime.strptime(mdat, "%Y-%m-%d %H:%M:%S:%f").date()
    delta = (mdate - pdate).days
    offset = delta * 86400
    def time_delta(s):
       return (s - time_offset)

    while True:
       frame_exists, curr_frame = cap.read()
       if frame_exists:
           seconds = cap.getRTPTimeStampSeconds()
           fraction = cap.getRTPTimeStampFraction()
           timestamp = cap.getRTPTimeStampTs()
           unix_offset = seconds - time_offset
           msec = int((int(fraction) / 0xFFFFFFFF) * 1000.0)
           ts = float(str(unix_offset) + "." + str(msec))
           # print("Timestamp per Frame:%i" % timestamp)
           print((datetime.fromtimestamp(float(ts) + offset)))
    cap.release()

    My Output :

    On August 23, 2019 at 22:02

    ...
    2019-08-23 13:59:52.781000
    2019-08-23 13:59:52.726000
    2019-08-23 13:59:52.671000
    2019-08-23 13:59:52.616000
    2019-08-23 13:59:52.561000
    2019-08-23 13:59:52.506000
    2019-08-23 13:59:52.451000
    2019-08-23 13:59:52.396000
    2019-08-23 13:59:52.342000
    2019-08-23 13:59:52.287000
    2019-08-23 13:59:52.232000
    2019-08-23 13:59:52.177000
    2019-08-23 13:59:52.122000
    2019-08-23 13:59:52.067000
    2019-08-23 13:59:52.012000
    2019-08-23 13:59:53.570000
    2019-08-23 13:59:53.020000
    2019-08-23 13:59:53.847000
    2019-08-23 13:59:53.792000

    I’ve noticed how the time increments weirdly (that’s not suppose to happen in the real, current time), such as the last two lines and a few others in between in the output. A bit flabbergasted as to what went wrong. Also trying this out on multiple IP cameras, with each showing a different timestamp probably related to when they were turned on.

  • How to replace 'flags' with 'frame types' on ffmpeg's extract_mvs.c

    15 février 2018, par helmo

    I am in the process of extracting motion vectors from ffmpeg to use in a computer vision project. I have been looking for an easy way to extract this information in a meaningful way.

    While reading through different posts and other websites, I came across the extract_mvs.c in the example folder of FFmpeg. I noticed that out of the data produced by this file (after it has been compiled) there is a flag column which I would like to modify, to make it print frame types instead of 0x0s as shown below.

    The idea for modifying flags it I got from the author of the code himself.

    The extract_mvs.c file after it is compiled, returns information like this :

    framenum,source,blockw,blockh,srcx,srcy,dstx,dsty,flags
    2,-1,16,16,   8,   8,   8,   8,0x0
    2, 1,16,16,   8,   8,   8,   8,0x0
    2, 1,16,16,  24,   8,  24,   8,0x0
    2, 1,16,16,  40,   8,  40,   8,0x0
    2, 1,16,16,  56,   8,  56,   8,0x0
    2, 1,16,16,  72,   8,  72,   8,0x0
    2, 1,16,16,  88,   8,  88,   8,0x0
    ...
    297, 1,16,16, 248, 280, 248, 280,0x0
    297, 1,16,16, 264, 280, 264, 280,0x0
    297,-1,16,16, 278, 279, 280, 280,0x0
    297, 1,16,16, 280, 280, 280, 280,0x0
    297, 1,16,16, 296, 280, 296, 280,0x0
    297, 1,16,16, 312, 280, 312, 280,0x0
    297, 1,16,16, 328, 280, 328, 280,0x0
    297, 1,16,16, 344, 280, 344, 280,0x0

    Ideally what I want to achieve is :

    framenum,source,blockw,blockh,srcx,srcy,dstx,dsty,frametypes
    2,-1,16,16,   8,   8,   8,   8,B
    2, 1,16,16,   8,   8,   8,   8,B
    2, 1,16,16,  24,   8,  24,   8,B
    2, 1,16,16,  40,   8,  40,   8,B
    2, 1,16,16,  56,   8,  56,   8,B
    2, 1,16,16,  72,   8,  72,   8,B
    2, 1,16,16,  88,   8,  88,   8,B
    ...
    297, 1,16,16, 248, 280, 248, 280,P
    297, 1,16,16, 264, 280, 264, 280,P
    297,-1,16,16, 278, 279, 280, 280,P
    297, 1,16,16, 280, 280, 280, 280,P
    297, 1,16,16, 296, 280, 296, 280,P
    297, 1,16,16, 312, 280, 312, 280,P
    297, 1,16,16, 328, 280, 328, 280,P
    297, 1,16,16, 344, 280, 344, 280,P

    The part that requires modification in the file is shown here, where mv->flags needs to be replaced with frame type variable. I thought of making a reference to AVFrame struct with a pointer and call the pict-type. But not sure how the building blocks would be. Any help ?

  • How to expact 'flags' on ffmpeg's extract_mvs.c to print frame type

    14 février 2018, par helmo

    I am in the process of extracting motion vectors from ffmpeg to use in a computer vision project. I have been looking for an easy way to extract this information in a meaningful way.

    While reading through different posts and other websites, I came across the extract_mvs.c in the example folder of FFmpeg. I noticed that out of the data produced by this file (after it has been compiled) there is a flag column which I would like to modify, to make it print frame types instead of 0x0s as shown below.

    The idea for modifying flags it I got from the author of the code himself.

    The extract_mvs.c file after it is compiled, returns information like this :

    framenum,source,blockw,blockh,srcx,srcy,dstx,dsty,flags
    2,-1,16,16,   8,   8,   8,   8,0x0
    2, 1,16,16,   8,   8,   8,   8,0x0
    2, 1,16,16,  24,   8,  24,   8,0x0
    2, 1,16,16,  40,   8,  40,   8,0x0
    2, 1,16,16,  56,   8,  56,   8,0x0
    2, 1,16,16,  72,   8,  72,   8,0x0
    2, 1,16,16,  88,   8,  88,   8,0x0
    ...
    297, 1,16,16, 248, 280, 248, 280,0x0
    297, 1,16,16, 264, 280, 264, 280,0x0
    297,-1,16,16, 278, 279, 280, 280,0x0
    297, 1,16,16, 280, 280, 280, 280,0x0
    297, 1,16,16, 296, 280, 296, 280,0x0
    297, 1,16,16, 312, 280, 312, 280,0x0
    297, 1,16,16, 328, 280, 328, 280,0x0
    297, 1,16,16, 344, 280, 344, 280,0x0

    Ideally what I want to achieve is :

    framenum,source,blockw,blockh,srcx,srcy,dstx,dsty,frametypes
    2,-1,16,16,   8,   8,   8,   8,B
    2, 1,16,16,   8,   8,   8,   8,B
    2, 1,16,16,  24,   8,  24,   8,B
    2, 1,16,16,  40,   8,  40,   8,B
    2, 1,16,16,  56,   8,  56,   8,B
    2, 1,16,16,  72,   8,  72,   8,B
    2, 1,16,16,  88,   8,  88,   8,B
    ...
    297, 1,16,16, 248, 280, 248, 280,P
    297, 1,16,16, 264, 280, 264, 280,P
    297,-1,16,16, 278, 279, 280, 280,P
    297, 1,16,16, 280, 280, 280, 280,P
    297, 1,16,16, 296, 280, 296, 280,P
    297, 1,16,16, 312, 280, 312, 280,P
    297, 1,16,16, 328, 280, 328, 280,P
    297, 1,16,16, 344, 280, 344, 280,P

    The part that requires modification in the file is shown here, where mv->flags needs to be replaced with frame type variable. I thought of making a reference to AVFrame struct with a pointer and call the pict-type. But not sure how the building blocks would be. Any help ?