Recherche avancée

Médias (0)

Mot : - Tags -/page unique

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

Autres articles (98)

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

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

Sur d’autres sites (9488)

  • How to make Matomo GDPR compliant in 12 steps

    3 avril 2018, par InnoCraft

    Important note : this blog post has been written by digital analysts, not lawyers. The purpose of this article is to briefly show you where Matomo is entering into play within the GDPR process. This work comes from our interpretation of the UK privacy commission : ICO. It cannot be considered as professional legal advice. So as GDPR, this information is subject to change. We strongly advise you to have a look at the different privacy authorities in order to have up to date information.

    The General Data Protection Regulation (EU) 2016/679, also referred to RGPD in French, Datenschutz-Grundverordnung, DS-GVO in German, is a regulation on data protection and privacy for all individuals within the European Union. It concerns organizations worldwide dealing with EU citizens and will come into force on the 25th May 2018.

    The GDPR applies to ‘personal data’ meaning any information relating to an identifiable person who can be directly or indirectly identified in particular by reference to an identifier. It includes cookies, IP addresses, User ID, location, and any other data you may have collected.

    We will list below the 12 steps recommended by the UK privacy commissioner in order to be GDPR compliant and what you need to do for each step.

    The 12 steps of GDPR compliance according to ICO and how it fit with Matomo

    As mentioned in one of our previous blog post about GDPR, if you are not collecting any personal data with Matomo, then you are not concerned about what is written below.

    If you are processing personal data in any way, here are the 12 steps to follow along with some recommendations on how to be GDPR compliant with Matomo :

    1 – Awareness

    Make sure that people within your organization know that you are using Matomo in order to analyze traffic on the website/app. If needed, send them the link to the “What is Matomo ?” page.

    2 – Information you hold

    List all the personal data you are processing with Matomo within your record of processing activities. We are personally using the template provided by ICO which is composed of a set of 30 questions you need to answer regarding your use of Matomo. We have published an article which walks you through the list of questions specifically in the use case of Matomo Analytics. Please be aware that personal data may be also tracked in non-obvious ways for example as part of page URLs or page titles.

    3 – Communicating privacy information

    a – Add a privacy notice

    Add a privacy notice wherever you are using Matomo in order to collect personal data. Please refer to the ICO documentation in order to learn how to write a privacy notice. You can learn more in our article about creating your privacy notice for Matomo Analytics. Make sure that a privacy policy link is always available on your website or app.

    b – Add Matomo to your privacy policy page

    Add Matomo to the list of technologies you are using on your privacy policy page and add all the necessary information to it as requested in the following checklist. To learn more check out our article about Privacy policy.

    4 – Individuals’ rights

    Make sure that your Matomo installation respects all the individuals’ rights. To make it short, you will need to know the features in Matomo that you need to use to respect user rights (right of access, right of rectification, right of erasure…). These features are available starting in Matomo 3.5.0 released on May 8th : GDPR tools for Matomo (User guide).

    5 – Subject access requests

    Make sure that you are able to answer an access request from a data subject for Matomo. For example, when a person would like to access her or his personal data that you have collected about her or him, then you will need to be you able to provide her or him with this information. We recommend you design a process for this like “Who is dealing with it ?” and check that it is working. If you can answer to the nightmare letter, then you are ready. The needed features for this in Matomo will be available soon.

    6 – Lawful basis for processing personal data

    There are different lawful basis you can use under GDPR. It can be either “Legitimate interest” or “Explicit consent”. Do not forget to mention it within your privacy policy page. Read more in our article about lawful basis.

    7 – Consent

    Users should be able to remove their consent at any time. By chance, Matomo is providing a feature in order to do just that : add the opt-out feature to your privacy policy page.
    We are also offering a tool that allows you optionally to require consent before any data is tracked. This will be useful if a person should be only tracked after she or he has given explicit consent to be tracked.

    8 – Children

    If your website or app is targeted for children and you are using Matomo, extra measures will need to be taken. For example you will need to write your privacy policy even more clear and moreover getting parents consent if the child is below 13. As it is a very specific case, we strongly recommend you to follow this link for further information.

    9 – Data breaches

    As you may be collecting personal data with Matomo, you should also check your “data breach procedure” to define if a leak may have consequences on the privacy of the data subject. Please consult ICO’s website for further information.

    10 – Data Protection by Design and Data Protection Impact Assessments

    Ask yourself if you really need to process personal data within Matomo. If the data you are processing within Matomo is sensitive, we strongly recommend you to make a Data Protection Impact Assessment. A software is available from the The open source PIA software helps to carry out data protection impact assessment, by French Privacy Commissioner : CNIL.

    11 – Data Protection Officers

    If you are reading this article and you are the Data Protection Officer (DPO), you will not be concerned by this step. If that’s not the case, your duty is to provide to the DPO (if your business has a DPO) our blog post in order for her or him to ask you questions regarding your use of Matomo. Note that your DPO can also be interested in the different data that Matomo can process : “What data does Matomo track ?” (FAQ).

    12 – International

    Matomo data is hosted wherever you want. So according to the location of the data, you will need to show specific safeguard except for EU. For example regarding the USA, you will have to check if your web hosting platform is registered to the Privacy Shield : privacyshield.gov/list
    Note : our Matomo cloud infrastructure is based in France.

    That’s the end of this blog post. As GDPR is a huge topic, we will release many more blog posts in the upcoming weeks. If there are any Matomo GDPR topic related posts you would like us to write, please feel free to contact us.

    The post How to make Matomo GDPR compliant in 12 steps appeared first on Analytics Platform - Matomo.

  • FFMpeg Concat Error - What needs to be changed ?

    19 avril 2018, par Andrew Baldinger

    I have a tv episode video (let’s say episode.mp4). I also have a short, 20 second closing credit video that I want to append to various episodes (let’s say closing.mp4) The episode and closing are always Mp4, h264. The frame sizes are also the same. The audio codecs do vary, though. I would like to concat using concat demuxer to avoid having to re-encode. I tried doing this, but it gives me an error. I would like to make any necessary encoding changes to the short closing clip (so I would create multiple closing files, each matching the main episode file I want to add it to). What do I need to additionally make sure matches with the two videos to be able to use concat demuxer ? How would I edit the closing clip to match the episode ?

    Here is a probe of the ending clip :

       [STREAM]
    index=0
    codec_name=h264
    codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
    profile=High
    codec_type=video
    codec_time_base=1001/48000
    codec_tag_string=avc1
    codec_tag=0x31637661
    width=1280
    height=720
    coded_width=1280
    coded_height=720
    has_b_frames=2
    sample_aspect_ratio=1:1
    display_aspect_ratio=16:9
    pix_fmt=yuv420p
    level=31
    color_range=unknown
    color_space=unknown
    color_transfer=unknown
    color_primaries=unknown
    chroma_location=left
    field_order=unknown
    timecode=N/A
    refs=1
    is_avc=true
    nal_length_size=4
    id=N/A
    r_frame_rate=24000/1001
    avg_frame_rate=24000/1001
    time_base=1/24000
    start_pts=0
    start_time=0.000000
    duration_ts=672672
    duration=28.028000
    bit_rate=442973
    max_bit_rate=N/A
    bits_per_raw_sample=8
    nb_frames=672
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=1
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    TAG:language=eng
    TAG:handler_name=VideoHandler
    [/STREAM]
    [STREAM]
    index=1
    codec_name=aac
    codec_long_name=AAC (Advanced Audio Coding)
    profile=LC
    codec_type=audio
    codec_time_base=1/48000
    codec_tag_string=mp4a
    codec_tag=0x6134706d
    sample_fmt=fltp
    sample_rate=48000
    channels=2
    channel_layout=stereo
    bits_per_sample=0
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/48000
    start_pts=0
    start_time=0.000000
    duration_ts=1344000
    duration=28.000000
    bit_rate=128651
    max_bit_rate=128651
    bits_per_raw_sample=N/A
    nb_frames=1314
    nb_read_frames=N/A
    nb_read_packets=N/A

    Here is a probe of a sample episode :

    [STREAM]
    index=0
    codec_name=h264
    codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
    profile=High
    codec_type=video
    codec_time_base=208879/10016000
    codec_tag_string=avc1
    codec_tag=0x31637661
    width=1280
    height=718
    coded_width=1280
    coded_height=718
    has_b_frames=2
    sample_aspect_ratio=1:1
    display_aspect_ratio=640:359
    pix_fmt=yuv420p
    level=31
    color_range=unknown
    color_space=unknown
    color_transfer=unknown
    color_primaries=unknown
    chroma_location=left
    field_order=unknown
    timecode=N/A
    refs=1
    is_avc=true
    nal_length_size=4
    id=N/A
    r_frame_rate=24000/1001
    avg_frame_rate=5008000/208879
    time_base=1/16000
    start_pts=0
    start_time=0.000000
    duration_ts=40104768
    duration=2506.548000
    bit_rate=1092383
    max_bit_rate=N/A
    bits_per_raw_sample=8
    nb_frames=60096
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=1
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    TAG:language=und
    TAG:handler_name=VideoHandler
    [/STREAM]
    [STREAM]
    index=1
    codec_name=ac3
    codec_long_name=ATSC A/52A (AC-3)
    profile=unknown
    codec_type=audio
    codec_time_base=1/48000
    codec_tag_string=ac-3
    codec_tag=0x332d6361
    sample_fmt=fltp
    sample_rate=48000
    channels=2
    channel_layout=stereo
    bits_per_sample=0
    dmix_mode=-1
    ltrt_cmixlev=-1.000000
    ltrt_surmixlev=-1.000000
    loro_cmixlev=-1.000000
    loro_surmixlev=-1.000000
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/48000
    start_pts=0
    start_time=0.000000
    duration_ts=120313200
    duration=2506.525000
    bit_rate=192000
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=78329
    nb_read_frames=N/A
    nb_read_packets=N/A

    Finally, I am running Windows 10 and here is a probe on my setup :

    ffprobe version N-87327-g18821e3 Copyright (c) 2007-2017 the FFmpeg developers
     built with gcc 7.2.0 (GCC)
     configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib
     libavutil      55. 75.100 / 55. 75.100
     libavcodec     57.106.101 / 57.106.101
     libavformat    57. 82.100 / 57. 82.100
     libavdevice    57.  8.101 / 57.  8.101
     libavfilter     6.105.100 /  6.105.100
     libswscale      4.  7.103 /  4.  7.103
     libswresample   2.  8.100 /  2.  8.100
     libpostproc    54.  6.100 / 54.  6.100

    I created a version of the ending with the same screen size and audio codec as the episode. But, when I try to concat, the resulting video is much longer (1:03:00) than it should be (about 42 mins), and it freezes when played. Here is the concat :

    ffmpeg -f concat -safe 0 -i "concat.txt" -c copy 's04e06.mp4'
    ffmpeg : ffmpeg version N-87327-g18821e3 Copyright (c) 2000-2017 the FFmpeg developers
    At line:1 char:1
    + ffmpeg -f concat -safe 0 -i "concat.txt"  ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       + CategoryInfo          : NotSpecified: (ffmpeg version ...mpeg developers:String) [], RemoteException
       + FullyQualifiedErrorId : NativeCommandError

     built with gcc 7.2.0 (GCC)
     configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2
    --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r
    --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca
    --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame
    --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus
    --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame
    --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack
    --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libxml2
    --enable-libzimg --enable-lzma --enable-zlib
     libavutil      55. 75.100 / 55. 75.100
     libavcodec     57.106.101 / 57.106.101
     libavformat    57. 82.100 / 57. 82.100
     libavdevice    57.  8.101 / 57.  8.101
     libavfilter     6.105.100 /  6.105.100
     libswscale      4.  7.103 /  4.  7.103
     libswresample   2.  8.100 /  2.  8.100
     libpostproc    54.  6.100 / 54.  6.100
    [mov,mp4,m4a,3gp,3g2,mj2 @ 00000000047cb020]
    Auto-inserting h264_mp4toannexb bitstream filter
    Input #0, concat, from 'concat.txt':
     Duration: N/A, start: -0.002333, bitrate: 1284 kb/s
       Stream #0:
    0(und
    ): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x718 [SAR 1:1 DAR 640:359], 1092 kb/s
    ,
    23.98 fps,
    23.98 tbr,
    16k tbn, 47.95 tb
    c
       Metadata:
         handler_name    :
    VideoHandler
       Stream #0:
    1(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, stereo, fltp, 192 kb/s
       Metadata:
         handler_name    :
    SoundHandler
    [mp4 @ 0000000004daf380]

    track 1: codec frame size is not set
    Output #0, mp4, to 's04e06.mp4':
     Metadata:
       encoder         :
    Lavf57.82.10
    0
       Stream #0:
    0
    (und)
    : Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x718 [SAR 1:1 DAR 640:359], q=2-31, 1092 kb/s
    ,
    23.98 fps, 23.98 tbr,
    16k tbn,
    16k tbc
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, stereo, fltp, 192 kb/s
       Metadata:
         handler_name    : SoundHandler
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
    Press [q] to stop, [?] for help
    frame= 3050 fps=0.0 q=-1.0 size=   32768kB time=00:02:07.16 bitrate=2110.9kbits/s speed= 254x    
    frame= 7005 fps=6993 q=-1.0 size=   65536kB time=00:04:52.12 bitrate=1837.8kbits/s speed= 292x    
    frame=12638 fps=8414 q=-1.0 size=   99072kB time=00:08:47.04 bitrate=1539.9kbits/s speed= 351x    
    frame=17009 fps=8492 q=-1.0 size=  125440kB time=00:11:49.34 bitrate=1448.7kbits/s speed= 354x    
    frame=18981 fps=7413 q=-1.0 size=  136704kB time=00:13:11.61 bitrate=1414.7kbits/s speed= 309x    
    frame=20233 fps=6444 q=-1.0 size=  144896kB time=00:14:03.80 bitrate=1406.7kbits/s speed= 269x    
    frame=23615 fps=6421 q=-1.0 size=  165888kB time=00:16:24.89 bitrate=1379.8kbits/s speed= 268x    
    frame=25322 fps=6057 q=-1.0 size=  175360kB time=00:17:36.06 bitrate=1360.3kbits/s speed= 253x    
    frame=26957 fps=5759 q=-1.0 size=  184576kB time=00:18:44.25 bitrate=1344.9kbits/s speed= 240x    
    frame=31478 fps=6076 q=-1.0 size=  215040kB time=00:21:52.83 bitrate=1341.8kbits/s speed= 253x    
    frame=33517 fps=5900 q=-1.0 size=  235264kB time=00:23:17.88 bitrate=1378.7kbits/s speed= 246x    
    frame=34974 fps=5658 q=-1.0 size=  246272kB time=00:24:18.65 bitrate=1383.1kbits/s speed= 236x    
    frame=36987 fps=5437 q=-1.0 size=  259840kB time=00:25:42.59 bitrate=1379.9kbits/s speed= 227x    
    frame=37543 fps=5140 q=-1.0 size=  263168kB time=00:26:05.79 bitrate=1376.9kbits/s speed= 214x    
    frame=39203 fps=4982 q=-1.0 size=  273152kB time=00:27:15.04 bitrate=1368.6kbits/s speed= 208x    
    frame=45904 fps=5484 q=-1.0 size=  305408kB time=00:31:54.52 bitrate=1306.8kbits/s speed= 229x    
    frame=47996 fps=5410 q=-1.0 size=  318720kB time=00:33:21.75 bitrate=1304.3kbits/s speed= 226x    
    frame=50719 fps=5409 q=-1.0 size=  336128kB time=00:35:15.32 bitrate=1301.7kbits/s speed= 226x    
    frame=53508 fps=5409 q=-1.0 size=  354560kB time=00:37:11.65 bitrate=1301.5kbits/s speed= 226x    
    frame=57118 fps=5452 q=-1.0 size=  372736kB time=00:39:42.24 bitrate=1281.8kbits/s speed= 227x    
    frame=58440 fps=5324 q=-1.0 size=  382208kB time=00:40:37.35 bitrate=1284.6kbits/s speed= 222x    
    [mov,mp4,m4a,3gp,3g2,mj2 @ 00000000047d3640]
    Auto-inserting h264_mp4toannexb bitstream filter
    frame=60098 fps=5228 q=-1.0 size=  392960kB time=01:02:39.76 bitrate= 856.2kbits/s speed= 327x    
    frame=60746 fps=5031 q=-1.0 size=  393472kB time=01:03:20.30 bitrate= 848.2kbits/s speed= 315x    
    frame=60768 fps=4978 q=-1.0 Lsize=  397136kB time=01:03:21.67 bitrate= 855.8kbits/s speed= 311x    
    video:335753kB audio:59186kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.556209%
  • How to not process any personal data with Matomo and what it means for you

    22 avril 2018, par InnoCraft

    Disclaimer : this blog post has been written by digital analysts, not lawyers. The purpose of this article is to explain how to not process any personal data with Matomo in order to avoid going through the GDPR compliance process with Matomo analytics. This work comes from our interpretation of different sources : the official GDPR text and the UK privacy commission : ICO resources. It cannot be considered as a professional legal advice. So as GDPR, this information is subject to change. GDPR may be also known as RGPD in French, Spanish, Portuguese, Datenschutz-Grundverordnung, DS-GVO in German, Algemene verordening gegevensbescherming in Dutch, Regolamento generale sulla protezione dei dati in Italian.

    Are you looking for a way to not process any personal data with Matomo ? If the answer is yes, you are at the right place. From our understanding, if you are not processing personal data, then you shouldn’t be concerned about GDPR. Our inspiration came from this official reference :

    “The principles of data protection should therefore not apply to anonymous information, namely information which does not relate to an identified or identifiable natural person or to personal data rendered anonymous in such a manner that the data subject is not or no longer identifiable. This Regulation does not therefore concern the processing of such anonymous information, including for statistical or research purposes.“

    In this blog post we are going to see how you can configure Matomo in order to not process any personal data and what the consequences are.

    Which data is considered as personal according to GDPR ?

    From : eur-lex.europa.eu

    (1) “‘personal data’ means any information relating to an identified or identifiable natural person (‘data subject’) ; an identifiable natural person is one who can be identified, directly or indirectly, in particular by reference to an identifier such as a name, an identification number, location data, an online identifier or to one or more factors specific to the physical, physiological, genetic, mental, economic, cultural or social identity of that natural person ;”

    (30) “Natural persons may be associated with online identifiers provided by their devices, applications, tools and protocols, such as internet protocol addresses, cookie identifiers or other identifiers such as radio frequency identification tags. This may leave traces which, in particular when combined with unique identifiers and other information received by the servers, may be used to create profiles of the natural persons and identify them.”

    So according to your Matomo configuration, it may leave some traces within the following data :

    1. IP addresses
    2. Cookies identifiers
    3. Page URL or page titles
    4. User ID and Custom “personal” data
    5. Ecommerce order IDs
    6. Location
    7. Heatmaps & Session Recordings

    Let’s see each of them in more detail.

    1. IP addresses

    IP addresses can indirectly identify an individual. It can also give a good approximation of an individual’s location.

    IP addresses are therefore considered as personal data which means you need to anonymize them. To do so, a feature is available within Matomo, where you can anonymize the IP. We recommend you to anonymize at least the last two bytes :

    See our configuration guide for more information

    What are the consequences of using this feature ?

    When applying IP anonymization on two bytes, you will no longer be able to see the full IP in the UI.

    Moreover, there is a small chance that 2 different visitors with the same device and software configuration will be identified as the same visitor if the anonymised IP address is the same for both.

    2. Cookies

    It is not clear for us yet if all cookies are considered equal under GDPR. At this stage it is too early to make a definite decision.

    Did you know ? Matomo lets you optionally disable the creation of cookies by adding an extra line of code to your tracking code see below.

    See our configuration guide for more information

    What are the consequences of using this feature ?

    Matomo is using a few first party cookies, and the following cookies may hold personal data :

    • _pk_id : contains a visitor id used to identify unique visitors
    • _pk_ref : to identify from where they came from

    If Matomo cannot set cookies, it will use a technique called Fingerprint. It is based on several metadata such as the operating system, browser, browser plugins, IP address, browser language ; just to name a few to identify a unique visitor. As this feature is less accurate than the one using cookies, the number of visitors and visits will be affected.

    3. Page URLs and page titles

    URLs are not mentioned within the official GDPR text. However, we know that according to the different CMS you use, some of them may have URLs including personal identifiers.

    For example :

    As a result, you need to find a way to anonymize this data.

    There are several ways you can perform this action according to your website. If your website is adding the personal data through query parameters, you can define a rule to exclude them from Matomo.

    If the personal data are not included within query parameters, you can use the “setCustomURL” feature and write your code as follow :

    See our developer documentation for more information

    If you are also processing personal data within the title tag, you can use the following function : “setDocumentTitle”.

    What are the consequences of using this feature ?

    By anonymizing the URLs containing personal data, some of your  URLs will be grouped together.

    4. User ID and custom personal data

    User ID is a feature (a tracking code needs to be added) which allows you to identify the same user across different devices.

    A User ID needs a corresponding database in order to link a user across different devices, it can be an email, a username, a name, a random number… All those data are either direct or non direct online identifiers and are therefore under the scope of GDPR.

    It will be the same situation if you are using custom variables and/or custom dimensions in order to push personal data to the system.

    To continue using the User ID feature but not recording personal data, you can consider using a hash function which will anonymize/convert your actual User ID into something like “3jrj3j34434834urj33j3”.

    Alternatively, you can enable the feature “Anonymise User IDs”. This feature will be available starting in Matomo 3.5.0 :

    What are the consequences of using this feature ?

    Under GDPR, User ID is personal data. Anonymizing the User ID using a hash function or our built-in functionality make the User Id pseudo-anonymous, which means it can’t be easily identified to a specific user. As a result, you will still get accurate visits and unique visitors metrics, and the Visitor Profile, but without tracking the original User ID which is personal data.

    5. Ecommerce order IDs

    Order IDs are the reference number assigned to the products/services bought by your customers. As this information can be crossed with your internal database, it is considered as an online identifier and is therefore under the scope of GDPR. As for User ID, you can anonymize order IDs using our built-in functionality to Anonymise Order IDs (see section 4. about User Id).

    What are the consequences of anonymizing order ID ?

    It really depends on your former use of order IDs. If you were not using them in the past then you should not see any difference.

    6. Location

    Based on the IP address of a visitor, Matomo can detect the visitors location. Location data is problematic for privacy as this technology has become quite accurate and can detect not only the city a visitor is from, but sometimes an even more precise position of a visitor.

    In order to not leave any accurate traces, we strongly recommend you to enable the IP anonymization feature. Next, you need to enable the setting “Also use the anonymized IP address when enriching visits”. You find this setting directly below the IP anonymization. This is important as otherwise the full IP address will be used to geolocate a visitor.

    What are the consequences of anonymizing location data ?

    The more bytes you anonymize from the IP, the more anonymized your location will be. When you remove two bytes as suggested, the city and region location reports will not be as accurate. In some cases even the country may not be detected correctly anymore.

    7. Heatmaps & Session Recordings

    Heatmaps & Session Recording is a premium feature in Matomo allowing you to see where users click, hover, type and scroll. With session recordings you can then replay their actions in a video.

    Heatmaps & Session Recordings are under the scope of GDPR as they can disclose in some specific cases (for example : filling a contact form) personal data :

    To avoid this, Matomo will anonymize all keystrokes which a user enters into a form field unless you specifically whitelist a field. Many fields that could contain personal data, such as a credit card, phone number, email address, password, social security number, and more are always anonymized and not recorded.

    See our configuration guide for more information

    Note that a page may still show personal information within the page as part of regular content (not a form element). For example an address, or the profile page of a forum user. We have added a feature which allows you to set an HTML attribute “data-matomo-mask” to anonymize any personal content shown in the UI.

    What are the consequences of using this feature ?

    Mainly, you will not be able to see in plain text what people are entering into your forms.

    What should you do with past data ?

    Once more, we have to say that we are not lawyers. So do not take our answers as legal advice. From : ec.europa.eu/newsroom/article29/document.cfm ?doc_id=50053

    “For example, as the GDPR requires that a controller must be able to demonstrate that valid consent was obtained, all presumed consents of which no references are kept will automatically be below the consent standard of the GDPR and will need to be renewed.”

    Our interpretation is that, if you were previously relying on consent, unless you can demonstrate that valid consent was obtained, you need to get the consent back (which is almost impossible) or you need to anonymize or remove that data.

    To anonymize previously tracked data, we are actively working on a feature to do just that directly within Matomo. Alternatively, you may also set up the deletion of logs after a certain amount of time.

    We really hope you enjoyed reading this article. GDPR is still on the go and we are pretty sure you have a lot of questions about it. You probably would like to share our vision about it. So do not hesitate to ask us through our contact form to see how we are interpreting GDPR at Matomo and InnoCraft.

    The post How to not process any personal data with Matomo and what it means for you appeared first on Analytics Platform - Matomo.