Recherche avancée

Médias (1)

Mot : - Tags -/Christian Nold

Autres articles (84)

  • MediaSPIP Player : problèmes potentiels

    22 février 2011, par

    Le lecteur ne fonctionne pas sur Internet Explorer
    Sur Internet Explorer (8 et 7 au moins), le plugin utilise le lecteur Flash flowplayer pour lire vidéos et son. Si le lecteur ne semble pas fonctionner, cela peut venir de la configuration du mod_deflate d’Apache.
    Si dans la configuration de ce module Apache vous avez une ligne qui ressemble à la suivante, essayez de la supprimer ou de la commenter pour voir si le lecteur fonctionne correctement : /** * GeSHi (C) 2004 - 2007 Nigel McNie, (...)

  • Contribute to documentation

    13 avril 2011

    Documentation is vital to the development of improved technical capabilities.
    MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
    To contribute, register to the project users’ mailing (...)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

Sur d’autres sites (10162)

  • libfdk-aacdec : Enable Decoder Downmix including Downmix Metadata Support

    14 octobre 2014, par Omer Osman
    libfdk-aacdec : Enable Decoder Downmix including Downmix Metadata Support
    

    The FDK decoder is capable of producing mono and stereo downmix from
    multichannel streams. These streams may contain metadata that control
    the downmix process. The decoder requires an Ancillary Buffer in order to
    correctly apply downmix in streams containing downmix Metadata. The
    decoder does not have an API interface to inform of the presence of
    Metadata in the stream, and therefore the Ancillary Buffer is always
    allocated whenever a downmix is requested.

    When downmixing multichannel streams, the decoder requires the output
    buffer in aacDecoder_DecodeFrame call to be of fixed size in order to
    hold the actual number of channels contained in the stream. For example,
    for a 5.1ch to stereo downmix, the decoder requires that the output buffer
    is allocated for 6 channels, regardless of the fact that the output is in
    fact two channels.

    Due to this requirement, the output buffer is allocated for the maximum
    output buffer size in case a downmix is requested (and also during
    decoder init). When a downmix is requested, the buffer used for output
    during init will also be used for the entire duration the decoder is open.
    Otherwise, the initial decoder output buffer is freed and the decoder
    decodes straight into the output AVFrame.

    Signed-off-by : Martin Storsjö <martin@martin.st>

    • [DBH] libavcodec/libfdk-aacdec.c
    • [DBH] libavcodec/version.h
  • FFMPEG fails while processing MOV files

    29 septembre 2020, par Tom

    I'm trying to convert video files to DASH format. All videos work great except MOV videos.

    &#xA;

    I'm using the following command :

    &#xA;

    /usr/local/bin/ffmpeg -y -i /path/to/mov/video.mov -c:v libx264 -c:a aac -bf 1 -keyint_min 25 -g 250 -sc_threshold 40 -use_timeline 1 -use_template 1 -init_seg_name &#x27;video_init_$RepresentationID$.$ext$&#x27; -media_seg_name &#x27;video_chunk_$RepresentationID$_$Number%05d$.$ext$&#x27; -seg_duration 10 -hls_playlist 0 -f dash -adaptation_sets -0:s -map 0 -s:v:0 854x480 -b:v:0 750k -strict -2 -threads 12 /output/path/video.mpd&#xA;

    &#xA;

    I get the error :

    &#xA;

      &#xA;
    • Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument ... Error initializing output stream 0:1
    • &#xA;

    &#xA;

    The full command output is :

    &#xA;

    ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers&#xA;built with Apple clang version 11.0.3 (clang-1103.0.32.62)&#xA;configuration: --prefix=/usr/local/Cellar/ffmpeg/4.3.1 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libsoxr --enable-videotoolbox --disable-libjack --disable-indev=jack&#xA;libavutil 56. 51.100 / 56. 51.100&#xA;libavcodec 58. 91.100 / 58. 91.100&#xA;libavformat 58. 45.100 / 58. 45.100&#xA;libavdevice 58. 10.100 / 58. 10.100&#xA;libavfilter 7. 85.100 / 7. 85.100&#xA;libavresample 4. 0. 0 / 4. 0. 0&#xA;libswscale 5. 7.100 / 5. 7.100&#xA;libswresample 3. 7.100 / 3. 7.100&#xA;libpostproc 55. 7.100 / 55. 7.100&#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;/path/to/file.mov&#x27;:&#xA;Metadata:&#xA;major_brand : qt&#xA;minor_version : 0&#xA;compatible_brands: qt&#xA;creation_time : 2020-09-21T09:45:27.000000Z&#xA;com.apple.quicktime.make: Apple&#xA;com.apple.quicktime.model: iPhone 7&#xA;com.apple.quicktime.software: 13.4.1&#xA;com.apple.quicktime.creationdate: 2020-06-15T11:59:36&#x2B;0200&#xA;com.apple.photos.originating.signature: AXfhZgW4nrUdSusOMUuJRarfxD7R&#xA;Duration: 00:01:13.40, start: 0.000000, bitrate: 10616 kb/s&#xA;Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 96 kb/s (default)&#xA;Metadata:&#xA;creation_time : 2020-09-21T09:45:27.000000Z&#xA;handler_name : Core Media Audio&#xA;Stream #0:1(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 10514 kb/s, 30 fps, 30 tbr, 600 tbn, 1200 tbc (default)&#xA;Metadata:&#xA;creation_time : 2020-09-21T09:45:27.000000Z&#xA;handler_name : Core Media Video&#xA;encoder : H.264&#xA;Stream #0:2(und): Data: none (mebx / 0x7862656D) (default)&#xA;Metadata:&#xA;creation_time : 2020-09-21T09:45:27.000000Z&#xA;handler_name : Core Media Metadata&#xA;Stream #0:3(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)&#xA;Metadata:&#xA;creation_time : 2020-09-21T09:45:27.000000Z&#xA;handler_name : Core Media Metadata&#xA;Stream mapping:&#xA;Stream #0:0 -> #0:0 (aac (native) -> aac (native))&#xA;Stream #0:1 -> #0:1 (h264 (native) -> h264 (libx264))&#xA;Stream #0:2 -> #0:2 (copy)&#xA;Stream #0:3 -> #0:3 (copy)&#xA;Press [q] to stop, [?] for help&#xA;[libx264 @ 0x7f7f2600e000] using SAR=1280/1281&#xA;[libx264 @ 0x7f7f2600e000] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2&#xA;[libx264 @ 0x7f7f2600e000] profile High, level 3.1, 4:2:0, 8-bit&#xA;[libx264 @ 0x7f7f2600e000] 264 - core 160 r3011 cde9a93 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - 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=1 b_pyramid=0 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=abr mbtree=1 bitrate=750 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00&#xA;Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument&#xA;Error initializing output stream 0:1 --&#xA;[aac @ 0x7f7f2600c000] Qavg: 880.111&#xA;[aac @ 0x7f7f2600c000] 2 frames left in the queue on closing&#xA;[libx264 @ 0x7f7f2600e000] final ratefactor: 28.97&#xA;Conversion failed!&#xA;

    &#xA;

    Stream #0:2 -> #0:2 (copy)&#xA;Stream #0:3 -> #0:3 (copy)&#xA;

    &#xA;

    I guess the problem is that the file contains two not audio/video streams :&#xA;I can not find a way to exclude or ignore or copy without processing those last two streams (#2 and #3).

    &#xA;

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;IMG_3599.mov&#x27;:&#xA;  Metadata:&#xA;    major_brand     : qt&#xA;    minor_version   : 0&#xA;    compatible_brands: qt&#xA;    creation_time   : 2020-09-21T09:45:27.000000Z&#xA;    com.apple.quicktime.make: Apple&#xA;    com.apple.quicktime.model: iPhone 7&#xA;    com.apple.quicktime.software: 13.4.1&#xA;    com.apple.quicktime.creationdate: 2020-06-15T11:59:36&#x2B;0200&#xA;    com.apple.photos.originating.signature: AXfhZgW4nrUdSusOMUuJRarfxD7R&#xA;  Duration: 00:01:13.40, start: 0.000000, bitrate: 10616 kb/s&#xA;    Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 96 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2020-09-21T09:45:27.000000Z&#xA;      handler_name    : Core Media Audio&#xA;    Stream #0:1(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 10514 kb/s, 30 fps, 30 tbr, 600 tbn, 1200 tbc (default)&#xA;    Metadata:&#xA;      creation_time   : 2020-09-21T09:45:27.000000Z&#xA;      handler_name    : Core Media Video&#xA;      encoder         : H.264&#xA;    Stream #0:2(und): Data: none (mebx / 0x7862656D) (default)&#xA;    Metadata:&#xA;      creation_time   : 2020-09-21T09:45:27.000000Z&#xA;      handler_name    : Core Media Metadata&#xA;    Stream #0:3(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2020-09-21T09:45:27.000000Z&#xA;      handler_name    : Core Media Metadata&#xA;

    &#xA;

  • Salty Game Music

    31 mai 2011, par Multimedia Mike — General

    Have you heard of Google’s Native Client (NaCl) project ? Probably not. Basically, it allows native code modules to run inside a browser (where ‘browser’ is defined pretty narrowly as ‘Google Chrome’ in this case). Programs are sandboxed so they aren’t a security menace (or so the whitepapers claim) but are allowed to access a variety of APIs including video and audio. The latter API is significant because sound tends to be forgotten in all the hullabaloo surrounding non-Flash web technologies. At any rate, enjoy NaCl while you can because I suspect it won’t be around much longer.

    After my recent work upgrading some old music synthesis programs to user more modern audio APIs, I got the idea to try porting the same code to run under NaCl in Chrome (first Nosefart, then Game Music Emu/GME). In this exercise, I met with very limited success. This blog post documents some of the pitfalls in my excursion.



    Infrastructure
    People who know me know that I’m rather partial — to put it gently — to straight-up C vs. C++. The NaCl SDK is heavily skewed towards C++. However, it does provide a Python tool called init_project.py which can create the skeleton of a project and can do so in C with the '-c' option :

    ./init_project.py -c -n saltynosefart
    

    This generates something that can be built using a simple ‘make’. When I added Nosefart’s C files, I learned that the project Makefile has places for project-necessary CFLAGS but does not honor them. The problem is that the generated Makefile includes a broader system Makefile that overrides the CFLAGS in the project Makefile. Going into the system Makefile and changing "CFLAGS =" -> "CFLAGS +=" solves this problem.

    Still, maybe I’m the first person to attempt building something in Native Client so I’m the first person to notice this ?

    Basic Playback
    At least the process to create an audio-enabled NaCl app is well-documented. Too bad it doesn’t seem to compile as advertised. According to my notes on the matter, I filled in PPP_InitializeModule() with the appropriate boilerplate as outlined in the docs but got a linker error concerning get_browser_interface().

    Plan B : C++
    Obviously, the straight C stuff is very much a second-class citizen in this NaCl setup. Fortunately, there is already that fully functional tone generator example program in the limited samples suite. Plan B is to copy that project and edit it until it accepts Nosefart/GME audio instead of a sine wave.

    The build system assumes all C++ files should have .cc extensions. I have to make some fixes so that it will accept .cpp files (either that, or rename all .cpp to .cc, but that’s not very clean).

    Making Noise
    You’ll be happy to know that I did successfully swap out the tone generator for either Nosefart or GME. Nosefart has a slightly fickle API that requires revving the emulator frame by frame and generating a certain number of audio samples. GME’s API is much easier to work with in this situation — just tell it how many samples it needs to generate and give it a pointer to a buffer. I played NES and SNES music play through this ad-hoc browser plugin, and I’m confident all the other supported formats would have worked if I went through the bother of converting the music data files into C headers to be included in the NaCl executable binaries (dynamically loading data via the network promised to be a far more challenging prospect reserved for phase 3 of the project).

    Portable ?
    I wouldn’t say so. I developed it on Linux and things ran fine there. I tried to run the same binaries on the Windows version of Chrome to no avail. It looks like it wasn’t even loading the .nexe files (NaCl executables).

    Thinking About The (Lack Of A) Future
    As I was working on this project, I noticed that the online NaCl documentation materialized explicit banners warning that my NaCl binaries compiled for Chrome 11 won’t work for Chrome 12 and that I need to code to the newly-released 0.3 SDK version. Not a fuzzy feeling. I also don’t feel good that I’m working from examples using bleeding edge APIs that feature deprecation as part of their naming convention, e.g., pp::deprecated::ScriptableObject().

    Ever-changing API + minimal API documentation + API that only works in one browser brand + requiring end user to explicitly enable feature = … well, that’s why I didn’t bother to release any showcase pertaining to this little experiment. Would have been neat, but I strongly suspect that this is yet another one of those APIs that Google decides to deprecate soon.

    See Also :