Recherche avancée

Médias (91)

Autres articles (81)

  • XMP PHP

    13 mai 2011, par

    Dixit Wikipedia, XMP signifie :
    Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
    Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
    XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)

  • Organiser par catégorie

    17 mai 2013, par

    Dans MédiaSPIP, une rubrique a 2 noms : catégorie et rubrique.
    Les différents documents stockés dans MédiaSPIP peuvent être rangés dans différentes catégories. On peut créer une catégorie en cliquant sur "publier une catégorie" dans le menu publier en haut à droite ( après authentification ). Une catégorie peut être rangée dans une autre catégorie aussi ce qui fait qu’on peut construire une arborescence de catégories.
    Lors de la publication prochaine d’un document, la nouvelle catégorie créée sera proposée (...)

  • Récupération d’informations sur le site maître à l’installation d’une instance

    26 novembre 2010, par

    Utilité
    Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
    Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...)

Sur d’autres sites (4955)

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

  • 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

  • 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