Recherche avancée

Médias (1)

Mot : - Tags -/biomaping

Autres articles (42)

  • Supporting all media types

    13 avril 2011, par

    Unlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)

  • Ajouter notes et légendes aux images

    7 février 2011, par

    Pour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
    Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
    Modification lors de l’ajout d’un média
    Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

Sur d’autres sites (6856)

  • libavformat : add RCWT closed caption muxex

    14 janvier 2024, par Marth64
    libavformat : add RCWT closed caption muxex
    

    Signed-off-by : Marth64 <marth64@proxyid.net>

    Raw Captions With Time (RCWT) is a format native to ccextractor, a commonly
    used open source tool for processing 608/708 closed caption (CC) sources.
    It can be used to archive the original, raw CC bitstream and to produce
    a source file file for later CC processing or conversion. As a result,
    it also allows for interopability with ccextractor for processing CC data
    extracted via ffmpeg. The format is simple to parse and can be used
    to retain all lines and variants of CC.

    A free specification of RCWT can be found here :
    https://github.com/CCExtractor/ccextractor/blob/master/docs/BINARY_FILE_FORMAT.TXT
    This muxer implements the specification as of 01/05/2024, which has
    been stable and unchanged for 10 years as of this writing.

    This muxer will have some nuances from the way that ccextractor muxes RCWT.
    No compatibility issues when processing the output with ccextractor
    have been observed as a result of this so far, but mileage may vary
    and outputs will not be a bit-exact match.

    Specifically, the differences are :
    (1) This muxer will identify as "FF" as the writing program identifier, so
    as to be honest about the output's origin.

    (2) ffmpeg's MPEG-1/2, H264, HEVC, etc. decoders extract closed captioning
    data differently than ccextractor from embedded SEI/user data.
    For example, DVD captioning bytes will be translated to ATSC A53 format.
    This allows ffmpeg to handle 608/708 in a consistant way downstream.
    This is a lossless conversion and the meaningful data is retained.

    (3) This muxer will not alter the extracted data except to remove invalid
    packets in between valid CC blocks. On the other hand, ccextractor
    will by default remove mid-stream padding, and add padding at the end
    of the stream (in order to convey the end time of the source video).

    • [DH] Changelog
    • [DH] doc/muxers.texi
    • [DH] libavformat/Makefile
    • [DH] libavformat/allformats.c
    • [DH] libavformat/rcwtenc.c
    • [DH] tests/fate/subtitles.mak
  • 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 :

    &#xA;

    ffmpeg -i input.mp4 -frames:v 1 out.jpg&#xA;

    &#xA;

    ffmpeg version 7.1 Copyright (c) 2000-2024 the FFmpeg developers&#xA;  built with Apple clang version 16.0.0 (clang-1600.0.26.4)&#xA;  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.1_4 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags=&#x27;-Wl,-ld_classic&#x27; --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&#xA;  libavutil      59. 39.100 / 59. 39.100&#xA;  libavcodec     61. 19.100 / 61. 19.100&#xA;  libavformat    61.  7.100 / 61.  7.100&#xA;  libavdevice    61.  3.100 / 61.  3.100&#xA;  libavfilter    10.  4.100 / 10.  4.100&#xA;  libswscale      8.  3.100 /  8.  3.100&#xA;  libswresample   5.  3.100 /  5.  3.100&#xA;  libpostproc    58.  3.100 / 58.  3.100&#xA;[hevc @ 0x134f07530] VPS 0 does not exist&#xA;[hevc @ 0x134f07530] SPS 0 does not exist.&#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;input.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : mp42&#xA;    minor_version   : 512&#xA;    compatible_brands: mp42iso2mp41&#xA;    creation_time   : 2023-09-14T19:46:05.000000Z&#xA;    encoder         : HandBrake 1.5.1 2022011000&#xA;  Duration: 00:01:26.05, start: 0.000000, bitrate: 231 kb/s&#xA;  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)&#xA;      Metadata:&#xA;        creation_time   : 2023-09-14T19:46:05.000000Z&#xA;        handler_name    : VideoHandler&#xA;        vendor_id       : [0][0][0][0]&#xA;  Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 36 kb/s (default)&#xA;      Metadata:&#xA;        creation_time   : 2023-09-14T19:46:05.000000Z&#xA;        handler_name    : Mono&#xA;        vendor_id       : [0][0][0][0]&#xA;[hevc @ 0x1358065c0] VPS 0 does not exist&#xA;[hevc @ 0x1358065c0] SPS 0 does not exist.&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (hevc (native) -> mjpeg (native))&#xA;Press [q] to stop, [?] for help&#xA;Output #0, image2, to &#x27;out.jpg&#x27;:&#xA;  Metadata:&#xA;    major_brand     : mp42&#xA;    minor_version   : 512&#xA;    compatible_brands: mp42iso2mp41&#xA;    encoder         : Lavf61.7.100&#xA;  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)&#xA;      Metadata:&#xA;        creation_time   : 2023-09-14T19:46:05.000000Z&#xA;        handler_name    : VideoHandler&#xA;        vendor_id       : [0][0][0][0]&#xA;        encoder         : Lavc61.19.100 mjpeg&#xA;      Side data:&#xA;        cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A&#xA;[image2 @ 0x134f16080] The specified filename &#x27;out.jpg&#x27; does not contain an image sequence pattern or a pattern is invalid.&#xA;[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.&#xA;[out#0/image2 @ 0x134f10480] video:5KiB audio:0KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: unknown&#xA;frame=    1 fps=0.0 q=5.1 Lsize=N/A time=00:00:00.03 bitrate=N/A speed=4.07x   &#xA;

    &#xA;

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

    &#xA;

    ffmpeg version N-118050-ga518b5540d Copyright (c) 2000-2024 the FFmpeg developers&#xA;  built with emcc (Emscripten gcc/clang-like replacement &#x2B; linker emulating GNU ld) 3.1.73 (ac676d5e437525d15df5fd46bc2c208ec6d376a3)&#xA;  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=&#x27;-O3 -flto -I/ffmpeg-wasm/build/include -pthread -msimd128&#x27; --extra-cxxflags=&#x27;-O3 -flto -I/ffmpeg-wasm/build/include -pthread -msimd128&#x27; --extra-ldflags=&#x27;-O3 -flto -I/ffmpeg-wasm/build/include -pthread -msimd128 -L/ffmpeg-wasm/build/lib&#x27; --pkg-config-flags=--static --nm=emnm --ar=emar --ranlib=emranlib --cc=emcc --cxx=em&#x2B;&#x2B; --objcc=emcc --dep-cc=emcc --enable-gpl --enable-libx264 --enable-libx265&#xA;  libavutil      59. 49.100 / 59. 49.100&#xA;  libavcodec     61. 26.100 / 61. 26.100&#xA;  libavformat    61.  9.100 / 61.  9.100&#xA;  libavdevice    61.  4.100 / 61.  4.100&#xA;  libavfilter    10.  6.101 / 10.  6.101&#xA;  libswscale      8. 12.100 /  8. 12.100&#xA;  libswresample   5.  4.100 /  5.  4.100&#xA;  libpostproc    58.  4.100 / 58.  4.100&#xA;[hevc @ 0x38d0000] VPS 0 does not exist&#xA;[hevc @ 0x38d0000] SPS 0 does not exist.&#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;input.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : mp42&#xA;    minor_version   : 512&#xA;    compatible_brands: mp42iso2mp41&#xA;    creation_time   : 2023-09-14T19:46:05.000000Z&#xA;    encoder         : HandBrake 1.5.1 2022011000&#xA;  Duration: 00:01:26.05, start: 0.000000, bitrate: 231 kb/s&#xA;  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)&#xA;    Metadata:&#xA;      creation_time   : 2023-09-14T19:46:05.000000Z&#xA;      handler_name    : VideoHandler&#xA;      vendor_id       : [0][0][0][0]&#xA;  Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 36 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2023-09-14T19:46:05.000000Z&#xA;      handler_name    : Mono&#xA;      vendor_id       : [0][0][0][0]&#xA;[hevc @ 0x38d0300] VPS 0 does not exist&#xA;[hevc @ 0x38d0300] SPS 0 does not exist.&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (hevc (native) -> mjpeg (native))&#xA;Press [q] to stop, [?] for help&#xA;[swscaler @ 0x8ca0000] Unsupported input (Not supported): fmt:yuv420p csp:bt709 prim:reserved trc:bt709 -> fmt:yuv420p csp:bt709 prim:reserved trc:bt709&#xA;[vf#0:0 @ 0x3830900] Error while filtering: Not supported&#xA;[vf#0:0 @ 0x3830900] Task finished with error code: -138 (Not supported)&#xA;[vost#0:0/mjpeg @ 0x385ae40] [enc:mjpeg @ 0x3878b80] Could not open encoder before EOF&#xA;[vf#0:0 @ 0x3830900] Terminating thread with return code -138 (Not supported)&#xA;[vost#0:0/mjpeg @ 0x385ae40] Task finished with error code: -28 (Invalid argument)&#xA;[vost#0:0/mjpeg @ 0x385ae40] Terminating thread with return code -28 (Invalid argument)&#xA;[out#0/image2 @ 0x3851580] Nothing was written into output file, because at least one of its streams received no packets.&#xA;frame=    0 fps=0.0 q=0.0 Lsize=       0KiB time=N/A bitrate=N/A speed=N/A    &#xA;Conversion failed!&#xA;Process finished with exit code -138.&#xA;

    &#xA;

    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 :

    &#xA;

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

    &#xA;

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

    &#xA;

    Any idea what the compiled ffmpeg.wasm is missing ?

    &#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.