Recherche avancée

Médias (91)

Autres articles (98)

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

  • Problèmes fréquents

    10 mars 2010, par

    PHP et safe_mode activé
    Une des principales sources de problèmes relève de la configuration de PHP et notamment de l’activation du safe_mode
    La solution consiterait à soit désactiver le safe_mode soit placer le script dans un répertoire accessible par apache pour le site

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

Sur d’autres sites (13326)

  • How to stream webcam video over RTSP using ffmpeg on Windows 10 ? [closed]

    15 mai 2024, par let me down slowly

    I am trying to stream my laptop's webcam using RTSP protocol using ffmpeg. I am trying to simulate an actual IP Camera. I have already tried different tools already including using VidGear python package, and gstreamer but could not get it working. Note : I am on Windows 10. I have tried this command :

    


    ffmpeg -f dshow -s 320x240 -rtbufsize 2147.48M -r 30 -vcodec mjpeg -i video="HD Camera" -f rtsp -rtsp_transport tcp rtsp://localhost:8554/mystream


    


    It turns on the webcam with but prints these logs to the console :

    


    ffmpeg version 7.0-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
  libavutil      59.  8.100 / 59.  8.100
  libavcodec     61.  3.100 / 61.  3.100
  libavformat    61.  1.100 / 61.  1.100
  libavdevice    61.  1.100 / 61.  1.100
  libavfilter    10.  1.100 / 10.  1.100
  libswscale      8.  1.100 /  8.  1.100
  libswresample   5.  1.100 /  5.  1.100
  libpostproc    58.  1.100 / 58.  1.100
[mjpeg @ 0000026201ae9fc0] unable to decode APP fields: Invalid data found when processing input
Input #0, dshow, from 'video=HD Camera':
  Duration: N/A, start: 1285415.793302, bitrate: N/A
  Stream #0:0: Video: mjpeg (Baseline) (MJPG / 0x47504A4D), yuvj422p(pc, bt470bg/unknown/unknown), 320x240, 30 fps, 30 tbr, 10000k tbn
Stream mapping:
  Stream #0:0 -> #0:0 (mjpeg (native) -> mpeg4 (native))
Press [q] to stop, [?] for help
[mjpeg @ 0000026201afe9c0] unable to decode APP fields: Invalid data found when processing input
[swscaler @ 0000026201b5cc40] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 00000262068c57c0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0000026201b5cc40] deprecated pixel format used, make sure you did set range correctly
    Last message repeated 1 times
[mjpeg @ 0000026201afe9c0] unable to decode APP fields: Invalid data found when processing input
    Last message repeated 8 times


    


    I tried opening rtsp://localhost:8554/mystream but it shows VLC is unable to open the MRL 'rtsp://localhost:8554/mystream'. Check the log for details.

    


    Killing the running process outputs these additional logs

    


    [out#0/rtsp @ 0000026201aeaf80] Could not write header (incorrect codec parameters ?): Immediate exit requested
[vf#0:0 @ 0000026201af4100] Error sending frames to consumers: Immediate exit requested
[vf#0:0 @ 0000026201af4100] Task finished with error code: -1414092869 (Immediate exit requested)
[vf#0:0 @ 0000026201af4100] Terminating thread with return code -1414092869 (Immediate exit requested)
[out#0/rtsp @ 0000026201aeaf80] 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
Exiting normally, received signal 2.


    


    Output of the command ffmpeg -list_devices true -f dshow -i dummy :

    


      built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
  libavutil      59.  8.100 / 59.  8.100
  libavcodec     61.  3.100 / 61.  3.100
  libavformat    61.  1.100 / 61.  1.100
  libavdevice    61.  1.100 / 61.  1.100
  libavfilter    10.  1.100 / 10.  1.100
  libswscale      8.  1.100 /  8.  1.100
  libswresample   5.  1.100 /  5.  1.100
  libpostproc    58.  1.100 / 58.  1.100
[dshow @ 00000140f18d4200] "HD Camera" (video)
[dshow @ 00000140f18d4200]   Alternative name "@device_pnp_\\?\usb#vid_05c8&pid_03ea&mi_00#6&d0a8c55&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global"
[dshow @ 00000140f18d4200] "Microphone (Realtek(R) Audio)" (audio)
[dshow @ 00000140f18d4200]   Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{06840D8D-1151-4D9C-B865-2FE01BFB9FD2}"
[in#0 @ 00000140f18ba640] Error opening input: Immediate exit requested
Error opening input file dummy.


    


    Output of the command ffmpeg -f dshow -list_options true -i video="HD Camera" :

    


      built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
  libavutil      59.  8.100 / 59.  8.100
  libavcodec     61.  3.100 / 61.  3.100
  libavformat    61.  1.100 / 61.  1.100
  libavdevice    61.  1.100 / 61.  1.100
  libavfilter    10.  1.100 / 10.  1.100
  libswscale      8.  1.100 /  8.  1.100
  libswresample   5.  1.100 /  5.  1.100
  libpostproc    58.  1.100 / 58.  1.100
[dshow @ 000002670b4c12c0] DirectShow video device options (from video devices)
[dshow @ 000002670b4c12c0]  Pin "Capture" (alternative pin name "Capture")
[dshow @ 000002670b4c12c0]   vcodec=mjpeg  min s=1280x720 fps=30 max s=1280x720 fps=30
[dshow @ 000002670b4c12c0]   vcodec=mjpeg  min s=640x480 fps=30 max s=640x480 fps=30
[dshow @ 000002670b4c12c0]   vcodec=mjpeg  min s=640x360 fps=30 max s=640x360 fps=30
[dshow @ 000002670b4c12c0]   vcodec=mjpeg  min s=352x288 fps=30 max s=352x288 fps=30
[dshow @ 000002670b4c12c0]   vcodec=mjpeg  min s=320x240 fps=30 max s=320x240 fps=30
[dshow @ 000002670b4c12c0]   vcodec=mjpeg  min s=176x144 fps=30 max s=176x144 fps=30
[dshow @ 000002670b4c12c0]   pixel_format=yuyv422  min s=1280x720 fps=10 max s=1280x720 fps=10
[dshow @ 000002670b4c12c0]   pixel_format=yuyv422  min s=640x480 fps=30 max s=640x480 fps=30
[dshow @ 000002670b4c12c0]   pixel_format=yuyv422  min s=640x360 fps=30 max s=640x360 fps=30
[dshow @ 000002670b4c12c0]   pixel_format=yuyv422  min s=352x288 fps=30 max s=352x288 fps=30
[dshow @ 000002670b4c12c0]   pixel_format=yuyv422  min s=320x240 fps=30 max s=320x240 fps=30
[dshow @ 000002670b4c12c0]   pixel_format=yuyv422  min s=176x144 fps=30 max s=176x144 fps=30
[in#0 @ 000002670b4aa200] Error opening input: Immediate exit requested
Error opening input file video=HD Camera.


    


    Please help me solve the issue or suggest a better approach.

    


  • D3D11 hardware screen recording with ffmpeg using Intel H264 QSV hardware encoding

    13 mai 2024, par Cactus

    I'm trying to screen record using ffmpeg and having it all done via hardware on my Intel integrated graphics.

    


    Specs

    


    For reference, here are my specs :

    


      

    • Windows 11 Pro Version 10.0.22631 Build 22631
    • 


    • Model : Dell Inc. OptiPlex 3090
    • 


    • Processor : 11th Gen Intel(R) Core(TM) i3-1115G4 @ 3.00GHz, 2995 Mhz, 2 Core(s), 4 Logical Processor(s)
    • 


    • Terminal : Windows Terminal using Windows Powershell
    • 


    


    In this wiki, it looked like I could use the "Windows 8+ Desktop Duplication API" to be "directly encoded by a compatible hardware encoder" — so I thought that I could use h264_qsv to encode, allowing me to record without much performance overhead costs.

    


    Attempt 1

    


    I've tried copying one of the command examples, but it didn't work :

    


    ffmpeg -init_hw_device d3d11va -filter_complex ddagrab=0 


    


    Output :

    


    ffmpeg version 2024-05-02-git-71669f2ad5-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
  libavutil      59. 16.101 / 59. 16.101
  libavcodec     61.  5.103 / 61.  5.103
  libavformat    61.  3.103 / 61.  3.103
  libavdevice    61.  2.100 / 61.  2.100
  libavfilter    10.  2.101 / 10.  2.101
  libswscale      8.  2.100 /  8.  2.100
  libswresample   5.  2.100 /  5.  2.100
  libpostproc    58.  2.100 / 58.  2.100
Stream mapping:
  ddagrab:default -> Stream #0:0 (h264_qsv)
Press [q] to stop, [?] for help
Impossible to convert between the formats supported by the filter 'Parsed_ddagrab_0' and the filter 'auto_scale_0'
[fc#0 @ 000001e4ed4393c0] Error configuring filter graph: Function not implemented
[fc#0 @ 000001e4ed4393c0] Task finished with error code: -40 (Function not implemented)
[fc#0 @ 000001e4ed4393c0] Terminating thread with return code -40 (Function not implemented)
[vost#0:0/h264_qsv @ 000001e4ed454000] Could not open encoder before EOF
[vost#0:0/h264_qsv @ 000001e4ed454000] Task finished with error code: -22 (Invalid argument)
[vost#0:0/h264_qsv @ 000001e4ed454000] Terminating thread with return code -22 (Invalid argument)
[out#0/matroska @ 000001e4ed453280] 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!


    


    Attempt 2

    


    I then tried copying one of the command examples in the linked ddagrab wiki page, but also no luck.

    


    ffmpeg -f lavfi -i ddagrab -c:v h264_qsv output.mkv


    


    Output :

    


    ffmpeg version 2024-05-02-git-71669f2ad5-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
  libavutil      59. 16.101 / 59. 16.101
  libavcodec     61.  5.103 / 61.  5.103
  libavformat    61.  3.103 / 61.  3.103
  libavdevice    61.  2.100 / 61.  2.100
  libavfilter    10.  2.101 / 10.  2.101
  libswscale      8.  2.100 /  8.  2.100
  libswresample   5.  2.100 /  5.  2.100
  libpostproc    58.  2.100 / 58.  2.100
Input #0, lavfi, from 'ddagrab':
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Video: wrapped_avframe, d3d11, 1920x1080 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 1000k tbn
File 'output.mkv' already exists. Overwrite? [y/N] y
Stream mapping:
  Stream #0:0 -> #0:0 (wrapped_avframe (native) -> h264 (h264_qsv))
Press [q] to stop, [?] for help
Impossible to convert between the formats supported by the filter 'Parsed_null_0' and the filter 'auto_scale_0'
[vf#0:0 @ 00000115e105bd40] Error reinitializing filters!
[vf#0:0 @ 00000115e105bd40] Task finished with error code: -40 (Function not implemented)
[vf#0:0 @ 00000115e105bd40] Terminating thread with return code -40 (Function not implemented)
[vost#0:0/h264_qsv @ 00000115e105aa00] Could not open encoder before EOF
[vost#0:0/h264_qsv @ 00000115e105aa00] Task finished with error code: -22 (Invalid argument)
[vost#0:0/h264_qsv @ 00000115e105aa00] Terminating thread with return code -22 (Invalid argument)
[out#0/matroska @ 00000115e1054b80] 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!


    


    My main problem is that I don't know how to use really any of these encoders and the examples I've found above don't work with me. What command should I use to screen record all with hardware acceleration on my Intel system ? I don't care about any presets or other options at the moment.

    


    Is there also a way to record audio ? When I tried to use -f dshow -i audio="Stereo Mix (Realtek(R) Audio)" by itself, which I made sure was turned on in Windows' settings and named correctly, it didn't work (is it because I'm using Bluetooth headphones that isn't connected to Realtek's system ?). Should this question be made separately than this one ?

    


  • How to Conduct a Customer Journey Analysis (Step-by-Step)

    9 mai 2024, par Erin

    Your customers are everything.

    Treat them right, and you can generate recurring revenue for years. Treat them wrong ; you’ll be spinning your wheels and dealing with churn.

    How do you give your customers the best experience possible so they want to stick around ?

    Improve their customer experience.

    How ?

    By conducting a customer journey analysis.

    When you know how your customers experience your business, you can improve it to meet and exceed customer expectations.

    In this guide, we’ll break down how the customer journey works and give you a step-by-step guide to conduct a thorough customer journey analysis so you can grow your brand.

    What is a customer journey analysis ?

    Every customer you’ve ever served went on a journey to find you.

    From the moment they first heard of you, to the point that they became a customer. 

    Everything in between is the customer journey.

    A customer journey analysis is how you track and analyse how your customers use different channels to interact with your brand.

    What is a customer journey analysis?

    Analysing your customer journey involves identifying the customer’s different touchpoints with your business so you can understand how it impacts their experience. 

    This means looking at every moment they interacted with your brand before, during and after a sale to help you gain actionable insights into their experience and improve it to reach your business objectives.

    Your customers go through specific customer touchpoints you can track. By analysing this customer journey from a bird’s eye view, you can get a clear picture of the entire customer experience.

    4 benefits of customer journey analysis

    Before we dive into the different steps involved in a customer journey analysis, let’s talk about why it’s vital to analyse the customer journey.

    By regularly analysing your customer journey, you’ll be able to improve the entire customer experience with practical insights, allowing you to :

    Understand your customers better

    What’s one key trait all successful businesses have ?

    They understand their customers.

    By analysing your customer journey regularly, you’ll gain new insights into their wants, needs, desires and behaviours, allowing you to serve them better. These insights will show you what led them to buy a product (or not).

    For example, through conducting a customer journey analysis, a company might find out that customers who come from LinkedIn are more likely to buy than those coming from Facebook.

    Find flaws in your customer journey

    Nobody wants to hear they have flaws. But the reality is your customer journey likely has a few flaws you could improve.

    By conducting customer journey analysis consistently, you’ll be able to pinpoint precisely where you’re losing prospects along the way. 

    For example, you may discover you’re losing customers through Facebook Ads. Or you may find your email strategy isn’t as good as it used to be.

    But it’s not just about the channel. It could be a transition between two channels. For example, you may have great engagement on Instagram but are not converting them into email subscribers. The issue may be that your transition between the two channels has a leak.

    Or you may find that prospects using certain devices (i.e., mobile, tablet, desktop) have lower conversions. This might be due to design and formatting issues across different devices.

    By looking closely at your customer journey and the different customer touchpoints, you’ll see issues preventing prospects from turning into leads or customers from returning to buy again as loyal customers.

    Gain insights into how you can improve your brand

    Your customer journey analysis won’t leave you with a list of problems. Instead, you’ll have a list of opportunities.

    Since you’ll be able to better understand your customers and where they’re falling off the sales funnel, you’ll have new insights into how you can improve the experience and grow your brand.

    For example, maybe you notice that your visitors are getting stuck at one stage of the customer journey and you’re trying to find out why.

    So, you leverage Matomo’s heatmaps, sessions recordings and scroll depth to find out more.

    In the case below, we can see that Matomo’s scroll map is showing that only 65% of the visitors are reaching the main call to action (to write a review). 

    Scroll depth screenshot in Matomo displaying lack of clicks to CTA button

    To try to push for higher conversions and get more reviews, we could consider moving that button higher up on the page, ideally above the fold.

    Rather than guessing what’s preventing conversions, you can use user behaviour analytics to “step in our user’s shoes” so you can optimise faster and with confidence.

    Try Matomo for Free

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

    No credit card required

    Grow your revenue

    By taking charge of your customer journey, you can implement different strategies that will help you increase your reach, gain more prospects, convert more prospects into customers and turn regulars into loyal customers.

    Using customer journey analysis will help you optimise those different touchpoints to maximise the ROI of your channels and get the most out of each marketing activity you implement.

    7 steps to conduct a customer journey analysis

    Now that you know the importance of conducting a customer journey analysis regularly, let’s dive into how to implement an analysis.

    Here are the seven steps you can take to analyse the customer journey to improve your customer experience :

    7 steps to conduct a customer journey analysis.

    1. Map out your customer journey

    Your first step to conducting an effective customer journey analysis is to map your entire customer journey.

    Customer journey mapping means looking at several factors :

    • Buying process
    • Customer actions
    • Buying emotions
    • Buying pain points
    • Solutions

    Once you have an overview of your customer journey maps, you’ll gain insights into your customers, their interests and how they interact with your brand. 

    After this, it’s time to dive into the touchpoints.

    2. Identify all the customer touchpoints 

    To improve your customer journey, you need to know every touchpoint a customer can (and does) make with your brand.

    This means taking note of every single channel and medium they use to communicate with your brand :

    • Website
    • Social media
    • Search engines (SEO)
    • Email marketing
    • Paid advertising
    • And more

    Essentially, anywhere you communicate and interact with your customers is fair game to analyse.

    If you want to analyse your entire sales funnel, you can try Matomo, a privacy-friendly web analytics tool. 

    You should make sure to split up your touchpoints into different customer journey stages :

    • Awareness
    • Consideration
    • Conversion
    • Advocacy

    Then, it’s time to move on to how customers interact on these channels.

    Try Matomo for Free

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

    No credit card required

    3. Measure how customers interact on each channel

    To understand the customer journey, you can’t just know where your customers interact with you. You end up learning how they’re interacting.

    This is only possible by measuring customer interactions.

    How ?

    By using a web analytics tool like Matomo.

    With Matomo, you can track every customer action on your website.

    This means anytime they :

    • Visit your website
    • View a web page
    • Click a link
    • Fill out a form
    • Purchase a product
    • View different media
    • And more

    You should analyse your engagement on your website, apps and other channels, like email and social media.

    4. Implement marketing attribution

    Now that you know where your customers are and how they interact, it’s time to analyse the effectiveness of each channel based on your conversion rates.

    Implementing marketing attribution (or multi-touch attribution) is a great way to do this.

    Attribution is how you determine which channels led to a conversion.

    While single-touch attribution models credit one channel for a conversion, marketing attribution gives credit to a few channels.

    For example, let’s say Bob is looking for a new bank. He sees an Instagram post and finds himself on HSBC’s website. After looking at a few web pages, he attends a webinar hosted by HSBC on financial planning and investment strategies. One week later, he gets an email from HSBC following up on the webinar. Then, he decides to sign up for HSBC’s online banking.

    Single touch attribution would attribute 100% of the conversion to email, which doesn’t show the whole picture. Marketing attribution would credit all channels : social media, website content, webinars and email.

    Matomo offers multiple attribution models. These models leverage different weighting factors, like time decay or linear, so that you can allocate credit to each touchpoint based on its impact.

    Matomo’s multi-touch attribution reports give you in-depth insights into how revenue is distributed across different channels. These detailed reports help you analyse each channel’s contribution to revenue generation so you can optimise the customer journey and improve business outcomes.

    Try Matomo for Free

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

    No credit card required

    5. Use a funnels report to find where visitors are leaving

    Once you set up your marketing attribution, it’s time to analyse where visitors are falling off.

    You can leverage Matomo funnels to find out the conversion rate at each step of the journey on your website. Funnel reports can help you see exactly where visitors are falling through the cracks so you can increase conversions.

    6. Analyse why visitors aren’t converting

    Once you can see where visitors are leaving, you can start to understand why.

    For example, let’s say you analyse your funnels report in Matomo and see your landing page is experiencing the highest level of drop-offs.

    Screenshot of Forms Overview report in Matomo's Form Analytics feature

    You can also use form analytics to find out why users aren’t converting on your landing pages – a crucial part of the customer journey.

    7. A/B test to improve the customer journey

    The final step to improve your customer journey is to conduct A/B tests. These are tests where you test one version of a landing page to see which one converts better, drives more traffic, or generates more revenue.

    For example, you could create two versions of a header on your website and drive 50% of your traffic to each version. Then, once you’ve got your winner, you can keep that as your new landing page.

    Screenshot of A/B testing report in Matomo

    Using the data from your A/B tests, you can optimise your customer journey to help convert more prospects into customers.

    Use Matomo to improve your customer journey analysis

    Now that you understand why it’s important to conduct customer journey analysis regularly and how it works, it’s time to put this into practice.

    To improve the customer journey, you need to understand what’s happening at each stage of your funnel. 

    Matomo gives you insights into your customer journey so you can improve website performance and convert more visitors into customers.

    Used by over 1 million websites, Matomo is the leading privacy-friendly web analytics solution in the world. 

    Matomo provides you with accurate, unsampled data so you understand exactly what’s going on with your website performance.

    The best part ?

    It’s easy to use and is compliant with the strictest privacy regulations.

    Try Matomo free for 21-days and start Improving your customer journey. No credit card required.