Recherche avancée

Médias (1)

Mot : - Tags -/berlin

Autres articles (93)

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

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • Les notifications de la ferme

    1er décembre 2010, par

    Afin d’assurer une gestion correcte de la ferme, il est nécessaire de notifier plusieurs choses lors d’actions spécifiques à la fois à l’utilisateur mais également à l’ensemble des administrateurs de la ferme.
    Les notifications de changement de statut
    Lors d’un changement de statut d’une instance, l’ensemble des administrateurs de la ferme doivent être notifiés de cette modification ainsi que l’utilisateur administrateur de l’instance.
    À la demande d’un canal
    Passage au statut "publie"
    Passage au (...)

Sur d’autres sites (6819)

  • Saying Goodbye To Old Machines

    1er décembre 2014, par Multimedia Mike — General, powerpc, via

    I recently sent a few old machines off for recycling. Both had relevance to the early days of the FATE testing effort. As is my custom, I photographed them (poorly, of course).

    First, there’s the PowerPC-based Mac Mini I procured thanks to a Craigslist ad in late 2006. I had plans to develop automated FFmpeg building and testing and was already looking ahead toward testing multiple CPU architectures. Again, this was 2006 and PowerPC wasn’t completely on the outs yet– although Apple’s MacTel transition was in full swing, the entire new generation of video game consoles was based on PowerPC.


    PPC Mac Mini pieces

    Click for larger image


    I remember trying to find a Mac Mini PPC on Craigslist. Many were to be found, but all asked more than the price of even a new Mac Mini Intel, always because the seller was leaving all of last year’s applications and perhaps including a monitor, neither of which I needed. Fortunately, I found this bare Mac Mini. Also fortunate was the fact that it was far easier to install Linux on it than the first PowerPC machine I owned.

    After FATE operation transitioned away from me, I still kept the machine in service as an edge server and automated backup machine. That is, until the hard drive failed on reboot one day. Thus, when it was finally time to recycle the computer, I felt it necessary to disassemble the machine and remove the hard drive for possible salvage and then for destruction.

    If you’ve ever attempted to upgrade or otherwise service this style of Mac Mini, you will no doubt recognize the pictured paint scraper tool as standard kit. I have had that tool since I first endeavored to upgrade the RAM to 1 GB from the standard 1/2 GB. Performing such activities on a Mac Mini is tedious, but only if you care about putting it back together afterwards.

    The next machine is a bit older. I put it together nearly a decade ago, early in 2005. This machine’s original duty was “download agent”– this would be more specifically called a BitTorrent machine in modern tech parlance. Back then, I placed it on someone else’s woefully underutilized home broadband connection (with their permission, of course) when I was too cheap to upgrade from dialup.


    VIA small form factor front

    Click for larger image


    This is a small form factor system from VIA that was clearly designed with home theater PC (HTPC) use cases in mind. It has a VIA C3 x86-compatible CPU (according to my notes, Centaur VIA Samuel 2 stepping 03, flags : fpu de tsc msr cx8 mtrr pge mmx 3dnow) and 128 MB of RAM (initially ; I upgraded it to 512 MB some years later, just for the sake of doing it). And then there was the 120 GB PATA HD for all that downloaded goodness.


    VIA machine small form factor inside

    Click for larger image


    I have specific memories of a time when my main computer at home wasn’t working correctly for one reason or another. Instead, I logged into this machine remotely via SSH to make several optimizations and fixes on FFmpeg’s VP3/Theora video decoder, all from the terminal, without being able to see the decoded images with my own eyes (which is why I insist that even blind people could work on video codecs).

    By the time I got my own broadband, I had become inspired to attempt the automated build and test system for FFmpeg. This was the machine I used for prototyping early brainstorms of FATE. By the time I put a basic build/test system into place in early 2008, I had much faster computers that could build and test the project– obvious limitation of this machine is that it could take at least 1/2 hour to build the entire codebase, and that was the project from 8 years ago.

    So the machine got stuffed in a closet somewhere along the line. The next time I pulled it out was in 2010 when I wanted to toy with Dreamcast programming once more (the machine appears in one of the photos in this post). This was the only machine I still owned which still had an RS-232 serial port (I didn’t know much about USB serial converters yet), plus it still had a bunch of pre-compiled DC homebrew binaries (I was having trouble getting the toolchain to work right).

    The next time I dusted off this machine was late last year when I was trying some experiments with the Microsoft Xbox’s IDE drive (a photo in that post also shows the machine ; this thing shows up a lot on this blog). The VIA machine was the only machine I still owned which had 40-pin IDE connectors which was crucial to my experiment.

    At this point, I was trying to make the machine more useful which meant replacing the ancient Gentoo Linux distribution as well as simply interacting with it via a keyboard and mouse. I have a long Evernote entry documenting a comedy of errors revolving around this little box. The interaction troubles were due to the fact that I didn’t have any PS/2 keyboards left and I couldn’t make a USB keyboard work with it. Diego was able to explain that I needed to flip a bit in the BIOS to address this which worked. As for upgrading the OS, I tried numerous Linux distributions large and small, mostly focusing on the small. None worked. I eventually learned that, while I was trying to use i686 distributions, this machine did not actually qualify as an i686 CPU ; installations usually booted but failed because the default kernel required the cmov instruction. I was advised to try i386 distros instead. My notes don’t indicate whether I had any luck on this front before I gave up and moved on.

    I just made the connection that this VIA machine has two 40-pin IDE connectors which means that the thing was technically capable of supporting up to 4 IDE devices. Obviously, the computer couldn’t really accommodate that in terms of space or power. When I wanted to try installing a new OS, I needed take off the top and connect a rather bulky IDE CD-ROM drive. This computer’s casing was supposed to be able to support a slimline optical drive (perhaps like the type found in laptops), but I could never quite visualize how that was supposed to work, space-wise. When I disassembled the PowerPC Mac Mini, I realized I might be able to repurpose that machines optical drive for this computer. Obviously, I thought better of trying since both machines are off to the recycle pile.

    I would still like to work on the Xbox project a bit more, but I procured a different, unused, much more powerful yet still old computer that has a motherboard with 1 PATA connector in addition to 6 SATA connectors. If I ever get around to toying with Linux kernel development, this should be a much more appropriate platform to use.

    I thought about turning this machine into an old Windows XP (and lower, down to Windows 3.1) gaming platform ; the capabilities of the machine would probably be perfect for a huge portion of my Windows game collection. But I think the lack of an optical drive renders this idea intractable. External USB drives are likely out of the question since there is very little chance that this motherboard featured USB 2.0 (the specs don’t mention 2.0, so the USB ports are probably 1.1).

    So it is with fond memories that I send off both machines, sans hard drives, to the recycle pile. I’m still deciding on an appropriate course of action for failed hard drives, though.

  • FFMPEG output (Images > Video) is unplayable

    23 décembre 2014, par jgads

    I’m using FFMPEG to make a video slideshow from a group of images on Android. The process completes successfully and the output file is the correct/expected size (or the same as what is reported in FFMPEG’s ’progress’), but the video does not play on any Android video player (MXplayer, VLC, stock). The video players show a perpetual loading circle and never actually launch. MXplayer can see the file and generate a thumbnail but not actually play it. Here is the command :

    ffmpeg -f image2 -re -r 1 -i
    /storage/emulated/0/Pictures/phototest/%d.jpg -vcodec libx264 -f mp4
    -r 24 -preset : ultrafast -an -threads 4 -b 4000k -mbd rd -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 300 -y -pix_fmt yuv420p /storage/emulated/0/Pictures/phototest/result1.mp4

    Here’s the output via Android Logcat :

    12-23 12:59:49.890  12665-12665/com.company.example I/FFmpeg﹕ Loading FFmpeg for armv7-neon CPU
    12-23 12:59:50.210  12665-12665/com.company.example E/FFMPEG﹕ Success loading ffmpeg
    12-23 12:59:54.420  12665-12665/com.company.example E/FFMPEG﹕ Started.
    12-23 12:59:54.445  12665-12799/com.company.example D/FFmpeg﹕ Running publishing updates method
    12-23 12:59:54.465  12665-12665/com.company.example E/FFMPEG﹕ Progress: ffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
    12-23 12:59:54.465  12665-12665/com.company.example E/FFMPEG﹕ Progress:   built on Oct  7 2014 15:08:46 with gcc 4.8 (GCC)
    12-23 12:59:54.465  12665-12665/com.company.example E/FFMPEG﹕ Progress:   configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
    12-23 12:59:54.465  12665-12665/com.company.example E/FFMPEG﹕ Progress:   libavutil      54.  7.100 / 54.  7.100
    12-23 12:59:54.465  12665-12665/com.company.example E/FFMPEG﹕ Progress:   libavcodec     56.  1.100 / 56.  1.100
    12-23 12:59:54.470  12665-12665/com.company.example E/FFMPEG﹕ Progress:   libavformat    56.  4.101 / 56.  4.101
    12-23 12:59:54.470  12665-12665/com.company.example E/FFMPEG﹕ Progress:   libavdevice    56.  0.100 / 56.  0.100
    12-23 12:59:54.470  12665-12665/com.company.example E/FFMPEG﹕ Progress:   libavfilter     5.  1.100 /  5.  1.100
    12-23 12:59:54.470  12665-12665/com.company.example E/FFMPEG﹕ Progress:   libswscale      3.  0.100 /  3.  0.100
    12-23 12:59:54.470  12665-12665/com.company.example E/FFMPEG﹕ Progress:   libswresample   1.  1.100 /  1.  1.100
    12-23 12:59:54.470  12665-12665/com.company.example E/FFMPEG﹕ Progress:   libpostproc    53.  0.100 / 53.  0.100
    12-23 12:59:54.655  12665-12665/com.company.example E/FFMPEG﹕ Progress: Input #0, image2, from '/storage/emulated/0/Pictures/phototest/%d.jpg':
    12-23 12:59:54.655  12665-12665/com.company.example E/FFMPEG﹕ Progress:   Duration: 00:00:28.00, start: 0.000000, bitrate: N/A
    12-23 12:59:54.655  12665-12665/com.company.example E/FFMPEG﹕ Progress:     Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg), 2528x1856 [SAR 1:1 DAR 79:58], 1 fps, 1 tbr, 1 tbn, 1 tbc
    12-23 12:59:54.655  12665-12665/com.company.example E/FFMPEG﹕ Progress: Please use -b:a or -b:v, -b is ambiguous
    12-23 12:59:54.665  12665-12665/com.company.example E/FFMPEG﹕ Progress: [swscaler @ 0x2b3f7990] deprecated pixel format used, make sure you did set range correctly
    12-23 12:59:54.670  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] using SAR=1/1
    12-23 12:59:54.685  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] using cpu capabilities: none!
    12-23 12:59:54.755  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] profile Constrained Baseline, level 5.0
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=0 trellis=2 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=300 keyint_min=24 scenecut=0 intra_refresh=0 rc=abr mbtree=0 bitrate=4000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress: Output #0, mp4, to '/storage/emulated/0/Pictures/phototest/result1.mp4':
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress:   Metadata:
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress:     encoder         : Lavf56.4.101
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress:     Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 2528x1856 [SAR 1:1 DAR 79:58], q=-1--1, 4000 kb/s, 24 fps, 12288 tbn, 24 tbc
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress:     Metadata:
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress:       encoder         : Lavc56.1.100 libx264
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream mapping:
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress:   Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
    12-23 12:59:54.760  12665-12665/com.company.example E/FFMPEG﹕ Progress: Press [q] to stop, [?] for help
    12-23 13:00:03.905  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=   49 fps= 11 q=17.0 size=     840kB time=00:00:01.83 bitrate=3752.6kbits/s dup=46 drop=0
    12-23 13:00:11.185  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=   73 fps=8.0 q=17.0 size=    1397kB time=00:00:02.83 bitrate=4039.0kbits/s dup=69 drop=0
    12-23 13:00:17.615  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=   97 fps=5.9 q=17.0 size=    1931kB time=00:00:03.83 bitrate=4126.8kbits/s dup=92 drop=0
    12-23 13:00:22.545  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  121 fps=5.3 q=17.0 size=    2496kB time=00:00:04.83 bitrate=4229.6kbits/s dup=115 drop=0
    12-23 13:00:27.630  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  145 fps=5.2 q=17.0 size=    3089kB time=00:00:05.83 bitrate=4338.5kbits/s dup=138 drop=0
    12-23 13:00:33.005  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  169 fps=5.1 q=17.0 size=    3702kB time=00:00:06.83 bitrate=4437.9kbits/s dup=161 drop=0
    12-23 13:00:37.840  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  193 fps=5.0 q=18.0 size=    4316kB time=00:00:07.83 bitrate=4514.1kbits/s dup=184 drop=0
    12-23 13:00:43.345  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  217 fps=5.0 q=18.0 size=    4848kB time=00:00:08.83 bitrate=4495.6kbits/s dup=207 drop=0
    12-23 13:00:48.155  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  241 fps=5.0 q=18.0 size=    5304kB time=00:00:09.83 bitrate=4418.5kbits/s dup=230 drop=0
    12-23 13:00:52.930  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  265 fps=5.0 q=19.0 size=    5874kB time=00:00:10.83 bitrate=4441.8kbits/s dup=253 drop=0
    12-23 13:00:57.210  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  289 fps=5.0 q=18.0 size=    6205kB time=00:00:11.83 bitrate=4295.9kbits/s dup=276 drop=0
    12-23 13:01:01.415  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  313 fps=5.0 q=18.0 size=    6747kB time=00:00:12.83 bitrate=4307.0kbits/s dup=299 drop=0
    12-23 13:01:05.315  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  337 fps=5.1 q=18.0 size=    7126kB time=00:00:13.83 bitrate=4220.0kbits/s dup=322 drop=0
    12-23 13:01:09.935  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  361 fps=5.1 q=17.0 size=    7522kB time=00:00:14.83 bitrate=4153.9kbits/s dup=345 drop=0
    12-23 13:01:14.755  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  385 fps=5.1 q=18.0 size=    8072kB time=00:00:15.83 bitrate=4176.2kbits/s dup=368 drop=0
    12-23 13:01:19.505  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  409 fps=5.1 q=18.0 size=    8618kB time=00:00:16.83 bitrate=4193.9kbits/s dup=391 drop=0
    12-23 13:01:23.630  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  433 fps=5.1 q=17.0 size=    9074kB time=00:00:17.83 bitrate=4168.4kbits/s dup=414 drop=0
    12-23 13:01:27.580  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  457 fps=5.1 q=17.0 size=    9423kB time=00:00:18.83 bitrate=4098.7kbits/s dup=437 drop=0
    12-23 13:01:32.210  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  481 fps=5.2 q=17.0 size=    9908kB time=00:00:19.83 bitrate=4092.4kbits/s dup=460 drop=0
    12-23 13:01:36.140  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  505 fps=5.2 q=16.0 size=   10238kB time=00:00:20.83 bitrate=4025.6kbits/s dup=483 drop=0
    12-23 13:01:41.165  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  529 fps=5.2 q=16.0 size=   10758kB time=00:00:21.83 bitrate=4036.4kbits/s dup=506 drop=0
    12-23 13:01:46.065  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  553 fps=5.2 q=16.0 size=   11214kB time=00:00:22.83 bitrate=4023.2kbits/s dup=529 drop=0
    12-23 13:01:51.290  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  577 fps=5.2 q=16.0 size=   11836kB time=00:00:23.83 bitrate=4068.4kbits/s dup=552 drop=0
    12-23 13:01:57.560  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  601 fps=5.2 q=17.0 size=   12537kB time=00:00:24.83 bitrate=4135.6kbits/s dup=575 drop=0
    12-23 13:02:02.735  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  625 fps=5.1 q=18.0 size=   13864kB time=00:00:25.83 bitrate=4396.6kbits/s dup=598 drop=0
    12-23 13:02:06.810  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  649 fps=5.1 q=18.0 size=   14322kB time=00:00:26.83 bitrate=4372.3kbits/s dup=621 drop=0
    12-23 13:02:06.815  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  649 fps=4.9 q=18.0 size=   14322kB time=00:00:26.83 bitrate=4372.3kbits/s dup=621 drop=0
    12-23 13:02:07.355  12665-12665/com.company.example E/FFMPEG﹕ Progress: frame=  649 fps=4.9 q=-1.0 Lsize=   14349kB time=00:00:27.04 bitrate=4346.9kbits/s dup=621 drop=0
    12-23 13:02:07.355  12665-12665/com.company.example E/FFMPEG﹕ Progress: video:14345kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.024813%
    12-23 13:02:07.360  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] frame I:3     Avg QP:21.67  size:383361
    12-23 13:02:07.360  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] frame P:646   Avg QP:18.87  size: 20958
    12-23 13:02:07.360  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] mb I  I16..4: 100.0%  0.0%  0.0%
    12-23 13:02:07.360  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] mb P  I16..4:  4.4%  0.0%  0.0%  P16..4: 19.5%  0.0%  0.0%  0.0%  0.0%    skip:76.0%
    12-23 13:02:07.360  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] final ratefactor: 26.82
    12-23 13:02:07.370  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] coded y,uvDC,uvAC intra: 42.8% 45.6% 9.2% inter: 3.4% 16.7% 0.1%
    12-23 13:02:07.370  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] i16 v,h,dc,p: 36% 24% 22% 19%
    12-23 13:02:07.370  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] i8c dc,h,v,p: 51% 22% 19%  7%
    12-23 13:02:07.370  12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] kb/s:4345.62
    12-23 13:02:07.400  12665-12665/com.company.example E/FFMPEG﹕ Success: ffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
    built on Oct  7 2014 15:08:46 with gcc 4.8 (GCC)
    configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
    libavutil      54.  7.100 / 54.  7.100
    libavcodec     56.  1.100 / 56.  1.100
    libavformat    56.  4.101 / 56.  4.101
    libavdevice    56.  0.100 / 56.  0.100
    libavfilter     5.  1.100 /  5.  1.100
    libswscale      3.  0.100 /  3.  0.100
    libswresample   1.  1.100 /  1.  1.100
    libpostproc    53.  0.100 / 53.  0.100
    Input #0, image2, from '/storage/emulated/0/Pictures/phototest/%d.jpg':
    Duration: 00:00:28.00, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg), 2528x1856 [SAR 1:1 DAR 79:58], 1 fps, 1 tbr, 1 tbn, 1 tbc
    Please use -b:a or -b:v, -b is ambiguous
    [swscaler @ 0x2b3f7990] deprecated pixel format used, make sure you did set range correctly
    [libx264 @ 0x2b4012e0] using SAR=1/1
    [libx264 @ 0x2b4012e0] using cpu capabilities: none!
    [libx264 @ 0x2b4012e0] profile Constrained Baseline, level 5.0
    [libx264 @ 0x2b4012e0] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=0 trellis=2 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=300 keyint_min=24 scenecut=0 intra_refresh=0 rc=abr mbtree=0 bitrate=4000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
    Output #0, mp4, to '/storage/emulated/0/Pictures/phototest/result1.mp4':
    Metadata:
    encoder         : Lavf56.4.101
    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 2528x1856 [SAR 1:1 DAR 79:58], q=-1--1, 4000 kb/s, 24 fps, 12288 tbn, 24 tbc
    Metadata:
    encoder         : Lavc56.1.100 libx264
    Stream mapping:
    Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
    Press [q] to stop, [?] for help
    frame=   49 fps= 11 q=17.0 size=     840kB time=00:00:01.83 bitrate=3752.6kbits/s dup=46 drop=0
    frame=   73 fps=8.0 q=17.0 size=    1397kB time=00:00:02.83 bitrate=4039.0kbits/s dup=69 drop=0
    frame=   97 fps=5.9 q=17.0 size=    1931kB time=00:00:03.83 bitrate=4126.8kbits/s dup=92 drop=0
    frame=  121 fps=5.3 q=17.0 size=    2496kB time=00:00:04.83 bitrate=4229.6kbits/s dup=115 drop=0
    frame=  145 fps=5.2 q=17.0 size=    3089kB time=00:00:05.83 bitrate=4338.5kbits/s dup=138 drop=0
    frame=  169 fps=5.1 q=17.0 size=    3702kB time=00:00:06.83 bitrate=4437.9kbits/s dup=161 drop=0
    frame=  193 fps=5.0 q=18.0 size=    4316kB time=00:00:07.83 bitrate=4514.1kbits/s dup=184 drop=0
    frame=  217 fps=5.0 q=18.0 size=    4848kB time=00:00:08.83 bitrate=4495.6kbits/s dup=207 drop=0
    frame=  241 fps=5.0 q=18.0 size=    5304kB time=00:00:09.83 bitrate=4418.5kbits/s dup=230 drop=0
    frame=  265 fps=5.0 q=19.0 size=    5874kB time=00:00:10.83 bitrate=4441.8kbits/s dup=253 drop=0
    frame=  28
    12-23 13:02:07.430  12665-12665/com.company.example E/FFMPEG﹕ Finished.

    EDIT : Note that although it appears to run ffmpeg twice here, the output file is the correct size which seems to mean that the file isn’t getting overwritten with a corrupt version, so we can probably just assume there’s a bug with Logcat (right ?)

    EDIT 2 : Trying the same command on the PC works flawlessly. Playing back this video works fine on Android.

  • 7 Benefits Segmentation Examples + How to Get Started

    26 mars 2024, par Erin

    Every copywriter knows the importance of selling a product’s benefits, not its features. So why should your marketing efforts be different ?

    Answer : they shouldn’t.

    It’s time to stop using demographic or behavioural traits to group customers and start using benefits segmentation instead.

    Benefits segmentation groups your customers based on the value they get from your product or service. In this article, we’ll cover seven real-life examples of benefits segmentation, explain why it’s so powerful and show how to get started today.

    What is benefits segmentation ?

    Benefits segmentation is a way for marketers to group their target market based on the value they get from their products or services. It is a form of customer segment marketing. Other types of market segmentation include :

    • Geographic segmentation
    • Demographic segmentation
    • Psychographic segmentation
    • Behavioural segmentation
    • Firmographic segmentation

    Customers could be the same age, from the same industry and live in the same location but want drastically different things from the same product. Some may like the design of your products, others the function, and still more the price. 

    Whatever the benefits, you can make your marketing more effective by building advertising campaigns around them.

    Why use benefits segmentation ?

    Appealing to the perceived benefits of your product is a powerful marketing strategy. Here are the advantages of you benefit segmentation can expect :

    Why use benefits segmentation?

    More effective marketing campaigns

    Identifying different benefits segments lets you create much more targeted marketing campaigns. Rather than appeal to a broad customer base, you can create specific ads and campaigns that speak to a small part of your target audience. 

    These campaigns tend to be much more powerful. Benefits-focused messaging better resonates with your audience, making potential customers more likely to convert.

    Better customer experience 

    Customers use your products for a reason. By showing you understand their needs through benefits segmentation, you deliver a much better customer experience — in terms of messaging and how you develop new products. 

    In today’s world, experience matters. 80% of customers say a company’s experience is as important as its products and services.

    Stronger customer loyalty

    When products or services are highly targeted at potential customers, they are more likely to return. More than one-third (36%) of customers would return to a brand if they had a positive experience, even if cheaper or more convenient alternatives exist.

    Using benefits segmentation will also help you attract the right kind of people in the first place — people who will become long-term customers because your benefits align with their needs. 

    Improved products and services

    Benefits segmentation makes it easier to tailor products or services to your audiences’ wants and needs. 

    Rather than creating a product meant to appeal to everyone but doesn’t fulfil a real need, your team can create different ranges of the same product that target different benefits segments. 

    Higher conversion rates

    Personalising your pitch to individual customers is powerful. It drives performance and creates better outcomes for your target customer. Companies that grow faster drive 40 per cent more revenue from personalisation than their slower-growing counterparts.

    When sales reps understand your product’s benefits, talking to customers about them and demonstrating how the product solves particular pain points is much easier. 

    In short, benefits segmentation can lead to higher conversion rates and a better return on investment. 

    7 examples of benefits segmentation

    Let’s take a look at seven examples of real-life benefits segmentation to improve your understanding :

    Nectar

    Mattress manufacturer Nectar does a great job segmenting their product range by customer benefits. That’s a good thing, given how many different things people want from their mattress. 

    It’s not just a case of targeting back sleepers vs. side sleepers ; they focus on more specific benefits like support and cooling. 

    A screenshot of the Nectar website

    Take a look at the screenshot above. Nectar mentions the benefits of each mattress in multiple places, making it easy for customers to find the perfect mattress. If you care about value, for example, you might choose “The Nectar.” If pressure relief and cooling are important to you, you might pick the “Nectar Premier.”

    24 Hour Fitness

    A gym is a gym is a gym, right ? Not when people use it to achieve different goals, it’s not. And that’s what 24 Hour Fitness exploits when they sell memberships to their audience. 

    As you can see from its sales page, 24 Hour Fitness targets the benefits that different customers get from their products :

    A screenshot of a gym's website

    Customers who just care about getting access to weights and treadmills for as cheap as possible can buy the Silver Membership. 

    But getting fit isn’t the only reason people go to the gym. That’s why 24 Hour Fitness targets its Gold Membership to those who want the “camaraderie” of studio classes led by “expert instructors.”

    Finally, some people value being able to access any club, anywhere in the country. Consumers value flexibility greatly, so 24 Hour Fitness limits this perk to its top-tier membership. 

    Notion

    Notion is an all-in-one productivity and note-taking app that aims to be the only productivity tool people and teams need. Trying to be everything to all people rarely works, however, which is why Notion cleverly tweaks its offering to appeal to the desires of different customer segments :

    A screenshot of Notion's website highlighting benefits

    For price-conscious individuals, it provides a pared solution that doesn’t bloat the user experience with features or benefits these consumers don’t care about.

    The Plus tier is the standard offering for teams who need a way to collaborate online. Still, there are two additional tiers for businesses that target specific benefits only certain teams need. 

    For teams that benefit from a longer history or additional functionality like a bulk export, Notion offers the Business tier at almost double the price of the standard Plus tier. Finally, the Enterprise tier for businesses requires much more advanced security features. 

    Apple

    Apple is another example of a brand that designs and markets products to customers based on specific benefits.

    A screenshot of Apple's website highlighting benefits

    Why doesn’t Apple just make one really good laptop ? Because customers want different things from them. Some want the lightest or smallest laptop possible. Others need ones with higher processing power or larger screens.

    One product can’t possibly deliver all those benefits. So, by understanding the precise reasons people need a laptop, Apple can create and market products around the benefits that are most likely to be sold. 

    Tesla

    In the same way Apple understands that consumers need different things from their laptops, Tesla understands that consumers derive different benefits from their cars. 

    It’s why the company sells four cars (and now a truck) that cover various sizes, top speeds, price points and more. 

    A screenshot of Tesla's website highlighting benefits

    Tesla even asks customers about the benefits they want from their car when helping them to choose a vehicle. By asking customers to pick how they will use their new vehicle, Tesla can ensure the car’s benefits match up to the consumers’ goals. 

    Dynamite Brands

    Dynamite Brands is a multi-brand, community-based business that targets remote entrepreneurs around the globe. But even this heavily niched-down business still needs to create benefit segments to serve its audience better. 

    It’s why the company has built several different brands instead of trying to serve every customer under a single banner :

    A screenshot of Dynamite Brands' website highlighting benefits

    If you just want to meet other like-minded entrepreneurs, you can join the Dynamite Circle, for example. But DC Black might be a better choice if you care more about networking and growing your business.

    It’s the same with the two recruiting brands. Dynamite Jobs targets companies that just want access to a large talent pool. Remote First Recruiting targets businesses that benefit from a more hands-on approach to hiring where a partner does the bulk of the work.

    Garmin

    Do you want your watch to tell the time or do you want it to do more ? If you fall into the latter category, Garmin has designed dozens of watches that target various benefits.

    A screenshot of Garmin's website highlighting benefits

    Do you want a watch that tracks your fitness without looking ugly ? Buy the Venu. 

    Want a watch designed for runners ? Buy the Forerunner. 

    Do you need a watch that can keep pace with your outdoor lifestyle ? Buy the Instinct. 

    Just like Apple, Garmin can’t possibly design a single watch that delivers all these benefits. Instead, each watch is carefully built for the target customer’s needs. Yes, it makes the target market smaller, but it makes the product more appealing to those who care about those benefits.

    How to get started with benefits segmentation

    According to Gartner, 63% of digital marketing leaders struggle with personalisation. Don’t be one of them. Here’s how you can improve your personalisation efforts using benefits segmentation. 

    Research and define benefits

    The first step to getting started with benefit segmentation is understanding all the benefits customers get from your products. 

    You probably already know some of the benefits, but don’t underestimate the importance of customer research. Hold focus groups, survey customers and read customer reviews to discover what customers love about your products. 

    Create benefit-focused customer personas

    Now you understand the benefits, it’s time to create customer personas that reflect them. Group consumers who like similar benefits and see if they have any other similarities. 

    Price-conscious consumers may be younger. Maybe people who care about performance have a certain type of job. The more you can do to flesh out what the average benefits-focused consumer looks like, the easier it will be to create campaigns. 

    Create campaigns focused on each benefit

    Now, we get to the fun part. Make the benefit-focused customer personas you created in the last step the focus of your marketing campaigns going forward. 

    Don’t try to appeal to everyone. Just make your campaigns appeal to these people.

    Go deeper with segmentation analytics

    The quality of your benefit segmentation strategy hinges on the quality of your data. That’s why using a an accurate web analytics solution like Matomo to track how each segment behaves online using segmentation analytics is important.

    Segmentation Analytics is the process of splitting customers into different groups within your analytics software to create more detailed customer data and improve targeting

    This data can make your marketing campaigns more targeted and effective.

    Benefits segmentation in practice

    Let’s say you have an e-commerce website selling a wide range of household items, and you want to create a benefit segment for “Tech Enthusiasts” who are interested in the latest gadgets and cutting-edge technology. You want to track and analyse their behaviour separately to tailor marketing campaigns or website content specifically for this group.

    1. Identify characteristics : Determine key characteristics or behaviours that define the “Tech Enthusiasts” segment. 

    This might include frequent visits to product pages of the latest tech products, site searches that contain different tech product names, engaging with tech-specific content in emails or spending more time on technology-related blog posts.

    One quick and surefire way to identify characteristics of a segment is to look historically at specific tech product purchases in your Matomo and work your way backwards to find out what steps a “Tech Enthusiast” takes before making a purchase. For instance, you might look at User Flows to discover this.

    Behaviour User Flow in Matomo
    1. Create segments in Matomo : Using Matomo’s segmentation features, you can create a segment that includes users exhibiting these characteristics. For instance :
      • Segment by page visits : Create a segment that includes users who visited tech product pages or spent time on tech blogs.
    Segmentation example in Matomo
      • Segment by event tracking : If you’ve set up event tracking for specific actions (like clicking on “New Tech” category buttons), create a segment based on these events.
      • Combine conditions : Combine various conditions (e.g., pages visited, time spent, specific actions taken) to create a comprehensive segment that accurately represents “Tech Enthusiasts.”
    1. Track and analyse : Apply this segment to your analytics data in Matomo to track and analyse the behaviour of this group separately. Monitor metrics like their conversion rates, time spent on site or specific products they engage with.
    2. Tailor marketing : Use the insights from analysing this segment to tailor marketing strategies. This could involve creating targeted campaigns or customising website content to cater specifically to these users.

    Remember, the key is to define criteria that accurately represent the segment you want to target, use Matomo’s segmentation tools to isolate this group, and effectively derive actionable insights to cater to their preferences or needs.

    Try Matomo for Free

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

    No credit card required

    Track your segmentation efforts 

    Benefits segmentation is a fantastic way to improve your marketing. It can help you deliver a better customer experience, improve your product offering and help your sales reps close more deals. 

    Segmenting your audience with an analytics platform lets you go even deeper. But doing so in a privacy-sensitive way can be difficult. 

    That’s why over 1 million websites choose Matomo as their web analytics solution. Matomo provides exceptional segmentation capabilities while remaining 100% accurate and compliant with global privacy laws.

    Find out how Matomo’s insights can level up your marketing efforts with our 21-day free trial, no credit card required.