Recherche avancée

Médias (0)

Mot : - Tags -/protocoles

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

Autres articles (111)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

  • Supporting all media types

    13 avril 2011, par

    Unlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

Sur d’autres sites (4007)

  • I want the mp4 file shooting date to be the xml file name

    21 novembre 2019, par re6

    In Windows 10 environment, I would like to change the name of both “file with extension mp4” and “file with extension xml” to the shooting date of mp4 file.

    C0001.MP4
    C0001M01.XML
    C0002.MP4
    C0002M01.XML

    Specifically, I want to change the file name as follows.

    2019-10-23_13-10-32.MP4
    2019-10-23_13-10-32.XML
    2019-10-23_13-10-49.MP4
    2019-10-23_13-10-49.XML

    I tried to think that using the ext option would give me the expected result, but I didn’t get the expected result.

    First time

    C:\Users\user>exiftool "-FileNamehoge/C0001M01.XML
    Warning: No writable tags set from C:/hoge/C0001M01.XML
    Warning: [minor] Error 3 placing ::NonRealTimeMetaAudioFormatAudioRecPortTrackDst in structure or list - C:/hoge/C0002M01.XML
    Warning: No writable tags set from C:/hoge/C0002M01.XML
       1 directories scanned
       0 image files updated
       2 image files unchanged

    Second time

    C:\Users\user>exiftool "-FileNamehoge/C0001.MP4
    Warning: [minor] Error 3 placing ::NonRealTimeMetaLtcChangeTableLtcChangeStatus in structure or list - C:/hoge/C0001M01.XML
    Warning: No writable tags set from C:/hoge/C0001M01.XML
    Warning: [minor] The ExtractEmbedded option may find more tags in the movie data - C:/hoge/C0002.MP4
    Warning: [minor] Error 3 placing ::NonRealTimeMetaAudioFormatAudioRecPortPort in structure or list - C:/hoge/C0002M01.XML
    Warning: No writable tags set from C:/hoge/C0002M01.XML
       1 directories scanned
       2 image files updated
       2 image files unchanged
  • Rails 5 with Carrierwave and S3 - creating multiple video formats for DASH streaming works but mpd file breaks

    22 novembre 2019, par Milind

    what I am doing -
    i have a Rails 5 app for video streaming(DASH MPEG) that uses FFMPEG to get encoded stream videos by converting any single video into multiple videos of multiple bit rates/size and primarily also MPD FILE that can be played easily on html video player, which i have already tested by manually running the ffmpeg scripts on the console that generates all the files.However, I want to automate this process and hence carrierwave comes into the pictures.
    Here, i use carrierwave to generate different versions(size/bitrate) of videos(mp4/webm) to upload to s3 but during running the version, where all the versions are successfully created in tmp folder, only the last version(mpd) that needs to create .mpd file, carrierwave creates a mp4 video file and just replaces the extension instead of actually creating the mpd file.

    So in the aws s3(screenshot added below), i can see my all versions and mpd file , but that mpd file which must be xml file is actually a mp4 video file or uploaded version file itself.
    I have also tried to create new file during the process, but it never works.
    Has some one encountered this problem ?

    any help will be greatly appreciated ?

    Ny code snippets below - model,uploader,output of script on the console during upload, s3 screenshot

      ##### models/video.rb ##########

       mount_uploader :video, VideoUploader  

      ####### uploaders/video_uploader.rb #########

       class VideoUploader < CarrierWave::Uploader::Base


       include CarrierWave::MiniMagick
       include CarrierWave::Video
       include CarrierWave::Video::Thumbnailer
       include ::CarrierWave::Backgrounder::Delay

       ####### for streaming ..first get the audio and then convert the input video into multiple bitrates/scale #######

       ###first get audio and then get all different versions of same video
       version :video_audio do
         process :get_audio

         def get_audio
           `ffmpeg -y -i "#{file.path}" -c:a aac -ac 2 -ab 128k -vn video_audio.mp4`
         end

           def full_filename(for_file)
             "video_audio.mp4"
           end

           def filename
             "video_audio.mp4"
           end        
       end

       ####### similar to the above i have various version like ...#########

       version :video_1080 do...end
       version :video_720 do... end
       version :video_480 do ...end
       ...and so on..and all these versions are successfully created and uploaded to s3, however..in next version ...show it also creates a video file whereas i need a simple mpd file ONLY.

            ###this is where even after everything works, in S3, i can see a video file of version mpd and not actual mpd file
            version :mpd  do
              process :get_manifest
                 ###here in the command below, the video.mpd file is successfully obtained but its uploaded as video.mpd file of added/uploaded video file and not a new mpd file
                 ###tried with ffmpeg -f webm_dash_manifest -i too, but s3 still shows a mp4 file
                 `MP4Box -dash 1000 -rap -frag-rap -profile onDemand -out video.mpd video_1080.mp4 video_720.mp4 video_480.mp4 video_360.mp4 video_240.mp4 video_audio.mp4 `

              end
             end

            ######### sidekiq console output - successful mpd is generated ################
                 DASH-ing files - single segment
                 Subsegment duration 1.000 - Fragment duration: 1.000 secs
                 Splitting segments and fragments at GOP boundaries
                 DASHing file video_1080.mp4
                 DASHing file video_720.mp4                                  
                 DASHing file video_480.mp4                                  
                 DASHing file video_360.mp4                                  
                 DASHing file video_240.mp4                                  
                 DASHing file video_audio.mp4                                
                \[DASH\] Generating MPD at time 2019-11-22T00:01:59.872Z      
                 mpd_1mb.mp4
                 mpd_video.mpd

    this is what the uploaded files looks on s3, notice the video.mpd, its a mp4 video file just like others which should have been a simple mpd file of not more than 2kb.

    Is there something that I am missing ?
    Can Carrierwave do this or is it not made for this ?
    Do I have to write a callback and then programmatically upload files to s3, if carrierwave is not helping in this regard ?

    Kindly provide any suggestion or useful advice so that I can move ahead.

    aws s3 list

  • Frozen images at the beginning of a mts to mp4 conversion

    26 novembre 2019, par nounou

    I am trying to convert a file h264 mpegts to h264 mp4.

    ffmpeg.exe -i input.mts -f mp4 -vf "scale=512:384 " -c:a aac -b:a 64k  -c:v libx264   -pix_fmt yuv420p -movflags faststart -map 0:v -map 0:a  -y  output.mp4

    This conversion produces an output file longer than the input file and the image freezes (around 1 second) at startup, but there is already sound
    After about 1 second the picture and sound are synchronous.
    I have these messages before transcoding :

    ffmpeg version git-2019-11-13-a7245ad Copyright (c) 2000-2019 the FFmpeg developers
     built with gcc 9.2.1 (GCC) 20191010
     configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libo
    pencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-lib
    webp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enab
    le-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
     libavutil      56. 35.101 / 56. 35.101
     libavcodec     58. 62.100 / 58. 62.100
     libavformat    58. 35.100 / 58. 35.100
     libavdevice    58.  9.100 / 58.  9.100
     libavfilter     7. 66.100 /  7. 66.100
     libswscale      5.  6.100 /  5.  6.100
     libswresample   3.  6.100 /  3.  6.100
     libpostproc    55.  6.100 / 55.  6.100
    [mp3float @ 00000000003f63c0] Header missing
    [h264 @ 00000000003f5300] SPS unavailable in decode_picture_timing
    [h264 @ 00000000003f5300] non-existing PPS 0 referenced
    [h264 @ 00000000003f5300] SPS unavailable in decode_picture_timing
    [h264 @ 00000000003f5300] non-existing PPS 0 referenced
    [h264 @ 00000000003f5300] decode_slice_header error
    [h264 @ 00000000003f5300] no frame!
    [h264 @ 00000000003f5300] SPS unavailable in decode_picture_timing
    [h264 @ 00000000003f5300] non-existing PPS 0 referenced
    [h264 @ 00000000003f5300] SPS unavailable in decode_picture_timing
    -----
    [h264 @ 00000000003f5300] SPS unavailable in decode_picture_timing
    [h264 @ 00000000003f5300] non-existing PPS 0 referenced
    [h264 @ 00000000003f5300] decode_slice_header error
    [h264 @ 00000000003f5300] no frame!
    [mpegts @ 00000000003f1500] start time for stream 0 is not set in estimate_timings_from_pts
    [mpegts @ 00000000003f1500] PES packet size mismatch
    ---
    Press [q] to stop, [?] for help
    [mp2 @ 0000000003b1e500] Header missing
    Error while decoding stream #0:2: Invalid data found when processing input
    [libx264 @ 0000000002b200c0] using SAR=4/3
    [libx264 @ 0000000002b200c0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
    [libx264 @ 0000000002b200c0] profile High, level 2.1, 4:2:0, 8-bit
    [libx264 @ 0000000002b200c0] 264 - core 158 - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x1
    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 interl
    =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 qc
    tio=1.40 aq=1:1.00
    Output #0, mp4, to 'c:\temp\output.mp4':
     Metadata:
       encoder         : Lavf58.35.100
       Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 512x384 [SAR 4:3 DAR 16:9], q=-1--1, 25 fps, 12800 tbn, 25 tbc
       Metadata:
         encoder         : Lavc58.62.100 libx264
       Side data:
         cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
       Stream #0:1(fre): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 64 kb/s
       Metadata:
         encoder         : Lavc58.62.100 aac
    c:\temp\input.MTS: corrupt decoded frame in stream 10:10.56 bitrate= 198.6kbits/s dup=42 drop=0 speed=7.03x
    [mp4 @ 0000000002a16d40] Starting second pass: moving the moov atom to the beginning of the filespeed=7.12x
    frame=  750 fps=175 q=-1.0 Lsize=    1806kB time=00:00:30.01 bitrate= 492.8kbits/s dup=42 drop=0 speed=   7x
    video:1546kB audio:236kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.326814%

    If I try to cut the first 3 seconds on the source file.

    ffmpeg.exe -ss 3 -i input.mts -f mpegts -c:v copy -c:a copy -map v -map a input_ss3.mts

    Then redo the conversion h264 mpegts to h264 mp4
    I have the same result.

    For the moment, in order to have an output file without frozen images at the beginning ; i need to do the following :

    I have to extract the video and sound, look for the delay betwen video and sound, cutting sound at the begining of audio file,
    concatenate the audio file et the video file, then convert to h264 - mp4.

    ffmpeg.exe -ss xx -i input.mts  -f mpegts -c:a copy -vn audio.mts
    ffmpeg.exe -i input.mts  -f mpegts -c:v copy -an video.mts
    ffmpeg.exe -i audio.mst -i video.mts   -f mpegts  -c:v copy -c:a copy -map 1:v -map 0:a  new_input.mts
    ffmpeg.exe -i new_input.mts -f mp4 -vf "scale=512:384 " -c:a aac -b:a 64k  -c:v libx264   -pix_fmt yuv420p -movflags faststart -map 0:v -map 0:a  output.mp4

    Can you tell me if there is a way to fix the source file or if there is another way to do it ?

    Maybe I should cut my source file to the first intra image and do the conversion afterwards.

    ffmpeg.exe input.mts -ss first_intra_frame  -f mpegts -c:v copy -c:a copy -map v -map a:0 new_input.mts
    ffmpeg.exe -i new_input.mts -f mp4 -vf "scale=512:384 " -c:a aac -b:a 64k  -c:v libx264   -pix_fmt yuv420p -movflags faststart -map 0:v -map 0:a  output.mp4

    But I have to find the exact position of the first intra frame.

    I try with the command :

    ffmpeg.exe -skip_frame nokey -i input.mts -t 10  -vf showinfo -vsync 0 -f null -

    But, I get "pts_time" which does not seem to match the position in "seconds.milliseconds" of the first intra frame.

    I try with the command :

    ffprobe.exe  input.mts -show_frames  -select_streams v:0  -show_entries frame=pkt_pts,pkt_pts_time,pkt_dts,pkt_dts_time,pkt_pos,coded_picture_number,pict_type > input.txt

    I also do not find the position of the first intra frame.

    Could you help me to find the exact position in "seconds.milliseconds" of the firsts intra frames ?