Recherche avancée

Médias (1)

Mot : - Tags -/ogg

Autres articles (7)

  • Contribute to translation

    13 avril 2011

    You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
    To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
    MediaSPIP is currently available in French and English (...)

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

  • Selection of projects using MediaSPIP

    2 mai 2011, par

    The examples below are representative elements of MediaSPIP specific uses for specific projects.
    MediaSPIP farm @ Infini
    The non profit organizationInfini develops hospitality activities, internet access point, training, realizing innovative projects in the field of information and communication technologies and Communication, and hosting of websites. It plays a unique and prominent role in the Brest (France) area, at the national level, among the half-dozen such association. Its members (...)

Sur d’autres sites (3971)

  • FFmpeg and reserved color primaries [closed]

    21 janvier, par Yoz

    I am trying to get thumbnails from a hevc video downloaded from https://github.com/stashapp/stash/issues/4124#issuecomment-1720057183 and it works with most recent ffmpeg 7.1 (installed via homebrew on mac) printing :

    


    ffmpeg -i input.mp4 -frames:v 1 out.jpg


    


    ffmpeg version 7.1 Copyright (c) 2000-2024 the FFmpeg developers
  built with Apple clang version 16.0.0 (clang-1600.0.26.4)
  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.1_4 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon
  libavutil      59. 39.100 / 59. 39.100
  libavcodec     61. 19.100 / 61. 19.100
  libavformat    61.  7.100 / 61.  7.100
  libavdevice    61.  3.100 / 61.  3.100
  libavfilter    10.  4.100 / 10.  4.100
  libswscale      8.  3.100 /  8.  3.100
  libswresample   5.  3.100 /  5.  3.100
  libpostproc    58.  3.100 / 58.  3.100
[hevc @ 0x134f07530] VPS 0 does not exist
[hevc @ 0x134f07530] SPS 0 does not exist.
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 512
    compatible_brands: mp42iso2mp41
    creation_time   : 2023-09-14T19:46:05.000000Z
    encoder         : HandBrake 1.5.1 2022011000
  Duration: 00:01:26.05, start: 0.000000, bitrate: 231 kb/s
  Stream #0:0[0x1](und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709/reserved/bt709), 648x648 [SAR 1:1 DAR 1:1], 188 kb/s, 30 fps, 30 tbr, 90k tbn (default)
      Metadata:
        creation_time   : 2023-09-14T19:46:05.000000Z
        handler_name    : VideoHandler
        vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 36 kb/s (default)
      Metadata:
        creation_time   : 2023-09-14T19:46:05.000000Z
        handler_name    : Mono
        vendor_id       : [0][0][0][0]
[hevc @ 0x1358065c0] VPS 0 does not exist
[hevc @ 0x1358065c0] SPS 0 does not exist.
Stream mapping:
  Stream #0:0 -> #0:0 (hevc (native) -> mjpeg (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'out.jpg':
  Metadata:
    major_brand     : mp42
    minor_version   : 512
    compatible_brands: mp42iso2mp41
    encoder         : Lavf61.7.100
  Stream #0:0(und): Video: mjpeg, yuv420p(pc, bt709/reserved/bt709, progressive), 648x648 [SAR 1:1 DAR 1:1], q=2-31, 200 kb/s, 30 fps, 30 tbn (default)
      Metadata:
        creation_time   : 2023-09-14T19:46:05.000000Z
        handler_name    : VideoHandler
        vendor_id       : [0][0][0][0]
        encoder         : Lavc61.19.100 mjpeg
      Side data:
        cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
[image2 @ 0x134f16080] The specified filename 'out.jpg' does not contain an image sequence pattern or a pattern is invalid.
[image2 @ 0x134f16080] Use a pattern such as %03d for an image sequence or use the -update option (with -frames:v 1 if needed) to write a single image.
[out#0/image2 @ 0x134f10480] video:5KiB audio:0KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: unknown
frame=    1 fps=0.0 q=5.1 Lsize=N/A time=00:00:00.03 bitrate=N/A speed=4.07x   


    


    however, when I use custom compiled ffmpeg.wasm it fails with :

    


    ffmpeg version N-118050-ga518b5540d Copyright (c) 2000-2024 the FFmpeg developers
  built with emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 3.1.73 (ac676d5e437525d15df5fd46bc2c208ec6d376a3)
  configuration: --target-os=none --arch=x86_32 --enable-cross-compile --enable-version3 --enable-zlib --enable-libaom --disable-encoder=libaom_av1 --enable-libopenh264 --enable-libkvazaar --enable-libvpx --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libopus --enable-libwebp --enable-libsvtav1 --enable-librubberband --disable-x86asm --disable-inline-asm --disable-stripping --disable-programs --disable-doc --disable-debug --disable-runtime-cpudetect --disable-autodetect --extra-cflags='-O3 -flto -I/ffmpeg-wasm/build/include -pthread -msimd128' --extra-cxxflags='-O3 -flto -I/ffmpeg-wasm/build/include -pthread -msimd128' --extra-ldflags='-O3 -flto -I/ffmpeg-wasm/build/include -pthread -msimd128 -L/ffmpeg-wasm/build/lib' --pkg-config-flags=--static --nm=emnm --ar=emar --ranlib=emranlib --cc=emcc --cxx=em++ --objcc=emcc --dep-cc=emcc --enable-gpl --enable-libx264 --enable-libx265
  libavutil      59. 49.100 / 59. 49.100
  libavcodec     61. 26.100 / 61. 26.100
  libavformat    61.  9.100 / 61.  9.100
  libavdevice    61.  4.100 / 61.  4.100
  libavfilter    10.  6.101 / 10.  6.101
  libswscale      8. 12.100 /  8. 12.100
  libswresample   5.  4.100 /  5.  4.100
  libpostproc    58.  4.100 / 58.  4.100
[hevc @ 0x38d0000] VPS 0 does not exist
[hevc @ 0x38d0000] SPS 0 does not exist.
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 512
    compatible_brands: mp42iso2mp41
    creation_time   : 2023-09-14T19:46:05.000000Z
    encoder         : HandBrake 1.5.1 2022011000
  Duration: 00:01:26.05, start: 0.000000, bitrate: 231 kb/s
  Stream #0:0[0x1](und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709/reserved/bt709), 648x648 [SAR 1:1 DAR 1:1], 188 kb/s, 30 fps, 30 tbr, 90k tbn (default)
    Metadata:
      creation_time   : 2023-09-14T19:46:05.000000Z
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 36 kb/s (default)
    Metadata:
      creation_time   : 2023-09-14T19:46:05.000000Z
      handler_name    : Mono
      vendor_id       : [0][0][0][0]
[hevc @ 0x38d0300] VPS 0 does not exist
[hevc @ 0x38d0300] SPS 0 does not exist.
Stream mapping:
  Stream #0:0 -> #0:0 (hevc (native) -> mjpeg (native))
Press [q] to stop, [?] for help
[swscaler @ 0x8ca0000] Unsupported input (Not supported): fmt:yuv420p csp:bt709 prim:reserved trc:bt709 -> fmt:yuv420p csp:bt709 prim:reserved trc:bt709
[vf#0:0 @ 0x3830900] Error while filtering: Not supported
[vf#0:0 @ 0x3830900] Task finished with error code: -138 (Not supported)
[vost#0:0/mjpeg @ 0x385ae40] [enc:mjpeg @ 0x3878b80] Could not open encoder before EOF
[vf#0:0 @ 0x3830900] Terminating thread with return code -138 (Not supported)
[vost#0:0/mjpeg @ 0x385ae40] Task finished with error code: -28 (Invalid argument)
[vost#0:0/mjpeg @ 0x385ae40] Terminating thread with return code -28 (Invalid argument)
[out#0/image2 @ 0x3851580] Nothing was written into output file, because at least one of its streams received no packets.
frame=    0 fps=0.0 q=0.0 Lsize=       0KiB time=N/A bitrate=N/A speed=N/A    
Conversion failed!
Process finished with exit code -138.


    


    I figured out the issue is color primaries prim:reserved, and the command can be updated to a working one by re-writing input primaries as following :

    


    ffmpeg -i input.mp4 -vf "colorspace=all=bt709:iprimaries=bt709" -frames:v 1 out.jpg


    


    However, I would like to compile ffmpeg.wasm so that it handles reserved primaries just like the one from homebrew.

    


    Any idea what the compiled ffmpeg.wasm is missing ?

    


  • FFmpeg av_dump_format showing incorrect output, but ffprobe displays correct metadata

    29 janvier, par グルグル

    I use ffmpeg 7.1 source build on windows and compilation configuration as follow :

    


    configuration:
  --toolchain=msvc
  --arch=x86_64
  --enable-x86asm
  --enable-asm
  --enable-shared
  --enable-w32threads
  --prefix=/D/build


    


    When I use av_dump_format to print metadata of test.mp3, it display the incorrect information.

    


    extern "C"&#xA;{&#xA;#include <libavformat></libavformat>avformat.h>&#xA;}&#xA;&#xA;int main()&#xA;{ &#xA;    av_log_set_level(AV_LOG_DEBUG);&#xA;&#xA;    auto url = "D:/music/test.mp3";&#xA;&#xA;    AVFormatContext* fmt;&#xA;    auto ret = avformat_open_input(&amp;fmt, url, nullptr, nullptr);&#xA;    if (ret &lt; 0)&#xA;    {&#xA;        av_log(nullptr, AV_LOG_ERROR, "Cannot open %s format : %s", url, av_err2str(ret));&#xA;        exit(EXIT_FAILURE);&#xA;    }&#xA;&#xA;    av_dump_format(fmt, 0, url, 0);&#xA;}&#xA;

    &#xA;

    output

    &#xA;

    [AVFormatContext @ 000001768E65BC40] Opening &#x27;D:/music/test.mp3&#x27; for reading&#xA;[file @ 000001768E65C180] Setting default whitelist &#x27;file,crypto,data&#x27;&#xA;[mp3 @ 000001768E65BC40] Format mp3 probed with size=4096 and score=51&#xA;id3v2 ver:4 flags:00 len:35&#xA;[mp3 @ 000001768E65BC40] pad 576 576&#xA;[mp3 @ 000001768E65BC40] Skipping 0 bytes of junk at 462.&#xA;Input #0, mp3, from &#x27;D:/music/test.mp3&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf58.76.100&#xA;  Duration: N/A, bitrate: N/A&#xA;  Stream #0:0, 0, 1/14112000: Audio: mp3, 0 channels&#xA;      Metadata:&#xA;        encoder         : Lavc58.13&#xA;

    &#xA;

    You can see the Stream info is useless.

    &#xA;

    But I use ffprobe which is built with same configuration to print metadata of test.mp3.

    &#xA;

    It's display normal.

    &#xA;

    ffprobe version 7.0.1 Copyright (c) 2007-2024 the FFmpeg developers&#xA;  built with Microsoft (R) C/C&#x2B;&#x2B; Optimizing Compiler Version 19.41.34123 for x64&#xA;  configuration: --toolchain=msvc --arch=x86_64 --enable-x86asm --enable-asm --enable-shared --enable-w32threads --prefix=/D/build&#xA;  WARNING: library configuration mismatch&#xA;  avutil      configuration: --toolchain=msvc --arch=x86_64 --enable-x86asm --enable-asm --enable-shared --enable-w32threads --disable-programs --disable-doc --disable-static --prefix=/D/build&#xA;  avcodec     configuration: --toolchain=msvc --arch=x86_64 --enable-x86asm --enable-asm --enable-shared --enable-w32threads --disable-programs --disable-doc --disable-static --prefix=/D/build&#xA;  avformat    configuration: --toolchain=msvc --arch=x86_64 --enable-x86asm --enable-asm --enable-shared --enable-w32threads --disable-programs --disable-doc --disable-static --prefix=/D/build&#xA;  avdevice    configuration: --toolchain=msvc --arch=x86_64 --enable-x86asm --enable-asm --enable-shared --enable-w32threads --disable-programs --disable-doc --disable-static --prefix=/D/build&#xA;  avfilter    configuration: --toolchain=msvc --arch=x86_64 --enable-x86asm --enable-asm --enable-shared --enable-w32threads --disable-programs --disable-doc --disable-static --prefix=/D/build&#xA;  swscale     configuration: --toolchain=msvc --arch=x86_64 --enable-x86asm --enable-asm --enable-shared --enable-w32threads --disable-programs --disable-doc --disable-static --prefix=/D/build&#xA;  swresample  configuration: --toolchain=msvc --arch=x86_64 --enable-x86asm --enable-asm --enable-shared --enable-w32threads --disable-programs --disable-doc --disable-static --prefix=/D/build&#xA;  libavutil      59.  8.100 / 59. 39.100&#xA;  libavcodec     61.  3.100 / 61. 19.100&#xA;  libavformat    61.  1.100 / 61.  7.100&#xA;  libavdevice    61.  1.100 / 61.  3.100&#xA;  libavfilter    10.  1.100 / 10.  4.100&#xA;  libswscale      8.  1.100 /  8.  3.100&#xA;  libswresample   5.  1.100 /  5.  3.100&#xA;Input #0, mp3, from &#x27;D:\music\test.mp3&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf58.76.100&#xA;  Duration: 00:05:00.12, start: 0.025057, bitrate: 128 kb/s&#xA;  Stream #0:0: Audio: mp3 (mp3float), 44100 Hz, stereo, fltp, 128 kb/s&#xA;      Metadata:&#xA;        encoder         : Lavc58.13&#xA;

    &#xA;

    Why is av_dump_format not correctly showing stream information ? How can I fix it ?

    &#xA;

  • A Beginner’s Guide to Omnichannel Analytics

    14 avril 2024, par Erin

    Linear customer journeys are as obsolete as dial-up internet and floppy disks. As a marketing manager, you know better than anyone that customers interact with your brand hundreds of times across dozens of channels before purchasing. That can make tracking them a nightmare unless you build an omnichannel analytics solution. 

    Alas, if only it were that simple. 

    Unfortunately, it’s not enough to collect data on your customers’ complex journeys just by buying an omnichannel platform. You need to generate actionable insights by using marketing attribution to tie channels to conversions. 

    This article will explain how to build a useful omnichannel analytics solution that lets you understand and improve the customer journey.

    What is omnichannel analytics ?

    Omnichannel analytics collects and analyses customer data from every touchpoint and device. The goal is to collect all this omnichannel data in one place, creating a single, real-time, unified view of your customer’s journey.

    What is omnichannel analytics

    Unfortunately, most businesses haven’t achieved this yet. As Karen Lellouche Tordjman and Marco Bertini say :

    “Despite all the buzz around the concept of omnichannel, most companies still view customer journeys as a linear sequence of standardised touchpoints within a given channel. But the future of customer engagement transforms touchpoints from nodes along a predefined distribution path to full-blown portals that can serve as points of sale or pathways to many other digital and virtual interactions. They link to chatbots, kiosks, robo-advisors, and other tools that customers — especially younger ones — want to engage with.”

    However, doing so is more important than ever — especially when consumers have over 300 digital touchpoints, and the average number of touchpoints in the B2B buyer journey is 27.

    Not only that, but customers expect personalised experiences across every platform — that’s the kind you can only create when you have access to omnichannel data.

    A diagram showing how complex customer journeys are

    What might omnichannel analytics look like in practice for an e-commerce store ?

    An online store would integrate data from channels like its website, mobile app, social media accounts, Google Ads and customer service records. This would show how customers find its brand, how they use each channel to interact with it and which channels convert the most customers. 

    This would allow the e-commerce store to tailor marketing channels to customers’ needs. For instance, they could focus social media use on product discovery and customer support. Google Ads campaigns could target the best-converting products. While all this is happening, the store could also ensure every channel looks the same and delivers the same experience. 

    What are the benefits of omnichannel analytics ?

    Why go to all the trouble of creating a comprehensive view of the customer’s experience ? Because you stand to gain some pretty significant benefits when implementing omnichannel analytics.

    What are the benefits of omnichannel analytics?

    Understand the customer journey

    You want to understand how your customers behave, right ? No other method will allow you to fully understand your customer journey the way omnichannel analytics does. 

    It doesn’t matter how customers engage with your brand — whether that’s your website, app, social media profiles or physical stores — omnichannel analytics capture every interaction.

    With this 360-degree view of your customers, it’s easy to understand how they move between channels, where they encounter issues and what bottlenecks prevent them from converting. 

    Deliver better personalisation

    We don’t have to tell you that personalisation matters. But do you know just how important it is ? Since 56% of customers will become repeat buyers after a personalised experience, delivering them as often as possible is critical. 

    Omnichannel analytics helps in your quest for personalisation by highlighting the individual preferences of customer segments. For example, e-commerce stores can use omnichannel analytics to understand how shoppers behave across different devices and tailor their offers accordingly. 

    Upgrade the customer experience

    Omnichannel analytics gives you the insights to improve every aspect of the customer experience. 

    For starters, you can ensure a consistent brand experience across all your top channels by making sure they look and behave the same.

    Then, you can use omnichannel insights to tailor each channel to your customers’ requirements. For example, most people interacting with your brand on social media may seek support. Knowing that you can create dedicated support accounts to assist users. 

    Improve marketing campaigns

    Which marketing campaigns or traffic sources convert the most customers ? How can you improve these campaigns ? Omnichannel analytics has the answers. 

    When you implement omnichannel analytics you automatically track the performance of every marketing channel by attributing each conversion to one or more traffic sources. This lets you see whether Google Ads bring in more customers than your SEO efforts. Or whether social media ads are the most profitable acquisition channel. 

    Armed with this information, you can improve your marketing efforts — either by focusing on your profitable channels or rectifying problems that stop less profitable channels from converting.

    What are the challenges of omnichannel analytics ?

    There are three challenges when implementing an omnichannel analytics solution :

    What are the challenges of omnichannel analytics?
    • Complex customer journeys : Customer journeys aren’t linear and can be incredibly difficult to track. 
    • Regulatory and privacy issues : When you start gathering customer data, you quickly come up against consumer privacy laws. 
    • No underlying goal : There has to be a reason to go to all this effort, but brands don’t always have goals in mind before they start. 

    You can’t do anything about the first challenge. 

    After all, your customer journey will almost never be linear. And isn’t the point of implementing an omnichannel solution to understand these complex journeys in the first place ? Once you set up omnichannel analytics, these journeys will be much easier to decipher. 

    As for the other two :

    Using the right software that respects user privacy and complies with all major privacy laws will avoid regulatory issues. Take Matomo, for instance. Our software was designed with privacy in mind and is configured to follow the strictest privacy laws, such as GDPR. 

    Tying omnichannel analytics to marketing attribution will solve the final challenge by giving your omnichannel efforts a goal. When you tie omnichannel analytics to your marketing efforts, you aren’t just getting a 360-degree view of your customer journey for the sake of it. You are getting that view to improve your marketing efforts and increase sales.

    Try Matomo for Free

    Get the web insights you need, without compromising data accuracy.

    No credit card required

    How to set up an omnichannel analytics solution

    Want to set up a seamless analytical environment that incorporates data from every possible source ? Follow these five steps :

    Choose one or more analytics providers

    You can use several tools to build an omnichannel analytics solution. These include web and app analytics tools, customer data platforms that centralise first-party data and business intelligence tools (typically used for visualisation). 

    Which tools you use will depend on your goals and your budget — the loftier your ambitions and the higher your budget, the more tools you can use. 

    Ideally, you should use as few tools as possible to capture your data. Most teams won’t need business intelligence platforms, for example. However, you may or may not need both an analytics platform and a customer data platform. Your decision will depend on how many channels your customers use and how well your analytics tool tracks everything.

    If it can capture web and app usage while integrating with third-party platforms like your back-end e-commerce platform, then it’s probably enough.

    Collect accurate data at every touchpoint 

    Your omnichannel analytics efforts hinge on the quantity and quality of data you can collect. You want to gather data from every touchpoint possible and store that data in as few places as possible. That’s why choosing as few tools as possible in the step above is so important. 

    So, where should you start ? Common data sources include :

    • Your website
    • Apps (iOS and Android)
    • Social media profiles
    • ERPs
    • PoS systems

    At the same time, make sure you’re tracking all relevant metrics. Revenue, customer engagement and conversion-focused metrics like conversion rate, dwell time, cart abandonment rate and churn rate are particularly important. 

    Set up marketing attribution

    Setting up marketing attribution (also known as multi-touch attribution) is essential to tie omnichannel data to business goals. It’s the only way to know exactly how valuable each marketing channel is and where each customer comes from. 

    You’ll want to use multi-touch attribution, given you have data from across the customer journey.

    Image of six different attribution models

    Multi-touch attribution models can include (but are not limited to) :

    • Linear : where each touchpoint is given equal weighting
    • Time decay : where touchpoints are more valuable the nearer they are to conversion
    • Position-based : where the first and last touch points are more valuable than all the others. 

    You don’t have to use just one of the models above, however. One of the benefits of using a web analytics tool like Matomo is that you can choose between different attribution models and compare them.

    Try Matomo for Free

    Get the web insights you need, without compromising data accuracy.

    No credit card required

    Create reports that help you visualise data

    Dashboards are your friend here. They’ll let you see KPIs at a glance, allowing you to keep track of day-to-day changes in your customer journey. Ideally, you’ll want a platform that lets you customise dashboard widgets so only relevant KPIs are shown. 

    A custom graph created in Matomo

    Setting up standard and custom reports is also important. Custom reports allow you to choose metrics and dimensions that align with your goals. They will also allow you to present your data most meaningfully to your team, increasing the likelihood they act upon insights. 

    Analyse data and take action

    Now that you have customer journey data at your fingertips, it’s time to analyse it. After all, there’s no point in implementing an omnichannel analytics solution if you aren’t going to take action. 

    If you’re unsure where to start, re-read the benefits we listed at the start of this article. You could use your omnichannel insights to improve your marketing campaigns by doubling down on the channels that bring in the best customers.

    Or you could identify (and fix) bottlenecks in the customer journey so customers are less likely to fall out of your funnel between certain channels. 

    Just make sure you take action based on your data alone.

    Make the most of omnichannel analytics with Matomo

    A comprehensive web and app analytics platform is vital to any omnichannel analytics strategy. 

    But not just any solution will do. When privacy regulations impede an omnichannel analytics solution, you need a platform to capture accurate data without breaking privacy laws or your users’ trust. 

    That’s where Matomo comes in. Our privacy-friendly web analytics platform ensures accurate tracking of web traffic while keeping you compliant with even the strictest regulations. Moreover, our range of APIs and SDKs makes it easy to track interactions from all your digital products (website, apps, e-commerce back-ends, etc.) in one place. 

    Try Matomo for free for 21 days. No credit card required.