Recherche avancée

Médias (91)

Autres articles (86)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

Sur d’autres sites (10936)

  • Using and building FFMPEG library in Android Studio(Cmake)

    8 septembre 2017, par y3k00000

    As title, I’m trying to use the ffmpeg source code as library in Android Studio on Ubuntu Linux, but meeting some trouble in compilation stage. I think I must be missing some compile option but having no idea what I miss, can somebody lend a hand ?

    My codes & settings are below :

    A simple auto-generated .cpp

    #include
    #include <string>
    #include "libavcodec/aacenc.h"

    extern "C"
    JNIEXPORT jstring JNICALL
    Java_y3k_testffmpegnative_MainActivity_stringFromJNI(
           JNIEnv *env,
           jobject /* this */) {
       std::string hello = "Hello from C++";
       return env->NewStringUTF(hello.c_str());
    }

    AACEncContext * aacEncContext; // Just trying by adding this.
    </string>

    I’ve tried these Gradle setting and it didn’t help :

    android {
       ....
       externalNativeBuild {
           cmake {
               arguments "-DANDROID_TOOLCHAIN=clang"
               cFlags "-std=c99"
               cppFlags "-frtti","-fexceptions"
           }
       }
    }
    ....

    CMakeLists.txt

    (Android Studio generated)
    ....
    include_directories( /home/y3k/ffmpeg )

    Error message while compiling :

    /home/y3k/ffmpeg/libavutil/float_dsp.h
    Error:(164, 50) error: expected ')'
    Information:(164, 30) to match this '('
    Error:(164, 50) error: expected ')'
    Information:(164, 30) note: to match this '('
    /home/y3k/ffmpeg/libavutil/fixed_dsp.h
    Error:(153, 44) error: expected ')'
    Information:(153, 30) to match this '('
    Error:(153, 44) error: expected ')'
    Information:(153, 30) note: to match this '('
    /home/y3k/ffmpeg/libavcodec/mpeg4audio.h
    Error:(44, 8) error: unknown type name 'av_export'
    Error:(44, 18) error: expected unqualified-id
    Error:(44, 8) error: unknown type name 'av_export'
    Error:(44, 18) error: expected unqualified-id
    /home/y3k/ffmpeg/libavcodec/aac.h
    Error:(294, 21) error: expected member name or ';' after declaration specifiers
    Error:(294, 21) error: expected member name or ';' after declaration specifiers

    FFMpeg config.h generated by this script :

    NDK=/home/y3k/Android/Sdk/ndk-bundle
    SYSROOT=$NDK/platforms/android-23/arch-arm/
    TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
    function build_one
    {
    ./configure \
    --prefix=$PREFIX \
    --disable-shared \
    --enable-static \
    --disable-doc \
    --disable-ffmpeg \
    --disable-ffplay \
    --disable-ffprobe \
    --disable-ffserver \
    --disable-avdevice \
    --disable-doc \
    --disable-symver \
    --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
    --target-os=linux \
    --arch=arm \
    --enable-cross-compile \
    --sysroot=$SYSROOT \
    --extra-cflags="-Os -fpic $ADDI_CFLAGS" \
    --extra-ldflags="$ADDI_LDFLAGS" \
    $ADDITIONAL_CONFIGURE_FLAG
    make clean
    make
    make install
    }
    CPU=arm
    PREFIX=$(pwd)/android/$CPU
    ADDI_CFLAGS="-marm"
    build_one

    By tracing the errors I found these lines :

    in float_dsp.h, fixed_dsp.h :

    void (*butterflies_float)(float *av_restrict v1, float *av_restrict v2, int len);

    av_restrict defined in config.h

    #define av_restrict restrict

    in aac.h :

    ....
    struct AACContext {
       AVClass        *class;
    ....

    in mpeg4audio.h :

    extern av_export const int avpriv_mpeg4audio_sample_rates[16];

    So I’m guessing it’s because the compiler misrecognized the C code as C++, I tried adding these :

    arguments "-DANDROID_TOOLCHAIN=clang"
    cFlags "-std=c99"

    to my build.gradle but didn’t help. Having no idea where to move on. :(

    I’m using the latest stable version of Android Studio on Ubuntu desktop. Please don’t be hesitate to ask if any extra information is required.

    Also I’ve been tried edit my native-lib.cpp into .c (Surely with the code contents changed), but wasn’t working either.

    Appreciate for any help.

  • VB.NET FFMPEG Stops

    18 mars 2012, par Mcqueen_23

    Hi evryone i'm trying to convert files using ffmpeg

    my codes only fetched


    — -Skip--- Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Enrique Iglesias - Tonight.mp4' : Metadata : major_brand : mp42 minor_version : 0 compatible_brands : isommp42 creation_time : 2011-03-20 19:07:02 Duration : 00:03:50.05, start : 0.000000, bitrate : 219 kb/s Stream #0.0(und) : Video : h264, yuv420p, 480x360 [PAR 1:1 DAR 4:3], 117 kb/s, 29.97 fps, 59.75 tbr, 1k tbn, 59.83 tbc Metadata : creation_time : 1970-01-01 00:00:00 Stream #0.1(und) : Audio : aac, 44100 Hz, stereo, s16, 95 kb/s Metadata : creation_time : 2011-03-20 19:07:03 Output #0, mp3, to 'Enrique Iglesias - Tonight.mp3' : Metadata : major_brand : mp42 minor_version : 0 compatible_brands : isommp42 TDEN : 2011-03-20 19:07:02 TSSE : Lavf52.94.0 Stream #0.0(und) : Audio : libmp3lame, 44100 Hz, stereo, s16, 64 kb/s Metadata : creation_time : 2011-03-20 19:07:03

    and cannot i cannot get the next lines ung Proccess.ErrorDataReceived event

    Here are my Codes

       Public Structure ItemStruct
           Public ID, URL, FileName, FileExt, ConvertExt, ConvertQuery As String
           Public FileSize As Int64
           Public Method, status As Method
           Public prog_bar As ProgressBar
           Public DeleteOrigin, TrimStart, TrimEnd As Boolean
       End Structure

       Friend Class Converter
           Public busy As Boolean = False
           Private _Item As ItemStruct
           Public Event ProgressChange(ByVal id As String, ByVal percent As Integer, ByVal etr As TimeSpan)
           Public Event ConvertFinish(ByVal id As String)
           Private m As Threading.Thread
           Private WithEvents timer As New Timer With {.Interval = 100}

           Public Sub New()
           End Sub

           Public Sub New(ByVal item As ItemStruct)
               _Item = item
               m = New Threading.Thread(AddressOf Convert)
           End Sub

           Public Sub Start()
               m.Start()
               timer.Start()
           End Sub

           Private duration As Decimal = 0.0F
           Private current As Decimal = 0.0F
           Private varIsSet As Boolean = False
           Private Sub Convert()
               Dim cmd As String = _Item.ConvertQuery
               Dim inputName As String = _Item.URL
               Dim fName As String = _Item.FileName & _Item.FileExt
               Dim dir As String = _Item.URL.Replace(fName, "")
               Dim ouputName As String = dir & _Item.FileName & "." & _Item.ConvertExt
               cmd = Replace(cmd, "--i", inputName)
               cmd = Replace(cmd, "--o", ouputName)
               cmd = cmd.Remove(0, 6)
               cmd = cmd.Trim
               Dim proc As New Process
               With proc.StartInfo
                   .FileName = Path.Combine(Application.StartupPath, "ffmpeg.exe")
                   .Arguments = cmd
                   proc.EnableRaisingEvents = False
                   .UseShellExecute = False
                   .CreateNoWindow = True
                   .RedirectStandardError = True
                   .RedirectStandardOutput = True
                   .RedirectStandardInput = True
                   AddHandler proc.ErrorDataReceived, AddressOf UpdateData
                   proc.Start()
                   proc.BeginErrorReadLine()
               End With
           End Sub

           Public Sub Cancel()
               m.Abort()
           End Sub

           Private Sub UpdateData(ByVal sender As Object, ByVal e As DataReceivedEventArgs)
               Dim s As String = e.Data
               If s.Contains("Duration: ") Then
                   duration = GetDuration(s)
               ElseIf s.Contains("frame=") Then
                   current = GetTime(s)
               Else
                   Dim proc As Process = DirectCast(sender, Process)
                   Dim m As Match = Regex.Match(s, "^File\ &#39;(.*?)&#39;\ already\ exists", RegexOptions.IgnoreCase)
                   If m.Success Then
                       Dim w As StreamWriter = proc.StandardInput
                       If MessageBox.Show("File &#39;" & m.Groups(1).ToString & "&#39; already exists." & vbNewLine & "Do you want to Overwrite existing file?", "Overwrite", MessageBoxButtons.YesNo) = DialogResult.Yes Then
                           w.WriteLine("y")
                       Else
                           w.WriteLine("n")
                       End If
                   End If

                   &#39;RaiseEvent ConvertFinish(_Item.ID)
                   &#39;proc.WaitForExit()
                   &#39;proc.Close()
               End If
               Debug.Print(s)
               If Not duration And Not current Then varIsSet = False Else varIsSet = True
           End Sub

           Private Function GetDuration(ByVal s As String) As Double
               Dim m As Match = Regex.Match(s, "Duration: ((.*?), (.*))")
               If m.Success Then
                   Dim duration As String = m.Groups(2).ToString
                   Return TimeSpan.Parse(duration).TotalSeconds
               End If
               Return Nothing
           End Function

           Private Function GetTime(ByVal s As String) As Double
               Dim m As Match = Regex.Match(s, "(.*) time=(.*) bitrate")
               If m.Success Then
                   Dim currentTime As String = m.Groups(2).ToString
                   Return TimeSpan.Parse(currentTime).TotalSeconds
               End If
               Return Nothing
           End Function

           Private Sub timer_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles timer.Tick
               If varIsSet Then
                   Dim etr As TimeSpan = TimeSpan.FromSeconds(CInt(current / duration))
                   etr = New TimeSpan(etr.Hours, etr.Minutes, etr.Seconds)
                   RaiseEvent ProgressChange(_Item.ID, CInt((current / duration) * 100 * 100), etr)
               End If
           End Sub
       End Class
  • How to batch add chapters to video

    2 juin 2021, par throwaway513

    I have 20 videos and chapter files in .mp4 and .txt formats. Their filenames are 1.mp4 / 1.txt all the way to 20.mp4 / 20 txt. I want to match the same filename video to same filename chapters.

    &#xA;

    How to batch add the metadata chapters to these videos in ffmpeg ? I am using windows

    &#xA;

    for %%a in ("*.mp4") do ffmpeg -i "%%a" -i "%%a.txt" -map_metadata 1 -map 0 "Chapvids\%%~na"&#xA;

    &#xA;

    1.mp4.txt : No such file or directory

    &#xA;