Recherche avancée

Médias (91)

Autres articles (99)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

Sur d’autres sites (12671)

  • Metadict in ffmpeg does not have rotate information

    14 juillet 2022, par Lucky Sunda

    My aim is to extract frames out of a video but many times the frames are inverted. This is happening because "VideoCapture" in cv2 does read the rotate flag data present in the video metadata. I am running it on mac and installed "ffmpeg" package (5.0.1) using brew package manager. This is my code to check rotation present in a video using ffmpeg.

    


    import ffmpeg 
import cv2   
import pprint 
pp = pprint.PrettyPrinter(depth=4)
def check_rotation(path_video_file):
    # this returns meta-data of the video file in form of a dictionary
    meta_dict = ffmpeg.probe(path_video_file)
    pp.pprint(meta_dict)

    # from the dictionary, meta_dict['streams'][0]['tags']['rotate'] is the key
    # we are looking for
    rotateCode = None
    if int(meta_dict['streams'][0]['tags']['rotate']) == 90:
        rotateCode = cv2.ROTATE_90_CLOCKWISE
    elif int(meta_dict['streams'][0]['tags']['rotate']) == 180:
        rotateCode = cv2.ROTATE_180
    elif int(meta_dict['streams'][0]['tags']['rotate']) == 270:
        rotateCode = cv2.ROTATE_90_COUNTERCLOCKWISE

    return rotateCode



    


    Here the meta_dict is supposed to have information about the rotation but it is not there.
printing out meta_dict gives :

    


    {'format': {'bit_rate': '18498544',
            'duration': '3.584000',
            'filename': 'video.mp4',
            'format_long_name': 'QuickTime / MOV',
            'format_name': 'mov,mp4,m4a,3gp,3g2,mj2',
            'nb_programs': 0,
            'nb_streams': 2,
            'probe_score': 100,
            'size': '8287348',
            'start_time': '0.000000',
            'tags': {'com.android.version': '11',
                     'compatible_brands': 'isommp42',
                     'creation_time': '2021-12-08T10:56:57.000000Z',
                     'major_brand': 'mp42',
                     'minor_version': '0'}},
 'streams': [{'avg_frame_rate': '990000/34997',
              'bit_rate': '18804651',
              'bits_per_raw_sample': '8',
              'chroma_location': 'left',
              'closed_captions': 0,
              'codec_long_name': 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10',
              'codec_name': 'h264',
              'codec_tag': '0x31637661',
              'codec_tag_string': 'avc1',
              'codec_type': 'video',
              'coded_height': 1080,
              'coded_width': 1920,
              'color_primaries': 'bt470bg',
              'color_range': 'pc',
              'color_space': 'bt470bg',
              'color_transfer': 'smpte170m',
              'display_aspect_ratio': '16:9',
              'disposition': {'attached_pic': 0,
                              'captions': 0,
                              'clean_effects': 0,
                              'comment': 0,
                              'default': 1,
                              'dependent': 0,
                              'descriptions': 0,
                              'dub': 0,
                              'forced': 0,
                              'hearing_impaired': 0,
                              'karaoke': 0,
                              'lyrics': 0,
                              'metadata': 0,
                              'original': 0,
                              'still_image': 0,
                              'timed_thumbnails': 0,
                              'visual_impaired': 0},
              'duration': '3.499700',
              'duration_ts': 314973,
              'extradata_size': 35,
              'field_order': 'progressive',
              'film_grain': 0,
              'has_b_frames': 0,
              'height': 1080,
              'id': '0x1',
              'index': 0,
              'is_avc': 'true',
              'level': 40,
              'nal_length_size': '4',
              'nb_frames': '99',
              'pix_fmt': 'yuvj420p',
              'profile': 'High',
              'r_frame_rate': '120/1',
              'refs': 1,
              'sample_aspect_ratio': '1:1',
              'side_data_list': [{...}],
              'start_pts': 3168,
              'start_time': '0.035200',
              'tags': {'creation_time': '2021-12-08T10:56:57.000000Z',
                       'handler_name': 'VideoHandle',
                       'language': 'eng',
                       'vendor_id': '[0][0][0][0]'},
              'time_base': '1/90000',
              'width': 1920},
             {'avg_frame_rate': '0/0',
              'bit_rate': '128986',
              'bits_per_sample': 0,
              'channel_layout': 'stereo',
              'channels': 2,
              'codec_long_name': 'AAC (Advanced Audio Coding)',
              'codec_name': 'aac',
              'codec_tag': '0x6134706d',
              'codec_tag_string': 'mp4a',
              'codec_type': 'audio',
              'disposition': {'attached_pic': 0,
                              'captions': 0,
                              'clean_effects': 0,
                              'comment': 0,
                              'default': 1,
                              'dependent': 0,
                              'descriptions': 0,
                              'dub': 0,
                              'forced': 0,
                              'hearing_impaired': 0,
                              'karaoke': 0,
                              'lyrics': 0,
                              'metadata': 0,
                              'original': 0,
                              'still_image': 0,
                              'timed_thumbnails': 0,
                              'visual_impaired': 0},
              'duration': '3.584000',
              'duration_ts': 172032,
              'extradata_size': 2,
              'id': '0x2',
              'index': 1,
              'nb_frames': '168',
              'profile': 'LC',
              'r_frame_rate': '0/0',
              'sample_fmt': 'fltp',
              'sample_rate': '48000',
              'start_pts': 0,
              'start_time': '0.000000',
              'tags': {'creation_time': '2021-12-08T10:56:57.000000Z',
                       'handler_name': 'SoundHandle',
                       'language': 'eng',
                       'vendor_id': '[0][0][0][0]'},
              'time_base': '1/48000'}]}


    


    Can someone please help me to find if rotation is present in a video ?

    


  • Unmapping memory-mapped images that are created during processing

    23 avril 2013, par user2309283

    I have a pretty big issue, although I only have the symptoms, and a theory on the cause.

    I have a C++ application under Windows 7x64 that uses system calls to FFMPEG 0.7.13 to extract frames from videos. When running, the parent application maintains a nice, predicable memory footprint in memory profilers (task manager, RAMMap) of about 2MB. I can see the individual calls to FFMPEG also come and go without incident. The trouble is, after about 100 calls to FFMPEG, and 70,000+ PNGs created (no one directory has more than 1500 pngs), the Windows memory page size raises gradually from about 2.5GB to over 7.0GB, and the system is brought to its knees. The sum of the processes for all users is no where near the reported Memory Page amount.

    I thought it might be Windows Search indexing related, so I turned off the indexing for the output directories in question using SetFileAttributes() and FILE_ATTRIBUTE_NOT_CONTENT_INDEXED, and while it seems to be working as advertised, it does not seem to combat the issue at hand. My current running theory is that all of these extracted PNGs are either fully or partially memory mapped, by FFMPEG or something else. I can also see the output PNGs under the RAMMap Physical Pages tab as standby mapped files.

    Question :
    - Is there enough information here to possibly diagnose the exact problem ?
    - Do I have a way to combat this issue ?

    Thanks in advance...

  • Matomo’s 2021 Year in Review

    13 décembre 2021, par erin — Community

    2021 has been an exciting year at Matomo !

    We’re grateful for all community members who reported feedback and suggestions, our awesome team of translators for their work, and our Premium features customers and Matomo Cloud hosting customers for their amazing support. 

    We wanted to share some quick highlights to remind you of the exciting things that happened in 2021.

    Matomo continues to develop

    In 2021 we released a number of new features including :

    The new SEO Web Vitals feature helps you track your critical website performance metrics, which are a core element of SEO best practice.

    SEO Web Vitals

    Measure the performance of your ads without giving up privacy.

    This exciting new feature supports privacy and compliance requirements by eliminating the need to put third-party advertising tracking codes on your site. Now marketers can easily import conversion data from Matomo into Google Ads, Microsoft Advertising or Yandex Ads.

    Say goodbye to spammers & bots making your data inaccurate and say hello to reliable data. 

    This powerful plugin provides our self-hosting users various options to prevent spammers and bots from making data inaccurate so you can rely on your data again.

    • In 2021 we moved from Matomo 4.1.0 to Matomo 4.6.0, with our new releases delivering over 600 updates to improve the stability and functionality of the product.

    Some of our team’s favourite updates in 2021 included :

      • Graphs now show a difference for data of “unfinished” and “complete” periods, with unfinished periods now indicated by a dashed line.
      • Improvements to Matomo Tag Manager’s debugger – now you can simply enter the URL in a form and click Debug.
      • Dashboards now show proportional evolution comparison for incomplete periods (rather than absolute values).
       
    • We also rolled out general bug fixes in Matomo Mobile 2.5 for iOS and Android.
    • Continuous improvements to Matomo for WordPress

    In other news

    If you haven’t explored our Marketplace yet, some of our most popular plugins include :

    Matomo Community working together

    MatomoCamp 2021 was a massive success thanks to our passionate community, sponsors and speakers. This virtual event was run by the Matomo Community, for the Matomo Community. 

    MatomoCamp is the first online event developed by and for the Matomo community.

    More people are choosing ethical analytics 

    We surpassed the incredible milestone of 30K active Matomo for WordPress installations.

    How can you get involved in 2022 ?

    Our mission at Matomo is :

    “To create, as a community, the leading open digital analytics platform, that gives every user full control of their data”

    Join our mission by writing about Matomo on your blog, website, Twitter, talk at conferences or let your friends and colleagues know what is Matomo

    Use the Matomo forum if you have any questions or feedback (free support), or purchase a Support Plan to get professional support and guidance.

    To improve Matomo in your language, consider contributing to translations.

    You can also support our efforts by purchasing Premium Features for Matomo or try our Matomo Cloud solution.

    Thank you for being part of our Matomo community, we wish you all the best for 2022 !