Recherche avancée

Médias (2)

Mot : - Tags -/doc2img

Autres articles (101)

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

  • Gestion générale des documents

    13 mai 2011, par

    MédiaSPIP ne modifie jamais le document original mis en ligne.
    Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
    Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...)

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

Sur d’autres sites (11830)

  • FFmpeg-wasm unpredictable erros with next js

    21 juillet, par hjtomi

    I use ffmpeg-wasm in next-js.
Whenever I execute an ffmpeg command it has a chance that it throws a runtime error saying memory access out of bounds. In this case I created a page that has an file selection html element and a button that converts each image to jpeg format with the following command :

    


    await ffmpeg.exec(['-i', originalFileName, '-q:v', '5', convertedFileName]);

    


    I have tried the same process with different images, extensions, sizes, restarting the application, restarting the computer, different browsers, mobile/desktop and sometimes it works, sometimes it doesnt. I feel like there is something that is out of my control. Maybe something that has to do with webassembly itself.

    


    In each runtime it has a 50-50 chance that ffmpeg will work or not.

    


    I have tried changing the target extension to different types.

    


    I have tried changing the ffmpeg command entirely to make it do something else.

    


    Writing the files to the virutal file system works as expected.

    


    I am on windows 10 using next-js version 15.3.5 and ffmpeg version 0.12.10

    


    &#x27;use client&#x27;;&#xA;&#xA;import * as React from &#x27;react&#x27;;&#xA;import { FFmpeg } from &#x27;@ffmpeg/ffmpeg&#x27;; // Import FFmpeg&#xA;import { fetchFile, toBlobURL } from &#x27;@ffmpeg/util&#x27;; // Import fetchFile&#xA;&#xA;export default function Page() {&#xA;  const [files, setFiles] = React.useState([]);&#xA;  const [error, setError] = React.useState<string null="null">(null);&#xA;&#xA;  // FFmpeg related states and ref&#xA;  const ffmpegRef = React.useRef<ffmpeg null="null">(null);&#xA;  const [ffmpegLoaded, setFFmpegLoaded] = React.useState(false);&#xA;  const [isConvertingImages, setIsConvertingImages] = React.useState(false);&#xA;  const [videoGenerationProgress, setVideoGenerationProgress] = React.useState<string>(&#x27;&#x27;);&#xA;&#xA;  // --- Load FFmpeg on component mount ---&#xA;  React.useEffect(() => {&#xA;    const loadFFmpeg = async () => {&#xA;      const baseURL = "https://unpkg.com/@ffmpeg/core@0.12.10/dist/umd";&#xA;      try {&#xA;        const ffmpeg = new FFmpeg();&#xA;        // Set up logging for FFmpeg progress&#xA;        ffmpeg.on(&#x27;log&#x27;, ({ message }) => {&#xA;          if (message.includes(&#x27;frame=&#x27;)) {&#xA;            setVideoGenerationProgress(message);&#xA;          }&#xA;        });&#xA;        await ffmpeg.load({&#xA;              coreURL: await toBlobURL(`${baseURL}/ffmpeg-core.js`, "text/javascript"),&#xA;              wasmURL: await toBlobURL(`${baseURL}/ffmpeg-core.wasm`, "application/wasm"),&#xA;            });&#xA;        ffmpegRef.current = ffmpeg;&#xA;        setFFmpegLoaded(true);&#xA;        console.log(&#x27;FFmpeg loaded successfully!&#x27;);&#xA;      } catch (err) {&#xA;        console.error(&#x27;Failed to load FFmpeg:&#x27;, err);&#xA;        setError(&#x27;Failed to load video processing tools.&#x27;);&#xA;      }&#xA;    };&#xA;&#xA;    loadFFmpeg();&#xA;  }, []);&#xA;&#xA;  // --- Internal file selection logic ---&#xA;  const handleFileChange = (e: React.ChangeEvent<htmlinputelement>) => {&#xA;    if (e.target.files &amp;&amp; e.target.files.length > 0) {&#xA;      const newFiles = Array.from(e.target.files).filter(file => file.type.startsWith(&#x27;image/&#x27;)); // Only accept images&#xA;      setFiles(newFiles);&#xA;      setError(null);&#xA;    }&#xA;  };&#xA;&#xA;  // --- Handle Image conversion ---&#xA;  const handleConvertImages = async () => {&#xA;    if (!ffmpegLoaded || !ffmpegRef.current) {&#xA;      setError(&#x27;FFmpeg is not loaded yet. Please wait.&#x27;);&#xA;      return;&#xA;    }&#xA;    if (files.length === 0) {&#xA;      setError(&#x27;Please select images first to generate a video.&#x27;);&#xA;      return;&#xA;    }&#xA;&#xA;    setIsConvertingImages(true);&#xA;    setError(null);&#xA;    setVideoGenerationProgress(&#x27;&#x27;);&#xA;&#xA;    try {&#xA;      const ffmpeg = ffmpegRef.current;&#xA;      const targetExtension = &#x27;jpeg&#x27;; // &lt;--- Define your target extension here (e.g., &#x27;png&#x27;, &#x27;webp&#x27;)&#xA;      const convertedImageNames: string[] = [];&#xA;&#xA;      // Convert all uploaded images to the target format&#xA;      for (let i = 0; i &lt; files.length; i&#x2B;&#x2B;) {&#xA;          const file = files[i];&#xA;          // Give the original file a unique name in FFmpeg&#x27;s VFS&#xA;          const originalFileName = `original_image_${String(i).padStart(3, &#x27;0&#x27;)}.${file.name.split(&#x27;.&#x27;).pop()}`;&#xA;          // Define the output filename with the target extension&#xA;          const convertedFileName = `converted_image_${String(i).padStart(3, &#x27;0&#x27;)}.${targetExtension}`;&#xA;          convertedImageNames.push(convertedFileName);&#xA;&#xA;          // Write the original file data to FFmpeg&#x27;s virtual file system&#xA;          await ffmpeg.writeFile(`${originalFileName}`, await fetchFile(file));&#xA;          console.log(`Wrote original ${originalFileName} to FFmpeg FS`);&#xA;&#xA;          setVideoGenerationProgress(`Converting ${file.name} to ${targetExtension.toUpperCase()}...`);&#xA;&#xA;          await ffmpeg.exec([&#x27;-i&#x27;, originalFileName, &#x27;-q:v&#x27;, &#x27;5&#x27;, convertedFileName]);     //    &lt;------&#xA;&#xA;          console.log(`Converted ${originalFileName} to ${convertedFileName}`);&#xA;&#xA;          // Delete the original file from VFS to free up memory&#xA;          await ffmpeg.deleteFile(originalFileName);&#xA;          console.log(`Deleted original ${originalFileName} from FFmpeg FS`);&#xA;      }&#xA;&#xA;      setFiles([]);&#xA;&#xA;      setVideoGenerationProgress(`All images converted to ${targetExtension.toUpperCase()}.`);&#xA;    } catch (err) {&#xA;      console.error(&#x27;Error converting images:&#x27;, err);&#xA;      setError(`Failed to convert images: ${err instanceof Error ? err.message : String(err)}`);&#xA;    } finally {&#xA;      setIsConvertingImages(false);&#xA;    }&#xA;  };&#xA;&#xA;  return (&#xA;    <div classname="min-h-screen bg-gray-100 flex items-center justify-center p-4 relative overflow-hidden">&#xA;      <div classname="bg-white p-8 rounded-lg shadow-xl w-full max-w-md z-10 relative"> {/* Ensure content is above overlay */}&#xA;        <h2 classname="text-2xl font-semibold text-gray-800 mb-6 text-center">Select your images</h2>&#xA;&#xA;        {/* Regular File Input Area (still needed for click-to-select) */}&#xA;        > document.getElementById(&#x27;file-input&#x27;)?.click()}&#xA;        >&#xA;        &#xA;          &#xA;          <svg classname="mx-auto h-12 w-12 text-gray-400" fill="none" viewbox="0 0 24 24" stroke="currentColor">&#xA;            <path strokelinecap="round" strokelinejoin="round" strokewidth="2" d="M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12"></path>&#xA;          </svg>&#xA;          <p classname="mt-2 text-sm text-gray-600">&#xA;            <span classname="font-medium text-blue-600">Click to select</span>&#xA;          </p>&#xA;          <p classname="text-xs text-gray-500">Supports multiple formats</p>&#xA;        </div>&#xA;&#xA;        {/* Selected Files Display */}&#xA;        {files.length > 0 &amp;&amp; (&#xA;          <div data-testid="selected-files-display" classname="selected-files-display mt-4 p-3 bg-blue-50 border border-blue-200 rounded-md text-sm text-blue-800">&#xA;            <p classname="font-semibold mb-2">Selected Files ({files.length}):</p>&#xA;            <ul classname="max-h-40 overflow-y-auto">&#xA;              {files.map((file) => (&#xA;                <li key="{file.name}" classname="flex items-center justify-between py-1">&#xA;                  <span>{file.name}</span>&#xA;                </li>&#xA;              ))}&#xA;            </ul>&#xA;          </div>&#xA;        )}&#xA;&#xA;        {/* Error Message */}&#xA;        {error &amp;&amp; (&#xA;          <div classname="mt-4 p-3 bg-red-50 border border-red-200 rounded-md text-sm text-red-800">&#xA;            {error}&#xA;          </div>&#xA;        )}&#xA;&#xA;        {/* Image conversion Progress/Status */}&#xA;        {isConvertingImages &amp;&amp; (&#xA;          <div classname="mt-4 p-3 bg-purple-50 border border-purple-200 rounded-md text-sm text-purple-800 text-center">&#xA;            <p classname="font-semibold">Converting images</p>&#xA;            <p classname="text-xs mt-1">{videoGenerationProgress}</p>&#xA;          </div>&#xA;        )}&#xA;        {!ffmpegLoaded &amp;&amp; (&#xA;          <div classname="mt-4 p-3 bg-yellow-50 border border-yellow-200 rounded-md text-sm text-yellow-800 text-center">&#xA;            Loading video tools (FFmpeg)... Please wait.&#xA;          </div>&#xA;        )}&#xA;&#xA;        {/* Convert images button */}&#xA;        &#xA;          Convert images&#xA;        &#xA;      </div>&#xA;    &#xA;  );&#xA;}&#xA;</htmlinputelement></string></ffmpeg></string>

    &#xA;

    The next js page above

    &#xA;

  • ffmpeg 4 : Using the stream_loop parameter to loop the audio during a video ends up with an infinite loop

    17 juin 2020, par JarsOfJam-Scheduler

    Summary

    &#xA;&#xA;

      &#xA;
    1. Context
    2. &#xA;

    3. The software I use
    4. &#xA;

    5. The problem
    6. &#xA;

    7. Results
      &#xA;4.1. Actual Results

      &#xA;&#xA;

      4.2. Expected Results

    8. &#xA;

    9. What did I try to fix the bug ?

    10. &#xA;

    11. How to reproduce this bug : minimal and testable example with the provided required data

    12. &#xA;

    13. The question

    14. &#xA;

    15. Sources

    16. &#xA;

    &#xA;&#xA;


    &#xA;&#xA;

    Context

    &#xA;&#xA;

    I would want to set an audio WAV as the background sound of a video WEBM. The video can be shorter or longer than the audio. At the moment I add the audio over the video, I don't know the length of both streams. The audio must repeat until the video ends (the audio can be truncated if the video ends before the end of the last repetition of the audio).

    &#xA;&#xA;

    The software I use

    &#xA;&#xA;

    I use ffmpeg version 4.2.2-1ubuntu1 18.04.sav0.

    &#xA;&#xA;

    The problem

    &#xA;&#xA;

    ffmpeg seems to enter in an infinite loop when it proccesses in order to mix the audio and the video. Also, the length of the currently-generating-output-file (which contains both video and audio) is equal to the length of the audio, instead of the length of the video.

    &#xA;&#xA;

    The problem seems to be triggered by this command line :

    &#xA;&#xA;

    ffmpeg -i directory_1/video.webm -stream_loop -1 -fflags &#x2B;shortest -max_interleave_delta 50000 -i directory_2/audio.wav directory_3/video_and_audio.webm&#xA;

    &#xA;&#xA;

    Results

    &#xA;&#xA;

    Actual Results

    &#xA;&#xA;

    Three things :

    &#xA;&#xA;

      &#xA;
    1. The infinite loop of the ffmpeg process : I must manually stop the ffmpeg process

    2. &#xA;

    3. The output video file with music (which is currently generating but output anyway) : it contains both audio and video. But the length of the output file is equal to the length of the audio, instead of the length of the video.

    4. &#xA;

    5. The following output logs :

    6. &#xA;

    &#xA;&#xA;

    &#xA;

    ffmpeg version 4.2.2-1ubuntu1 18.04.sav0 Copyright (c) 2000-2019 the&#xA; FFmpeg developers built with gcc 7 (Ubuntu 7.5.0-3ubuntu1 18.04)
    &#xA; configuration : —prefix=/usr —extra-version='1ubuntu1 18.04.sav0'&#xA; —toolchain=hardened —libdir=/usr/lib/x86_64-linux-gnu —incdir=/usr/include/x86_64-linux-gnu —arch=amd64 —enable-gpl —disable-stripping —enable-avresample —disable-filter=resample —enable-avisynth —enable-gnutls —enable-ladspa —enable-libaom —enable-libass —enable-libbluray —enable-libbs2b —enable-libcaca —enable-libcdio —enable-libcodec2 —enable-libflite —enable-libfontconfig —enable-libfreetype —enable-libfribidi —enable-libgme —enable-libgsm —enable-libjack —enable-libmp3lame —enable-libmysofa —enable-libopenjpeg —enable-libopenmpt —enable-libopus —enable-libpulse —enable-librsvg —enable-librubberband —enable-libshine —enable-libsnappy —enable-libsoxr —enable-libspeex —enable-libssh —enable-libtheora —enable-libtwolame —enable-libvidstab —enable-libvorbis —enable-libvpx —enable-libwavpack —enable-libwebp —enable-libx265 —enable-libxml2 —enable-libxvid —enable-libzmq —enable-libzvbi —enable-lv2 —enable-omx —enable-openal —enable-opencl —enable-opengl —enable-sdl2 —enable-libdc1394 —enable-libdrm —enable-libiec61883 —enable-nvenc —enable-chromaprint —enable-frei0r —enable-libx264 —enable-shared libavutil 56. 31.100 / 56. 31.100 libavcodec 58. 54.100 / 58. 54.100 libavformat 58. 29.100 / 58. 29.100 libavdevice 58. 8.100 /&#xA; 58. 8.100 libavfilter 7. 57.100 / 7. 57.100 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 5.100 / 5. 5.100 libswresample 3. 5.100 / 3. 5.100 libpostproc 55. 5.100 /&#xA; 55. 5.100 Input #0, matroska,webm, from 'youtubed/my_youtube_video.webm' : Metadata :&#xA; encoder : Chrome Duration : N/A, start : 0.000000, bitrate : N/A&#xA; Stream #0:0(eng) : Video : vp8, yuv420p(progressive), 3200x1608, SAR 1:1 DAR 400:201, 1k tbr, 1k tbn, 1k tbc (default)&#xA; Metadata :&#xA; alpha_mode : 1 Guessed Channel Layout for Input Stream #1.0 : stereo Input #1, wav, from 'tmp_music/original_music.wav' :
    &#xA; Duration : 00:00:11.78, bitrate : 1411 kb/s&#xA; Stream #1:0 : Audio : pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, stereo, s16, 1411 kb/s Stream mapping : Stream #0:0 -> #0:0 (vp8&#xA; (native) -> vp9 (libvpx-vp9)) Stream #1:0 -> #0:1 (pcm_s16le&#xA; (native) -> opus (libopus)) Press [q] to stop, [?] for help&#xA; [libvpx-vp9 @ 0x5645268aed80] v1.8.2 [libopus @ 0x5645268b09c0] No bit&#xA; rate set. Defaulting to 96000 bps. Output #0, webm, to&#xA; 'youtubed/my_youtube_video_with_music.webm' : Metadata :&#xA; encoder : Lavf58.29.100&#xA; Stream #0:0(eng) : Video : vp9 (libvpx-vp9), yuv420p(progressive), 3200x1608 [SAR 1:1 DAR 400:201], q=-1—1, 200 kb/s, 1k fps, 1k tbn, 1k&#xA; tbc (default)&#xA; Metadata :&#xA; alpha_mode : 1&#xA; encoder : Lavc58.54.100 libvpx-vp9&#xA; Side data :&#xA; cpb : bitrate max/min/avg : 0/0/0 buffer size : 0 vbv_delay : -1&#xA; Stream #0:1 : Audio : opus (libopus), 48000 Hz, stereo, s16, 96 kb/s&#xA; Metadata :&#xA; encoder : Lavc58.54.100 libopus

    &#xA;

    &#xA;&#xA;

    Expected Results

    &#xA;&#xA;

      &#xA;
    1. No infinite loop during the ffmpeg process

    2. &#xA;

    3. Concerning the output logs, I don't know what it should look.

    4. &#xA;

    5. The output file with the audio and the video should :

      &#xA;&#xA;

      3.1. If the video is longer than the audio, then the audio is repeated until it exactly fits the video. The audio can be truncated.

      &#xA;&#xA;

      3.2. If the video is shorter than the audio, then the audio is truncated and exactly fits the video.

      &#xA;&#xA;

      3.3. If both video and audio are of the same length, then the audio exactly fits the video.

    6. &#xA;

    &#xA;&#xA;

    How to reproduce this bug ? (+ required data)

    &#xA;&#xA;

      &#xA;
    1. Download the following files (resp. audio and video) (I must refresh these download links every 24 hours) :

      &#xA;&#xA;

      1.1. https://a.uguu.se/dmgsmItjJMDq_audio.wav

      &#xA;&#xA;

      1.2. https://a.uguu.se/w3qHDlGq6mOW_video.webm

    2. &#xA;

    3. Move them into the directory/directories of your choice.

    4. &#xA;

    5. Open your CLI, move to the adequat directory and copy/paste/execute the instruction given in Part. The Problem (don't forget to eventually modify this instruction by indicating the adequat directories, according to step 2.).

    6. &#xA;

    7. You'll face my problem.

    8. &#xA;

    &#xA;&#xA;

    What did I try to fix the bug ?

    &#xA;&#xA;

    Nothing, since I don't even understand why the bug occures.

    &#xA;&#xA;

    The question

    &#xA;&#xA;

    How to correct my command in order to mix these audio and video streams without any infinite loop during the ffmpeg process, keeping in mind that I don't know their length, and that audio must be repeated in order to fit the video, even if audio must be truncated (in the case of the last repetition of the audio file must be truncated because the video stream has just ended) ?

    &#xA;&#xA;

    Sources

    &#xA;&#xA;

    The source is the command line you can find in Part. The problem.

    &#xA;

  • Complie FFMpeg with Xcode5 preview's clang

    2 août 2013, par Yeung

    With release of IOS7 beta, I would like to try compiling ffmpeg for ios7.

    There is a lots answer like this. It use the llvm-gcc as compiler.

    However, seem like Xcode 5 would not include llvm-gcc. Then I have no choice but to use clang to compile.

    I use the following to config :

    export IOS_SDK="/Applications/Xcode5-DP4.app/Contents/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk"

    ./configure $CONFIG_DISABLE_FLAG $CONFIG_ENABLE_FLAG \
    --arch=arm \
    --target-os=darwin \
    --cc=/Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang \
    --as=&#39;gas-preprocessor.pl /Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang&#39; \
    --ar=/Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar  \
    --sysroot=$IOS_SDK \
    --cpu=cortex-a8 \
    --extra-cflags="-arch armv7 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant -isysroot ${IOS_SDK} -I${IOS_SDK}/usr/include" \
    --extra-ldflags="-arch armv7 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant -isysroot ${IOS_SDK} -L${IOS_SDK}/usr/lib" \
    --enable-pic

    clang would probably not take CFLAGS other than -arch  -isysroot -I into account, but let it be.

    I seems it can complie but I encounter this. Actually, I don't understand the answer in this question. Using the external assembler ? Yes, the toolchains do have a assembler stated it is GNU version 1.38. Using --as=/Application/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/as, it even cannot pass the check as test. It fall back to use &#39;gas-preprocessor.pl $CC&#39;

    Here is the config log to cannot pass :

       check_asm armv6t2 "movt r0, #0"
    check_as
    BEGIN /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
       1   void foo(void){ __asm__ volatile("movt r0, #0"); }
    END /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    /Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/as --sysroot=/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -arch armv7 -no-cpp-precomp -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant -isysroot /Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -I/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/include -mcpu=cortex-a8 -fPIC -c -o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.g896h4Sb.o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    FATAL:/Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../libexec/as/arm/as: I don&#39;t understand &#39;-&#39; flag!
    check_asm armvfp "fadds s0, s0, s0"
    check_as
    BEGIN /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
       1   void foo(void){ __asm__ volatile("fadds s0, s0, s0"); }
    END /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    /Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/as --sysroot=/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -arch armv7 -no-cpp-precomp -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant -isysroot /Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -I/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/include -mcpu=cortex-a8 -fPIC -c -o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.g896h4Sb.o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    FATAL:/Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../libexec/as/arm/as: I don&#39;t understand &#39;-&#39; flag!
    check_asm neon "vadd.i16 q0, q0, q0"
    check_as
    BEGIN /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
       1   void foo(void){ __asm__ volatile("vadd.i16 q0, q0, q0"); }
    END /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    /Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/as --sysroot=/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -arch armv7 -no-cpp-precomp -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant -isysroot /Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -I/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/include -mcpu=cortex-a8 -fPIC -c -o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.g896h4Sb.o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    FATAL:/Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../libexec/as/arm/as: I don&#39;t understand &#39;-&#39; flag!
    check_asm vfpv3 "vmov.f32 s0, #1.0"
    check_as
    BEGIN /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
       1   void foo(void){ __asm__ volatile("vmov.f32 s0, #1.0"); }
    END /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    /Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/as --sysroot=/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -arch armv7 -no-cpp-precomp -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant -isysroot /Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -I/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/include -mcpu=cortex-a8 -fPIC -c -o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.g896h4Sb.o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    FATAL:/Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../libexec/as/arm/as: I don&#39;t understand &#39;-&#39; flag!
    check_asm asm_mod_y "vmul.i32 d0, d0, %y0" :: "x"(0)
    check_as
    BEGIN /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
       1   void foo(void){ __asm__ volatile("vmul.i32 d0, d0, %y0" :: "x"(0)); }
    END /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    /Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/as --sysroot=/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -arch armv7 -no-cpp-precomp -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant -isysroot /Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -I/Applications/Xcode5-DP4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/include -mcpu=cortex-a8 -fPIC -c -o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.g896h4Sb.o /var/folders/gx/_k242p6s5cb0hss_pvj4s7vh0000gn/T//ffconf.4wwSSmLm.c
    FATAL:/Applications/Xcode5-DP4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../libexec/as/arm/as: I don&#39;t understand &#39;-&#39; flag!
    check_asm gnu_as ".macro m n
    \n:.int 0
    .endm
    m x"

    Yep, with config --disable-asm would complie but it probably not a option.