Recherche avancée

Médias (0)

Mot : - Tags -/alertes

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (65)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

  • 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

  • Les statuts des instances de mutualisation

    13 mars 2010, par

    Pour des raisons de compatibilité générale du plugin de gestion de mutualisations avec les fonctions originales de SPIP, les statuts des instances sont les mêmes que pour tout autre objets (articles...), seuls leurs noms dans l’interface change quelque peu.
    Les différents statuts possibles sont : prepa (demandé) qui correspond à une instance demandée par un utilisateur. Si le site a déjà été créé par le passé, il est passé en mode désactivé. publie (validé) qui correspond à une instance validée par un (...)

Sur d’autres sites (10637)

  • flvenc : Check whether seeking back to the header succeeded

    13 décembre 2012, par Björn Axelsson

    flvenc : Check whether seeking back to the header succeeded

  • ffmpeg mp4 to mpeg and back again

    5 décembre 2012, par brux

    I am concatenating mp4 files, from research I have found out you must first encode to mpeg and contatenate those, then convert the larger mpeg file back to mp4.

    For simplicity I am just attempting to convert a.mp4 to mpeg and then back to mp4 (i dont need to worry about the concatenation for now)

    Here is how I first convert to my intermediary mpeg from mp4 :

       ffmpeg -i a.mp4 -q:v 2 -vcodec mpeg2video -acodec copy b.mpg

    The file is encoded with no errors, to convert back to mp4 I do :

       ffmpeg -i b.mpg -vcodec libx264 -acodec copy out.mp4

    Everything seems to work with no errors but out.mp4 just plays the first few frames and then freezes, and the time is skipping randomly as the duration passes for the file. No sound is heard also.

       *****************************************                              
       Here is the output of the first command
       *****************************************

    $ ffmpeg -i a.mp4 -q:v 2 -vcodec mpeg2video -acodec copy b.mpg
       ffmpeg version 0.9, Copyright (c) 2000-2011 the FFmpeg developers
         built on Jun 12 2012 20:43:50 with gcc 4.4.3
         configuration: --enable-cross-compile --arch=arm --cpu=cortex-a8 --target-os=linux --enable-runtime-cpudetect --prefix=/data/data/org.witness.sscvideoproto --enable-pic --disable-shared --enable-static --cross-prefix=/home/n8fr8/dev/android/ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi- --sysroot=/home/n8fr8/dev/android/ndk/platforms/android-3/arch-arm --enable-version3 --enable-gpl --enable-small --enable-memalign-hack --disable-yasm --disable-doc --enable-decoder=mjpeg --enable-decoder=rawvideo --enable-encoder=libx264 --enable-muxer=mp4 --enable-demuxer=image2 --enable-demuxer=mjpeg --enable-demuxer=mp4 --enable-demuxer=mov --enable-parser=mjpeg --enable-filter=buffer --enable-filter=buffersink --enable-filter=drawbox --enable-filter=overlay --enable-filter=redact --enable-protocol=file --enable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-network --enable-libx264 --enable-zlib --extra-cflags=-I../x264 --extra-ldflags=-L../x264 --disabl  libavutil    51. 32. 0 / 51. 32. 0
         libavcodec   53. 42. 0 / 53. 42. 0
         libavformat  53. 24. 0 / 53. 24. 0
         libavfilter   2. 53. 0 /  2. 53. 0
         libswscale    2.  1. 0 /  2.  1. 0
         libpostproc  51.  2. 0 / 51.  2. 0
       [mov,mp4,m4a,3gp,3g2,mj2 @ 0xb05a90] multiple edit list entries, a/v desync might occur, patch welcome

       Seems stream 1 codec frame rate differs from container frame rate: 180000.00 (180000/1) -> 43.08 (517/12)
       Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'j.mp4':
         Metadata:
           major_brand     : isom
           minor_version   : 0
           compatible_brands: isom3gp4
           creation_time   : 1946-12-04 21:52:33
         Duration: 00:00:05.31, start: 0.000000, bitrate: 1584 kb/s
           Stream #0:0(eng): Audio: aac (mp4a / 0x6134706D), 16000 Hz, mono, s16, 96 kb/s
           Metadata:
             creation_time   : 1946-12-04 21:52:33
             handler_name    : SoundHandle
           Stream #0:1(eng): Video: h264 (avc1 / 0x31637661), yuv420p, 720x480, 1599 kb/s, SAR 65536:65536 DAR 3:2, 13.97 fps, 43.08 tbr, 90k tbn, 180k tbc
           Metadata:
             creation_time   : 1946-12-04 21:52:33
             handler_name    : VideoHandle
       [buffer @ 0xb247f0] w:720 h:480 pixfmt:yuv420p tb:1/1000000 sar:65536/65536 sws_param:
       [mpeg @ 0xb23d10] VBV buffer size not set, muxing may fail
       Output #0, mpeg, to 'out.mpg':
         Metadata:
           major_brand     : isom
           minor_version   : 0
           compatible_brands: isom3gp4
           creation_time   : 1946-12-04 21:52:33
           encoder         : Lavf53.24.0
           Stream #0:0(eng): Video: mpeg2video, yuv420p, 720x480 [SAR 65536:65536 DAR 3:2], q=2-31, 200 kb/s, 90k tbn, 50 tbc
           Metadata:
             creation_time   : 1946-12-04 21:52:33
             handler_name    : VideoHandle
           Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 16000 Hz, mono, 96 kb/s
           Metadata:
             creation_time   : 1946-12-04 21:52:33
             handler_name    : SoundHandle
       Stream mapping:
         Stream #0:1 -> #0:0 (h264 -> mpeg2video)
         Stream #0:0 -> #0:1 (copy)
       Press [q] to stop, [?] for help
       frame=   20 fps=  0 q=0.0 size=      14kB time=00:00:00.38 bitrate= 301.8kbits/s dup=15 frame=   34 fps= 28 q=0.0 size=     132kB time=00:00:00.66 bitrate=1638.4kbits/s dup=25 frame=   45 fps= 25 q=0.0 size=     230kB time=00:00:00.88 bitrate=2141.1kbits/s dup=33 frame=   55 fps= 22 q=0.0 size=     294kB time=00:00:01.08 bitrate=2230.0kbits/s dup=40 frame=   66 fps= 21 q=0.0 size=     306kB time=00:00:01.21 bitrate=2061.5kbits/s dup=48 frame=   79 fps= 21 q=0.0 size=     436kB time=00:00:01.56 bitrate=2289.6kbits/s dup=57 frame=   88 fps= 20 q=0.0 size=     514kB time=00:00:01.74 bitrate=2419.9kbits/s dup=63 frame=  100 fps= 21 q=0.0 size=     584kB time=00:00:01.98 bitrate=2416.2kbits/s dup=71 frame=  110 fps= 20 q=0.0 size=     618kB time=00:00:02.17 bitrate=2326.6kbits/s dup=78 frame=  116 fps= 19 q=0.0 size=     650kB time=00:00:02.24 bitrate=2377.1kbits/s dup=82 frame=  132 fps= 20 q=0.0 size=     830kB time=00:00:02.62 bitrate=2595.2kbits/s dup=94 frame=  144 fps= 20 q=0.0 size=     904kB time=00:00:02.86 bitrate=2589.4kbits/s dup=103frame=  156 fps= 20 q=0.0 size=     970kB time=00:00:03.10 bitrate=2563.3kbits/s dup=112frame=  168 fps= 20 q=0.0 size=    1006kB time=00:00:03.20 bitrate=2575.4kbits/s dup=121frame=  179 fps= 20 q=0.0 size=    1138kB time=00:00:03.56 bitrate=2618.7kbits/s dup=129frame=  191 fps= 20 q=0.0 size=    1240kB time=00:00:03.80 bitrate=2673.2kbits/s dup=138frame=  203 fps= 20 q=0.0 size=    1342kB time=00:00:04.04 bitrate=2721.2kbits/s dup=147frame=  215 fps= 20 q=0.0 size=    1426kB time=00:00:04.22 bitrate=2765.6kbits/s dup=156frame=  227 fps= 20 q=0.0 size=    1536kB time=00:00:04.52 bitrate=2783.8kbits/s dup=165frame=  239 fps= 20 q=0.0 size=    1646kB time=00:00:04.76 bitrate=2832.8kbits/s dup=174frame=  248 fps= 20 q=0.0 size=    1726kB time=00:00:04.94 bitrate=2862.2kbits/s dup=181frame=  248 fps= 19 q=0.0 Lsize=    1738kB time=00:00:04.94 bitrate=2882.1kbits/s dup=181 drop=0
       video:1665kB audio:62kB global headers:0kB muxing overhead 0.639219%

       *****************************************                              
       Here is the output of the second command
       *****************************************

    $ ffmpeg -i out.mpg -vcodec libx264 -acodec copy out1.mp4
       ffmpeg version 0.9, Copyright (c) 2000-2011 the FFmpeg developers
         built on Jun 12 2012 20:43:50 with gcc 4.4.3
         configuration: --enable-cross-compile --arch=arm --cpu=cortex-a8 --target-os=linux --enable-runtime-cpudetect --prefix=/data/data/org.witness.sscvideoproto --enable-pic --disable-shared --enable-static --cross-prefix=/home/n8fr8/dev/android/ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi- --sysroot=/home/n8fr8/dev/android/ndk/platforms/android-3/arch-arm --enable-version3 --enable-gpl --enable-small --enable-memalign-hack --disable-yasm --disable-doc --enable-decoder=mjpeg --enable-decoder=rawvideo --enable-encoder=libx264 --enable-muxer=mp4 --enable-demuxer=image2 --enable-demuxer=mjpeg --enable-demuxer=mp4 --enable-demuxer=mov --enable-parser=mjpeg --enable-filter=buffer --enable-filter=buffersink --enable-filter=drawbox --enable-filter=overlay --enable-filter=redact --enable-protocol=file --enable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-network --enable-libx264 --enable-zlib --extra-cflags=-I../x264 --extra-ldflags=-L../x264 --disabl  libavutil    51. 32. 0 / 51. 32. 0
         libavcodec   53. 42. 0 / 53. 42. 0
         libavformat  53. 24. 0 / 53. 24. 0
         libavfilter   2. 53. 0 /  2. 53. 0
         libswscale    2.  1. 0 /  2.  1. 0
         libpostproc  51.  2. 0 / 51.  2. 0
       [mp1 @ 0xb0d420] Header missing
           Last message repeated 8 times
       [mpeg @ 0xb05a90] Could not find codec parameters (Audio: mp3, 0 channels, s16)
       Input #0, mpeg, from 'out.mpg':
         Duration: 00:00:05.24, start: 1.000000, bitrate: 2712 kb/s
           Stream #0:0[0x1e0]: Video: mpeg2video, yuv420p, 720x480 [SAR 1:1 DAR 3:2], 104857 kb/s, 50 fps, 50 tbr, 90k tbn, 100 tbc
           Stream #0:1[0x1c0]: Audio: mp3, 0 channels, s16
       [buffer @ 0xb77ca0] w:720 h:480 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param:
       [libx264 @ 0xb0c6e0] using SAR=1/1
       [libx264 @ 0xb0c6e0] using cpu capabilities: ARMv6 NEON
       [libx264 @ 0xb0c6e0] profile High, level 3.1
       [libx264 @ 0xb0c6e0] 264 - core 119 r2113 cc129ad - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - 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=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 'out1.mp4':
         Metadata:
           encoder         : Lavf53.24.0
           Stream #0:0: Video: h264 (![0][0][0] / 0x0021), yuv420p, 720x480 [SAR 1:1 DAR 3:2], q=-1--1, 50 tbn, 50 tbc
       Stream mapping:
         Stream #0:0 -> #0:0 (mpeg2video -> libx264)
       Press [q] to stop, [?] for help
       frame=  248 fps=  3 q=31.0 Lsize=     419kB time=00:00:04.92 bitrate= 697.5kbits/s
       video:415kB audio:0kB global headers:0kB muxing overhead 0.863133%
       [libx264 @ 0xb0c6e0] frame I:3     Avg QP:16.46  size:  3927
       [libx264 @ 0xb0c6e0] frame P:102   Avg QP:22.91  size:  3884
       [libx264 @ 0xb0c6e0] frame B:143   Avg QP:27.16  size:   116
       [libx264 @ 0xb0c6e0] consecutive B-frames: 18.1%  8.9% 18.1% 54.8%
       [libx264 @ 0xb0c6e0] mb I  I16..4: 56.3% 42.7%  1.0%
       [libx264 @ 0xb0c6e0] mb P  I16..4:  6.1%  9.9%  0.6%  P16..4: 33.2%  4.9%  2.2%  0.0%  0.0%    skip:43.1%
       [libx264 @ 0xb0c6e0] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  6.7%  0.0%  0.0%  direct: 0.1%  skip:93.2%  L0:53.5% L1:45.4% BI: 1.2%
       [libx264 @ 0xb0c6e0] 8x8 transform intra:57.0% inter:85.5%
       [libx264 @ 0xb0c6e0] coded y,uvDC,uvAC intra: 36.0% 71.6% 24.9% inter: 4.4% 11.6% 0.6%
       [libx264 @ 0xb0c6e0] i16 v,h,dc,p: 35% 21% 10% 34%
       [libx264 @ 0xb0c6e0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 22% 34%  3%  3%  4%  2%  4%  5%
       [libx264 @ 0xb0c6e0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 19% 11%  4% 12% 12%  7%  5%  6%
       [libx264 @ 0xb0c6e0] i8c dc,h,v,p: 49% 22% 22%  7%
       [libx264 @ 0xb0c6e0] Weighted P-Frames: Y:2.9% UV:2.0%
       [libx264 @ 0xb0c6e0] ref P L0: 79.5%  8.1%  9.8%  2.5%  0.0%
       [libx264 @ 0xb0c6e0] ref B L0: 91.9%  7.5%  0.6%
       [libx264 @ 0xb0c6e0] ref B L1: 94.8%  5.2%
       [libx264 @ 0xb0c6e0] kb/s:684.84
  • Back on the Salty Track

    12 juin 2011, par Multimedia Mike — General

    After I posted about my initial encounter and frustration with Google’s Native Client (NaCl) SDK and took a deep breath, I realized that I achieved an important proof of concept— I successfully played music using the NaCl SDK audio output interface. Then I started taking a closer read through the (C-based set of) header files and realized I might be able to make a go of it after all. I had much better luck this time and managed to create a proper Native Client interface that allows for controlling playback, presenting metadata, and toggling individual voices (a fascinating tool for studying classic game music).

    I haven’t bothered to post the actual plugin because, really, what’s the point ? I started with NaCl SDK 0.3 which requires Chrome 12, which means terribly limited reach, even among Chrome users. At least, that was true when I restarted this little project. Chrome 12 was formally released this past week. Chrome development really does move at breakneck pace.

    Anyway, here is a static screenshot of what the plugin currently looks like :



    Not pretty, but it does the job.

    Dev Journal
    Various notes based on this outing :

    • Portability : I tested my plugin using Chrome 12 on 64-bit Windows, Mac, and Linux. Mac and Linux both work ; Windows does not.
    • Build System : SDK 0.3 is still lacking in its ability to compile .cpp files (instead of .cc files) ; necessary because libgme is C++ using .cpp files. This requires some build system modification.
    • Getting the interfaces : This is where I got tripped up the first time around. get_browser_interface() from their example actually refers to a parameter passed in through the PPP_InitializeModule() function. The SDK’s template generator renames this to get_browser().
    • Debugging : I feel unstoppable once I have a printf() mechanism available to me during development. To that end, console.log() from JavaScript outputs to Chrome’s built-in JavaScript console log while putting printf() statements in the actual NaCl plugin causes the messages to show up in /.xsession-errors on Linux/X.
    • Size Matters : The binaries generated with the NaCl 0.3 SDK are ridiculously huge. The basic "Hello World" example in C compiles to binaries that are 6.7 MB and 7.8 MB for the 32- and 64-bit builds, respectively. This made me apprehensive to build a full version of SaltyGME that contains all the bells and whistles offered by the library. However, all of the GME code compiled into the binary adds very little size. Curiously, the C++ version of "Hello World" only ranges from 1.8-2.0 MB for 32- and 64-bit. Is there some kind of C tax happening here ? Note that running ’strip’ on the resulting .nexe files (they’re ELF files, after all) brings the sizes down into the C++ range, but at the cost of causing them to not work (more specifically, not even load).
    • No Messaging : The NaCl SDK is supposed to have a messaging interface which allows the NaCl plugin to send asynchronous messages up to the hosting page. When I try to instantiate it, I get a NULL. I’m stuck with the alternative of polling from the JavaScript side to, e.g., determine when a song has finished loading via the network.

    That’s all I can think of for now. I may work on this a little more (I’d like to at least see some audio visualization). Maybe Google will enable NaCl per default sometime around Chrome 21 and this program will be ready for prime time by then.

    See Also :