Recherche avancée

Médias (1)

Mot : - Tags -/artwork

Autres articles (33)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Gestion de la ferme

    2 mars 2010, par

    La ferme est gérée dans son ensemble par des "super admins".
    Certains réglages peuvent être fais afin de réguler les besoins des différents canaux.
    Dans un premier temps il utilise le plugin "Gestion de mutualisation"

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

  • What is Audience Segmentation ? The 5 Main Types & Examples

    16 novembre 2023, par Erin — Analytics Tips

    The days of mass marketing with the same message for millions are long gone. Today, savvy marketers instead focus on delivering the most relevant message to the right person at the right time.

    They do this at scale by segmenting their audiences based on various data points. This isn’t an easy process because there are many types of audience segmentation. If you take the wrong approach, you risk delivering irrelevant messages to your audience — or breaking their trust with poor data management.

    In this article, we’ll break down the most common types of audience segmentation, share examples highlighting their usefulness and cover how you can segment campaigns without breaking data regulations.

    What is audience segmentation ?

    Audience segmentation is when you divide your audience into multiple smaller specific audiences based on various factors. The goal is to deliver a more targeted marketing message or to glean unique insights from analytics.

    It can be as broad as dividing a marketing campaign by location or as specific as separating audiences by their interests, hobbies and behaviour.

    Illustration of basic audience segmentation

    Audience segmentation inherently makes a lot of sense. Consider this : an urban office worker and a rural farmer have vastly different needs. By targeting your marketing efforts towards agriculture workers in rural areas, you’re honing in on a group more likely to be interested in farm equipment. 

    Audience segmentation has existed since the beginning of marketing. Advertisers used to select magazines and placements based on who typically read them. They would run a golf club ad in a golf magazine, not in the national newspaper.

    How narrow you can make your audience segments by leveraging multiple data points has changed.

    Why audience segmentation matters

    In a survey by McKinsey, 71% of consumers said they expected personalisation, and 76% get frustrated when a vendor doesn’t deliver.

    Illustrated statistics that show the importance of personalisation

    These numbers reflect expectations from consumers who have actively engaged with a brand — created an account, signed up for an email list or purchased a product.

    They expect you to take that data and give them relevant product recommendations — like a shoe polishing kit if you bought nice leather loafers.

    If you don’t do any sort of audience segmentation, you’re likely to frustrate your customers with post-sale campaigns. If, for example, you just send the same follow-up email to all customers, you’d damage many relationships. Some might ask : “What ? Why would you think I need that ?” Then they’d promptly opt out of your email marketing campaigns.

    To avoid that, you need to segment your audience so you can deliver relevant content at all stages of the customer journey.

    5 key types of audience segmentation

    To help you deliver the right content to the right person or identify crucial insights in analytics, you can use five types of audience segmentation : demographic, behavioural, psychographic, technographic and transactional.

    Diagram of the main types of audience segmentation

    Demographic segmentation 

    Demographic segmentation is when you segment a larger audience based on demographic data points like location, age or other factors.

    The most basic demographic segmentation factor is location, which is easy to leverage in marketing efforts. For example, geographic segmentation can use IP addresses and separate marketing efforts by country. 

    But more advanced demographic data points are becoming increasingly sensitive to handle. Especially in Europe, GDPR makes advanced demographics a more tentative subject. Using age, education level and employment to target marketing campaigns is possible. But you need to navigate this terrain thoughtfully and responsibly, ensuring meticulous adherence to privacy regulations.

    Potential data points :

    • Location
    • Age
    • Marital status
    • Income
    • Employment 
    • Education

    Example of effective demographic segmentation :

    A clothing brand targeting diverse locations needs to account for the varying weather conditions. In colder regions, showcasing winter collections or insulated clothing might resonate more with the audience. Conversely, in warmer climates, promoting lightweight or summer attire could be more effective. 

    Here are two ads run by North Face on Facebook and Instagram to different audiences to highlight different collections :

    Each collection is featured differently and uses a different approach with its copy and even the media. With social media ads, targeting people based on advanced demographics is simple enough — you can just single out the factors when making your campaign. But if you don’t want to rely on these data-mining companies, that doesn’t mean you have no options for segmentation.

    Consider allowing people to self-select their interests or preferences by incorporating a short survey within your email sign-up form. This simple addition can enhance engagement, decrease bounce rates, and ultimately improve conversion rates, offering valuable insights into audience preferences.

    This is a great way to segment ethically and without the need of data-mining companies.

    Behavioural segmentation

    Behavioural segmentation segments audiences based on their interaction with your website or app.

    You use various data points to segment your target audience based on their actions.

    Potential data points :

    • Page visits
    • Referral source
    • Clicks
    • Downloads
    • Video plays
    • Goal completion (e.g., signing up for a newsletter or purchasing a product)

    Example of using behavioural segmentation to improve campaign efficiency :

    One effective method involves using a web analytics tool such as Matomo to uncover patterns. By segmenting actions like specific clicks and downloads, pinpoint valuable trends—identifying actions that significantly enhance visitor conversions. 

    Example of a segmented behavioral analysis in Matomo

    For instance, if a case study video substantially boosts conversion rates, elevate its prominence to capitalise on this success.

    Then, you can set up a conditional CTA within the video player. Make it pop up after the user has watched the entire video. Use a specific form and sign them up to a specific segment for each case study. This way, you know the prospect’s ideal use case without surveying them.

    This is an example of behavioural segmentation that doesn’t rely on third-party cookies.

    Psychographic segmentation

    Psychographic segmentation is when you segment audiences based on your interpretation of their personality or preferences.

    Potential data points :

    • Social media patterns
    • Follows
    • Hobbies
    • Interests

    Example of effective psychographic segmentation :

    Here, Adidas segments its audience based on whether they like cycling or rugby. It makes no sense to show a rugby ad to someone who’s into cycling and vice versa. But to rugby athletes, the ad is very relevant.

    If you want to avoid social platforms, you can use surveys about hobbies and interests to segment your target audience in an ethical way.

    Technographic segmentation

    Technographic segmentation is when you single out specific parts of your audience based on which hardware or software they use.

    Potential data points :

    • Type of device used
    • Device model or brand
    • Browser used

    Example of segmenting by device type to improve user experience :

    Upon noticing a considerable influx of tablet users accessing their platform, a leading news outlet decided to optimise their tablet browsing experience. They overhauled the website interface, focusing on smoother navigation and better readability for tablet users. These changes offered tablet users a seamless and enjoyable reading experience tailored precisely to their device.

    Transactional segmentation

    Transactional segmentation is when you use your customers’ purchase history to better target your marketing message to their needs.

    When consumers prefer personalisation, they typically mean based on their actual transactions, not their social media profiles.

    Potential data points :

    • Average order value
    • Product categories purchased within X months
    • X days since the last purchase of a consumable product

    Example of effective transactional segmentation :

    A pet supply store identifies a segment of customers consistently purchasing cat food but not other pet products. They create targeted email campaigns offering discounts or loyalty rewards specifically for cat-related items to encourage repeat purchases within this segment.

    If you want to improve customer loyalty and increase revenue, the last thing you should do is send generic marketing emails. Relevant product recommendations or coupons are the best way to use transactional segmentation.

    B2B-specific : Firmographic segmentation

    Beyond the five main segmentation types, B2B marketers often use “firmographic” factors when segmenting their campaigns. It’s a way to segment campaigns that go beyond the considerations of the individual.

    Potential data points :

    • Company size
    • Number of employees
    • Company industry
    • Geographic location (office)

    Example of effective firmographic segmentation :

    Companies of different sizes won’t need the same solution — so segmenting leads by company size is one of the most common and effective examples of B2B audience segmentation.

    The difference here is that B2B campaigns are often segmented through manual research. With an account-based marketing approach, you start by researching your potential customers. You then separate the target audience into smaller segments (or even a one-to-one campaign).

    Start segmenting and analysing your audience more deeply with Matomo

    Segmentation is a great place to start if you want to level up your marketing efforts. Modern consumers expect to get relevant content, and you must give it to them.

    But doing so in a privacy-sensitive way is not always easy. You need the right approach to segment your customer base without alienating them or breaking regulations.

    That’s where Matomo comes in. Matomo champions privacy compliance while offering comprehensive insights and segmentation capabilities. With robust privacy controls and cookieless configuration, it ensures GDPR and other regulations are met, empowering data-driven decisions without compromising user privacy.

    Take advantage of our 21-day free trial to get insights that can help you improve your marketing strategy and better reach your target audience. No credit card required.

  • Concat failing with ffmpeg 5.0 vs ffmpeg 4.1.1

    16 avril 2022, par Woolwit

    I have ffmpeg 5.0 installed on a new Silicon M1 Mac Mini running Monterey and concat is failing with the same command that has served me well on ffmpeg 4.1.1 lo, all these many years. Anyone have an idea why this command would fail on the newer version of ffmpeg.
This is with the exact same mp4 files. The ffmpeg 4.1.1. completes the concat in less than a minute.

    


    ffmpeg -i vid1.mp4 -i vid2.mp4 -filter_complex "[0:v:0] [0:a:0] [1:v:0] [1:a:0] concat=n=2:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" output.mp4



    


    Thank you !

    


    ffmpeg 4.1.1 Info and output...

    


    $ ffmpeg -version
ffmpeg version 4.1.1 Copyright (c) 2000-2019 the FFmpeg developers
built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1.1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/include/darwin' --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom -


$ ffmpeg -i vid1.mp4 -i vid2.mp4 -filter_complex "[0:v:0] [0:a:0] [1:v:0] [1:a:0] concat=n=2:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" output.mp4
ffmpeg version 4.1.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1.1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/include/darwin' --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libsnappy --enable-libtesseract --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-videotoolbox --disable-libjack --disable-indev=jack --enable-libaom --enable-libsoxr --enable-libvidstab
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
  libavformat    58. 20.100 / 58. 20.100
  libavdevice    58.  5.100 / 58.  5.100
  libavfilter     7. 40.101 /  7. 40.101
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  3.100 /  5.  3.100
  libswresample   3.  3.100 /  3.  3.100
  libpostproc    55.  3.100 / 55.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'vid1.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.16.100
  Duration: 00:00:13.01, start: 0.000000, bitrate: 1240 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x480, 1103 kb/s, 29.97 fps, 29.97 tbr, 11988 tbn, 59.94 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'vid2.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.16.100
  Duration: 00:00:07.00, start: 0.000000, bitrate: 122 kb/s
    Stream #1:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x480 [SAR 1:1 DAR 3:2], 112 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #1:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 2 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Stream mapping:
  Stream #0:0 (h264) -> concat:in0:v0
  Stream #0:1 (aac) -> concat:in0:a0
  Stream #1:0 (h264) -> concat:in1:v0
  Stream #1:1 (aac) -> concat:in1:a0
  concat:out:v0 -> Stream #0:0 (libx264)
  concat:out:a0 -> Stream #0:1 (aac)
Press [q] to stop, [?] for help
[libx264 @ 0x7fd56881dc00] using SAR=1/1
[libx264 @ 0x7fd56881dc00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.1 Cache64
[libx264 @ 0x7fd56881dc00] profile High, level 3.0
[libx264 @ 0x7fd56881dc00] 264 - core 155 r2917 0a84d98 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.20.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 720x480 [SAR 1:1 DAR 3:2], q=-1--1, 29.97 fps, 11988 tbn, 29.97 tbc (default)
    Metadata:
      encoder         : Lavc58.35.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      encoder         : Lavc58.35.100 aac
frame=   46 fps=0.0 q=0.0 size=       0kB time=00:00:01.55 bitrate=   0.2kbits/s spframe=   64 fps= 57 q=26.0 size=       0kB time=00:00:02.15 bitrate=   0.2kbits/s sframe=   83 fps= 51 q=29.0 size=       0kB time=00:00:02.78 bitrate=   0.1kbits/s sframe=  106 fps= 49 q=26.0 size=       0kB time=00:00:03.55 bitrate=   0.1kbits/s sframe=  131 fps= 49 q=29.0 size=     256kB time=00:00:04.38 bitrate= 478.0kbits/s sframe=  155 fps= 49 q=29.0 size=     256kB time=00:00:05.20 bitrate= 403.3kbits/s sframe=  178 fps= 48 q=29.0 size=     512kB time=00:00:05.96 bitrate= 702.9kbits/s sframe=  198 fps= 47 q=26.0 size=     512kB time=00:00:06.61 bitrate= 633.9kbits/s sframe=  218 fps= 46 q=29.0 size=     512kB time=00:00:07.26 bitrate= 577.2kbits/s sframe=  238 fps= 46 q=29.0 size=     768kB time=00:00:07.96 bitrate= 790.0kbits/s sframe=  255 fps= 44 q=29.0 size=     768kB time=00:00:08.52 bitrate= 738.3kbits/s sframe=  278 fps= 45 q=26.0 size=     768kB time=00:00:09.28 bitrate= 677.4kbits/s sframe=  296 fps= 44 q=29.0 size=    1024kB time=00:00:09.89 bitrate= 848.1kbits/s sframe=  317 fps= 43 q=29.0 size=    1024kB time=00:00:10.58 bitrate= 792.3kbits/s sframe=  333 fps= 42 q=29.0 size=    1024kB time=00:00:11.12 bitrate= 754.2kbits/s sframe=  351 fps= 42 q=29.0 size=    1024kB time=00:00:11.72 bitrate= 715.4kbits/s sframe=  363 fps= 41 q=29.0 size=    1024kB time=00:00:12.14 bitrate= 690.8kbits/s sframe=  377 fps= 40 q=29.0 size=    1280kB time=00:00:12.60 bitrate= 831.7kbits/s sframe=  389 fps= 39 q=29.0 size=    1280kB time=00:00:12.95 bitrate= 809.3kbits/s sframe=  401 fps= 38 q=29.0 size=    1280kB time=00:00:13.39 bitrate= 782.7kbits/s dframe=  410 fps= 37 q=29.0 size=    1280kB time=00:00:13.72 bitrate= 764.1kbits/s dframe=  425 fps= 37 q=29.0 size=    1536kB time=00:00:14.18 bitrate= 886.9kbits/s dframe=  446 fps= 37 q=29.0 size=    1536kB time=00:00:14.90 bitrate= 844.1kbits/s dframe=  506 fps= 40 q=29.0 size=    1536kB time=00:00:16.90 bitrate= 744.4kbits/s dframe=  564 fps= 43 q=29.0 size=    1536kB time=00:00:18.83 bitrate= 668.2kbits/s dframe=  600 fps= 44 q=-1.0 Lsize=    1807kB time=00:00:20.03 bitrate= 738.9kbits/s dup=35 drop=0 speed=1.45x    
video:1580kB audio:206kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.204253%
[libx264 @ 0x7fd56881dc00] frame I:74    Avg QP:19.97  size:  9747
[libx264 @ 0x7fd56881dc00] frame P:205   Avg QP:19.82  size:  2384
[libx264 @ 0x7fd56881dc00] frame B:321   Avg QP:20.41  size:  1269
[libx264 @ 0x7fd56881dc00] consecutive B-frames: 25.8%  5.3%  9.5% 59.3%
[libx264 @ 0x7fd56881dc00] mb I  I16..4: 17.8% 79.7%  2.5%
[libx264 @ 0x7fd56881dc00] mb P  I16..4:  2.7%  5.7%  0.7%  P16..4: 17.7%  3.1%  1.2%  0.0%  0.0%    skip:68.8%
[libx264 @ 0x7fd56881dc00] mb B  I16..4:  0.3%  1.1%  0.1%  B16..8: 18.4%  1.7%  0.2%  direct: 1.6%  skip:76.5%  L0:57.0% L1:40.0% BI: 3.0%
[libx264 @ 0x7fd56881dc00] 8x8 transform intra:75.9% inter:87.2%
[libx264 @ 0x7fd56881dc00] coded y,uvDC,uvAC intra: 54.9% 8.2% 1.3% inter: 6.5% 6.0% 0.9%
[libx264 @ 0x7fd56881dc00] i16 v,h,dc,p: 44% 34% 14%  8%
[libx264 @ 0x7fd56881dc00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 22% 22% 30%  4%  5%  3%  5%  3%  5%
[libx264 @ 0x7fd56881dc00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 20% 41% 29%  1%  2%  2%  2%  1%  1%
[libx264 @ 0x7fd56881dc00] i8c dc,h,v,p: 92%  5%  1%  1%
[libx264 @ 0x7fd56881dc00] Weighted P-Frames: Y:1.5% UV:0.5%
[libx264 @ 0x7fd56881dc00] ref P L0: 58.7%  9.7% 21.6% 10.0%  0.1%
[libx264 @ 0x7fd56881dc00] ref B L0: 85.1% 11.6%  3.3%
[libx264 @ 0x7fd56881dc00] ref B L1: 95.7%  4.3%
[libx264 @ 0x7fd56881dc00] kb/s:646.32
[aac @ 0x7fd56881f400] Qavg: 23136.783
$


    


    ffmpeg 5.0 Info and output... It never completes

    


    % ffmpeg -version
ffmpeg version 5.0-tessus  https://evermeet.cx/ffmpeg/  Copyright (c) 2000-2022 the FFmpeg developers
built with Apple clang version 11.0.0 (clang-1100.0.33.17)

% ffmpeg -i vid1.mp4 -i vid2.mp4 -filter_complex "[0:v:0] [0:a:0] [1:v:0] [1:a:0] concat=n=2:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" output.mp4
ffmpeg version 5.0-tessus  https://evermeet.cx/ffmpeg/  Copyright (c) 2000-2022 the FFmpeg developers
  built with Apple clang version 11.0.0 (clang-1100.0.33.17)
  configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-version3 --pkg-config-flags=--static --disable-ffplay
  libavutil      57. 17.100 / 57. 17.100
  libavcodec     59. 18.100 / 59. 18.100
  libavformat    59. 16.100 / 59. 16.100
  libavdevice    59.  4.100 / 59.  4.100
  libavfilter     8. 24.100 /  8. 24.100
  libswscale      6.  4.100 /  6.  4.100
  libswresample   4.  3.100 /  4.  3.100
  libpostproc    56.  3.100 / 56.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'vid1.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.16.100
  Duration: 00:00:13.01, start: 0.000000, bitrate: 1240 kb/s
  Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 720x480, 1103 kb/s, 29.97 fps, 29.97 tbr, 11988 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'vid2.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.16.100
  Duration: 00:00:07.00, start: 0.000000, bitrate: 122 kb/s
  Stream #1:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 720x480 [SAR 1:1 DAR 3:2], 112 kb/s, 25 fps, 25 tbr, 12800 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
  Stream #1:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 2 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
Stream mapping:
  Stream #0:0 (h264) -> concat
  Stream #0:1 (aac) -> concat
  Stream #1:0 (h264) -> concat
  Stream #1:1 (aac) -> concat
  concat -> Stream #0:0 (libx264)
  concat -> Stream #0:1 (aac)
Press [q] to stop, [?] for help
[mp4 @ 0x7fbab280dbc0] Frame rate very high for a muxer not efficiently supporting it.
Please consider specifying a lower framerate, a different muxer or -vsync 2
[libx264 @ 0x7fbab280e840] using SAR=1/1
[libx264 @ 0x7fbab280e840] MB rate (1350000000) > level limit (16711680)
[libx264 @ 0x7fbab280e840] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
[libx264 @ 0x7fbab280e840] profile High, level 6.2, 4:2:0, 8-bit
[libx264 @ 0x7fbab280e840] 264 - core 164 r3081 19856cc - H.264/MPEG-4 AVC codec - Copyleft 2003-2021 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.16.100
  Stream #0:0: Video: h264 (avc1 / 0x31637661), yuv420p(progressive), 720x480 [SAR 1:1 DAR 3:2], q=2-31, 1000k tbn
    Metadata:
      encoder         : Lavc59.18.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
  Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s
    Metadata:
      encoder         : Lavc59.18.100 aac
frame=    1 fps=0.0 q=0.0 size=       0kB time=00:00:00.23 bitrate=   1.7kbits/sMore than 1000 frames duplicated
frame=33367 fps=843 q=33.0 size=    2048kB time=00:00:00.27 bitrate=60212.7kbitsMore than 10000 frames duplicatedx    
frame=66733 fps=841 q=33.0 size=    4352kB time=00:00:00.32 bitrate=109671.7kbitMore than 100000 frames duplicatedx    
frame=100100 fps=825 q=33.0 size=    6656kB time=00:00:00.34 bitrate=156550.4kbiframe=133467 fps=806 q=33.0 size=    8704kB time=00:00:00.39 bitrate=180634.7kbiframe=166834 fps=810 q=33.0 size=   11008kB time=00:00:00.41 bitrate=215757.8kbiframe=200200 fps=812 q=33.0 size=   13312kB time=00:00:00.46 bitrate=234824.6kbiframe=233567 fps=814 q=33.0 size=   153
...


    


  • Use ffmpeg to extract picture from m4v file

    31 octobre 2017, par Brian

    I used a program called MetaZ on my mac to tag all my video files (m4v). I am now trying to use these m4v files in Kodi which requires .nfo files and separate picture files for movie posters, etc. I want to extract the picture that is already in the m4v file.

    When I use ffprobe -show_streams, I can see that index4 is a png file (codec_name=png). How do I extract it ? I believe ffmpeg can do it, but can’t figure out how.

    Here is the output from ffprobe :

    Brians-Mac-mini:PythonScript brianjhille$ ffprobe -show_streams badwords.m4v
    ffprobe version N-88046-g0cb8369-tessus Copyright (c) 2007-2017 the FFmpeg developers
     built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
     configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libass --enable-libbluray --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzmq --enable-libzvbi --enable-version3 --pkg-config-flags=--static --disable-ffplay
     libavutil      56.  0.100 / 56.  0.100
     libavcodec     58.  0.100 / 58.  0.100
     libavformat    58.  0.100 / 58.  0.100
     libavdevice    58.  0.100 / 58.  0.100
     libavfilter     7.  0.100 /  7.  0.100
     libswscale      5.  0.100 /  5.  0.100
     libswresample   3.  0.100 /  3.  0.100
     libpostproc    55.  0.100 / 55.  0.100
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fd67b002a00] stream 0, timescale not set
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'badwords.m4v':
     Metadata:
       major_brand     : mp42
       minor_version   : 0
       compatible_brands: mp42isomavc1
       creation_time   : 2014-10-20T13:01:06.000000Z
       iTunEXTC        : mpaa|R|400|
       title           : Bad Words
       artist          : Jason Bateman, Kathryn Hahn, Allison Janney, Philip Baker Hall, Rohan Chand, Ben Falcone, Patricia Belcher, Beth Grant, Rachel Harris, Steve Witting, Greg Cromer
       date            : 2013-09-06T11:00:00Z
       track           : 0
       disc            : 0
       season_number   : 0
       episode_sort    : 0
       description     : A spelling bee loser sets out to exact revenge by finding a loophole and attempting to win as an adult.
       synopsis        : A spelling bee loser sets out to exact revenge by finding a loophole and attempting to win as an adult.
       encoder         : HandBrake 0.9.9 2013052900
       hd_video        : 0
       media_type      : 9
       genre           : Comedy
       iTunMOVI        : <?xml version="1.0" encoding="UTF-8"?>
                       :
                       : <plist version="1.0">
                       : <dict>
                       :   <key>cast</key>
                       :   <array>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Jason Bateman</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Kathryn Hahn</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Allison Janney</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Philip Baker Hall</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Rohan Chand</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Ben Falcone</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Patricia Belcher</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Beth Grant</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Rachel Harris</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Steve Witting</string>
                       :       </dict>
                       :       <dict>
                       :           <key>name</key>
                       :           <string>Greg Cromer</string>
                       :       </dict>
                       :   </array>
                       : </dict>
                       : </plist>
                       :
     Duration: 01:29:02.84, start: 0.000000, bitrate: 1339 kb/s
       Chapter #0:0: start 0.000000, end 348.214000
       Metadata:
         title           : Chapter 1
       Chapter #0:1: start 348.214000, end 676.542000
       Metadata:
         title           : Chapter 2
       Chapter #0:2: start 676.542000, end 860.058000
       Metadata:
         title           : Chapter 3
       Chapter #0:3: start 860.058000, end 1171.836000
       Metadata:
         title           : Chapter 4
       Chapter #0:4: start 1171.836000, end 1441.839000
       Metadata:
         title           : Chapter 5
       Chapter #0:5: start 1441.839000, end 1632.129000
       Metadata:
         title           : Chapter 6
       Chapter #0:6: start 1632.129000, end 1925.422000
       Metadata:
         title           : Chapter 7
       Chapter #0:7: start 1925.422000, end 2167.030000
       Metadata:
         title           : Chapter 8
       Chapter #0:8: start 2167.030000, end 2409.605000
       Metadata:
         title           : Chapter 9
       Chapter #0:9: start 2409.605000, end 2748.276000
       Metadata:
         title           : Chapter 10
       Chapter #0:10: start 2748.276000, end 2917.945000
       Metadata:
         title           : Chapter 11
       Chapter #0:11: start 2917.945000, end 3309.502000
       Metadata:
         title           : Chapter 12
       Chapter #0:12: start 3309.502000, end 3634.660000
       Metadata:
         title           : Chapter 13
       Chapter #0:13: start 3634.660000, end 3942.434000
       Metadata:
         title           : Chapter 14
       Chapter #0:14: start 3942.434000, end 4101.626000
       Metadata:
         title           : Chapter 15
       Chapter #0:15: start 4101.626000, end 4336.193000
       Metadata:
         title           : Chapter 16
       Chapter #0:16: start 4336.193000, end 4620.643000
       Metadata:
         title           : Chapter 17
       Chapter #0:17: start 4620.643000, end 4873.729000
       Metadata:
         title           : Chapter 18
       Chapter #0:18: start 4873.729000, end 5153.341000
       Metadata:
         title           : Chapter 19
       Chapter #0:19: start 5153.341000, end 5342.796000
       Metadata:
         title           : Chapter 20
       Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p(tv, smpte170m/smpte170m/bt709), 720x356 [SAR 32:27 DAR 640:267], 716 kb/s, 23.98 fps, 59.94 tbr, 90k tbn, 180k tbc (default)
       Metadata:
         creation_time   : 2014-10-20T13:01:06.000000Z
         encoder         : JVT/AVC Coding
       Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 159 kb/s (default)
       Metadata:
         creation_time   : 2014-10-20T13:01:06.000000Z
       Stream #0:2(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 448 kb/s
       Metadata:
         creation_time   : 2014-10-20T13:01:06.000000Z
       Side data:
         audio service type: main
       Stream #0:3(und): Data: bin_data (text / 0x74786574)
       Metadata:
         creation_time   : 2014-10-21T13:42:00.000000Z
       Stream #0:4: Video: png, rgb24(pc), 1400x2100, 90k tbr, 90k tbn, 90k tbc
    Unsupported codec with id 100359 for input stream 3
    [STREAM]
    index=0
    codec_name=h264
    codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
    profile=Constrained Baseline
    codec_type=video
    codec_time_base=40071281/1921695000
    codec_tag_string=avc1
    codec_tag=0x31637661
    width=720
    height=356
    coded_width=720
    coded_height=356
    has_b_frames=0
    sample_aspect_ratio=32:27
    display_aspect_ratio=640:267
    pix_fmt=yuv420p
    level=30
    color_range=tv
    color_space=smpte170m
    color_transfer=bt709
    color_primaries=smpte170m
    chroma_location=left
    field_order=unknown
    timecode=N/A
    refs=1
    is_avc=true
    nal_length_size=4
    id=N/A
    r_frame_rate=60000/1001
    avg_frame_rate=960847500/40071281
    time_base=1/90000
    start_pts=0
    start_time=0.000000
    duration_ts=480855372
    duration=5342.837467
    bit_rate=716167
    max_bit_rate=N/A
    bits_per_raw_sample=8
    nb_frames=128113
    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:creation_time=2014-10-20T13:01:06.000000Z
    TAG:language=und
    TAG:encoder=JVT/AVC Coding
    [/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=256454656
    duration=5342.805333
    bit_rate=159788
    max_bit_rate=321176
    bits_per_raw_sample=N/A
    nb_frames=250444
    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:creation_time=2014-10-20T13:01:06.000000Z
    TAG:language=eng
    [/STREAM]
    [STREAM]
    index=2
    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=6
    channel_layout=5.1(side)
    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=256453632
    duration=5342.784000
    bit_rate=448000
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=166962
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    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:creation_time=2014-10-20T13:01:06.000000Z
    TAG:language=eng
    [SIDE_DATA]
    side_data_type=Audio Service Type
    [/SIDE_DATA]
    [/STREAM]
    [STREAM]
    index=3
    codec_name=bin_data
    codec_long_name=binary data
    profile=unknown
    codec_type=data
    codec_tag_string=text
    codec_tag=0x74786574
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/1000
    start_pts=0
    start_time=0.000000
    duration_ts=5342837
    duration=5342.837000
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=20
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    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:creation_time=2014-10-21T13:42:00.000000Z
    TAG:language=und
    [/STREAM]
    [STREAM]
    index=4
    codec_name=png
    codec_long_name=PNG (Portable Network Graphics) image
    profile=unknown
    codec_type=video
    codec_time_base=0/1
    codec_tag_string=[0][0][0][0]
    codec_tag=0x0000
    width=1400
    height=2100
    coded_width=1400
    coded_height=2100
    has_b_frames=0
    sample_aspect_ratio=0:1
    display_aspect_ratio=0:1
    pix_fmt=rgb24
    level=-99
    color_range=pc
    color_space=unknown
    color_transfer=unknown
    color_primaries=unknown
    chroma_location=unspecified
    field_order=unknown
    timecode=N/A
    refs=1
    id=N/A
    r_frame_rate=90000/1
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=0
    start_time=0.000000
    duration_ts=480855372
    duration=5342.837467
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    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=1
    DISPOSITION:timed_thumbnails=0
    [/STREAM]

    Thanks. Brian