Recherche avancée

Médias (1)

Mot : - Tags -/punk

Autres articles (82)

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • Dépôt de média et thèmes par FTP

    31 mai 2013, par

    L’outil MédiaSPIP traite aussi les média transférés par la voie FTP. Si vous préférez déposer par cette voie, récupérez les identifiants d’accès vers votre site MédiaSPIP et utilisez votre client FTP favori.
    Vous trouverez dès le départ les dossiers suivants dans votre espace FTP : config/ : dossier de configuration du site IMG/ : dossier des média déjà traités et en ligne sur le site local/ : répertoire cache du site web themes/ : les thèmes ou les feuilles de style personnalisées tmp/ : dossier de travail (...)

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

Sur d’autres sites (7125)

  • find in bash to convert files with ffmpeg - paths being changed

    20 avril 2017, par J V

    Trying to convert a bunch of files with ffmpeg and find.

    find -name "*.mkv" | while read f
    do ffmpeg -i "$f" -c copy -y "${f%.*}.mp4"
    done

    This should work right ? It results in :

    + read f
    + ffmpeg -i '/file.mkv' -c copy -y '/file.mp4'
    ffmpeg version N-61155-g61ff043 Copyright (c) 2000-2014 the FFmpeg developers
     built on Mar  7 2014 19:17:59 with gcc 4.8 (Debian 4.8.2-16)
    /file.mkv: No such file or directory

    So I naturally try sticking the missing dot in front of the variable :

    find -name "*.mkv" | while read f
    do ffmpeg -i ".$f" -c copy -y ".${f%.*}.mp4"
    done

    The result :

    + read f
    + ffmpeg -i '../file.mkv' -c copy -y '../file.mp4'
    ffmpeg version N-61155-g61ff043 Copyright (c) 2000-2014 the FFmpeg developers
     built on Mar  7 2014 19:17:59 with gcc 4.8 (Debian 4.8.2-16)
    ../file.mkv: No such file or directory

    It’s specifically removing the dot at the worst possible time. Any idea what’s causing this and how to fix it ?

    PS : -print0 in find has the same problem, and none of the files have newlines etc.

    Edit : As requested, the echo. The echo works as expected :

    find -name "*.mkv" | while read f
    do echo ffmpeg -i "$f" -c copy -y "${f%.*}.mp4"
    done

    + read f
    + echo ffmpeg -i './file.mkv' -c copy -y './file.mp4'
    ffmpeg -i ./file.mkv -c copy -y ./file.mp4

    Edit2 : With a file with a space and one without, the filename without is changed. If I rm the one with a space the one without works fine.

    $ ls
    + ls
    file.mkv  file two.mkv
    $ find -name "*.mkv" | while read f; do ffmpeg -i "$f" -c copy -y "${f%.*}.mp4"; done
    + find -name '*.mkv'
    + read f
    + ffmpeg -i './file two.mkv' -c copy -y './file two.mp4'
    ffmpeg version N-61155-g61ff043 Copyright (c) 2000-2014 the FFmpeg developers
     built on Mar  7 2014 19:17:59 with gcc 4.8 (Debian 4.8.2-16)
     configuration: --arch=amd64 --enable-pthreads --enable-libopencv --enable-librtmp --enable-libopenjpeg --enable-libopus --enable-libspeex --enable-libtheora --enable-vaapi --enable-runtime-cpudetect --enable-libvorbis --enable-zlib --enable-swscale --enable-libcdio --enable-bzlib --enable-libdc1394 --enable-frei0r --enable-gnutls --enable-libgsm --enable-libmp3lame --enable-libpulse --enable-vdpau --enable-libvpx --enable-gpl --enable-x11grab --enable-libx264 --enable-filters
     libavutil      52. 66.101 / 52. 66.101
     libavcodec     55. 52.102 / 55. 52.102
     libavformat    55. 33.101 / 55. 33.101
     libavdevice    55. 11.100 / 55. 11.100
     libavfilter     4.  3.100 /  4.  3.100
     libswscale      2.  5.101 /  2.  5.101
     libswresample   0. 18.100 /  0. 18.100
     libpostproc    52.  3.100 / 52.  3.100
    Input #0, matroska,webm, from './file two.mkv':
     Metadata:
       COMPATIBLE_BRANDS: isommp42
       MAJOR_BRAND     : mp42
       MINOR_VERSION   : 0
       ENCODER         : Lavf55.33.101
     Duration: 00:08:15.54, start: 0.000000, bitrate: 194 kb/s
       Stream #0:0(und): Audio: aac, 44100 Hz, stereo, fltp (default)
       Metadata:
         CREATION_TIME   : 2014-03-07 04:33:17
         LANGUAGE        : und
         HANDLER_NAME    : IsoMedia File Produced by Google, 5-11-2011
    Output #0, mp4, to './file two.mp4':
     Metadata:
       COMPATIBLE_BRANDS: isommp42
       MAJOR_BRAND     : mp42
       MINOR_VERSION   : 0
       encoder         : Lavf55.33.101
       Stream #0:0(und): Audio: aac ([64][0][0][0] / 0x0040), 44100 Hz, stereo (default)
       Metadata:
         CREATION_TIME   : 2014-03-07 04:33:17
         LANGUAGE        : und
         HANDLER_NAME    : IsoMedia File Produced by Google, 5-11-2011
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
    Press [q] to stop, [?] for help
    size=   11698kB time=00:08:15.53 bitrate= 193.4kbits/s    
    video:0kB audio:11614kB subtitle:0 data:0 global headers:0kB muxing overhead 0.724668%
    + read f
    + ffmpeg -i /file.mkv -c copy -y /file.mp4
    ffmpeg version N-61155-g61ff043 Copyright (c) 2000-2014 the FFmpeg developers
     built on Mar  7 2014 19:17:59 with gcc 4.8 (Debian 4.8.2-16)
     configuration: --arch=amd64 --enable-pthreads --enable-libopencv --enable-librtmp --enable-libopenjpeg --enable-libopus --enable-libspeex --enable-libtheora --enable-vaapi --enable-runtime-cpudetect --enable-libvorbis --enable-zlib --enable-swscale --enable-libcdio --enable-bzlib --enable-libdc1394 --enable-frei0r --enable-gnutls --enable-libgsm --enable-libmp3lame --enable-libpulse --enable-vdpau --enable-libvpx --enable-gpl --enable-x11grab --enable-libx264 --enable-filters
     libavutil      52. 66.101 / 52. 66.101
     libavcodec     55. 52.102 / 55. 52.102
     libavformat    55. 33.101 / 55. 33.101
     libavdevice    55. 11.100 / 55. 11.100
     libavfilter     4.  3.100 /  4.  3.100
     libswscale      2.  5.101 /  2.  5.101
     libswresample   0. 18.100 /  0. 18.100
     libpostproc    52.  3.100 / 52.  3.100
    /file.mkv: No such file or directory
    + read f
  • How to fix ffmpeg's official tutorials03 bug that sound does't work well ? [on hold]

    31 janvier 2019, par xiaodai

    I want to make a player with ffmpeg and sdl. The tutorial I used is this though I have resampled the audio from decode stream, the sound still plays with loud noise.

    I have no ideas to fix it anymore.

    I used the following :

    • the latest ffmpeg and sdl1
    • Visual Studio 2010
    // tutorial03.c
    // A pedagogical video player that will stream through every video frame as fast as it can
    // and play audio (out of sync).
    //
    // This tutorial was written by Stephen Dranger (dranger@gmail.com).
    //
    // Code based on FFplay, Copyright (c) 2003 Fabrice Bellard,
    // and a tutorial by Martin Bohme (boehme@inb.uni-luebeckREMOVETHIS.de)
    // Tested on Gentoo, CVS version 5/01/07 compiled with GCC 4.1.1
    //
    // Use the Makefile to build all examples.
    //
    // Run using
    // tutorial03 myvideofile.mpg
    //
    // to play the stream on your screen.

    extern "C"{
    #include <libavcodec></libavcodec>avcodec.h>
    #include <libavformat></libavformat>avformat.h>
    #include <libswscale></libswscale>swscale.h>
    #include <libavutil></libavutil>channel_layout.h>
    #include <libavutil></libavutil>common.h>
    #include <libavutil></libavutil>frame.h>
    #include <libavutil></libavutil>samplefmt.h>
    #include "libswresample/swresample.h"

    #include <sdl></sdl>SDL.h>
    #include <sdl></sdl>SDL_thread.h>
    };
    #ifdef __WIN32__
    #undef main /* Prevents SDL from overriding main() */
    #endif

    #include

    #define SDL_AUDIO_BUFFER_SIZE 1024
    #define MAX_AUDIO_FRAME_SIZE 192000

    struct SwrContext *audio_swrCtx;
    FILE *pFile=fopen("output.pcm", "wb");
    FILE *pFile_stream=fopen("output_stream.pcm","wb");
    int audio_len;
    typedef struct PacketQueue {
       AVPacketList *first_pkt, *last_pkt;
       int nb_packets;
       int size;
       SDL_mutex *mutex;
       SDL_cond *cond;
    } PacketQueue;

    PacketQueue audioq;

    int quit = 0;

    void packet_queue_init(PacketQueue *q) {
       memset(q, 0, sizeof(PacketQueue));
       q->mutex = SDL_CreateMutex();
       q->cond = SDL_CreateCond();
    }

    int packet_queue_put(PacketQueue *q, AVPacket *pkt) {

       AVPacketList *pkt1;

       if(av_dup_packet(pkt) &lt; 0) {
           return -1;
       }

       pkt1 = (AVPacketList *)av_malloc(sizeof(AVPacketList));

       if(!pkt1) {
           return -1;
       }

       pkt1->pkt = *pkt;
       pkt1->next = NULL;


       SDL_LockMutex(q->mutex);

       if(!q->last_pkt) {
           q->first_pkt = pkt1;
       }

       else {
           q->last_pkt->next = pkt1;
       }

       q->last_pkt = pkt1;
       q->nb_packets++;
       q->size += pkt1->pkt.size;
       SDL_CondSignal(q->cond);

       SDL_UnlockMutex(q->mutex);
       return 0;
    }

    static int packet_queue_get(PacketQueue *q, AVPacket *pkt, int block) {
       AVPacketList *pkt1;
       int ret;

       SDL_LockMutex(q->mutex);

       for(;;) {

           if(quit) {
               ret = -1;
               break;
           }

           pkt1 = q->first_pkt;

           if(pkt1) {
               q->first_pkt = pkt1->next;

               if(!q->first_pkt) {
                   q->last_pkt = NULL;
               }

               q->nb_packets--;
               q->size -= pkt1->pkt.size;
               *pkt = pkt1->pkt;
               av_free(pkt1);
               ret = 1;
               break;

           } else if(!block) {
               ret = 0;
               break;

           } else {
               SDL_CondWait(q->cond, q->mutex);
           }
       }

       SDL_UnlockMutex(q->mutex);
       return ret;
    }

    int audio_decode_frame(AVCodecContext *aCodecCtx, uint8_t *audio_buf, int buf_size) {


        static AVPacket pkt;
        static uint8_t *audio_pkt_data = NULL;
        static int audio_pkt_size = 0;
        static AVFrame frame;

        int len1, data_size = 0;

        for(;;) {
            while(audio_pkt_size > 0) {
                int got_frame = 0;
                len1 = avcodec_decode_audio4(aCodecCtx, &amp;frame, &amp;got_frame, &amp;pkt);

                if(len1 &lt; 0) {
                    /* if error, skip frame */
                    audio_pkt_size = 0;
                    break;
                }
                audio_pkt_data += len1;
                audio_pkt_size -= len1;
                data_size = 0;
                /*

                au_convert_ctx = swr_alloc();
                au_convert_ctx=swr_alloc_set_opts(au_convert_ctx,out_channel_layout, out_sample_fmt, out_sample_rate,
                in_channel_layout,pCodecCtx->sample_fmt , pCodecCtx->sample_rate,0, NULL);
                swr_init(au_convert_ctx);

                swr_convert(au_convert_ctx,&amp;out_buffer, MAX_AUDIO_FRAME_SIZE,(const uint8_t **)pFrame->data , pFrame->nb_samples);


                */
                if( got_frame ) {
                    audio_swrCtx=swr_alloc();
                    audio_swrCtx=swr_alloc_set_opts(audio_swrCtx,  // we're allocating a new context
                        AV_CH_LAYOUT_STEREO,//AV_CH_LAYOUT_STEREO,     // out_ch_layout
                        AV_SAMPLE_FMT_S16,         // out_sample_fmt
                        44100, // out_sample_rate
                        aCodecCtx->channel_layout, // in_ch_layout
                        aCodecCtx->sample_fmt,     // in_sample_fmt
                        aCodecCtx->sample_rate,    // in_sample_rate
                        0,                         // log_offset
                        NULL);                     // log_ctx
                    int ret=swr_init(audio_swrCtx);
                    int out_samples = av_rescale_rnd(swr_get_delay(audio_swrCtx, aCodecCtx->sample_rate) + 1024, 44100, aCodecCtx->sample_rate, AV_ROUND_UP);
                    ret=swr_convert(audio_swrCtx,&amp;audio_buf, MAX_AUDIO_FRAME_SIZE,(const uint8_t **)frame.data ,frame.nb_samples);
                    data_size =
                        av_samples_get_buffer_size
                        (
                        &amp;data_size,
                        av_get_channel_layout_nb_channels(AV_CH_LAYOUT_STEREO),
                        ret,
                        AV_SAMPLE_FMT_S16,
                        1
                        );
                     fwrite(audio_buf, 1, data_size, pFile);
                    //memcpy(audio_buf, frame.data[0], data_size);
                    swr_free(&amp;audio_swrCtx);
                }

                if(data_size &lt;= 0) {
                    /* No data yet, get more frames */
                    continue;
                }

                /* We have data, return it and come back for more later */
                return data_size;
            }

            if(pkt.data) {
                av_free_packet(&amp;pkt);
            }

            if(quit) {
                return -1;
            }

            if(packet_queue_get(&amp;audioq, &amp;pkt, 1) &lt; 0) {
                return -1;
            }

            audio_pkt_data = pkt.data;
            audio_pkt_size = pkt.size;
        }
    }



    void audio_callback(void *userdata, Uint8 *stream, int len) {

       AVCodecContext *aCodecCtx = (AVCodecContext *)userdata;
       int /*audio_len,*/ audio_size;

       static uint8_t audio_buf[(MAX_AUDIO_FRAME_SIZE * 3) / 2];
       static unsigned int audio_buf_size = 0;
       static unsigned int audio_buf_index = 0;

       //SDL_memset(stream, 0, len);
       while(len > 0) {

           if(audio_buf_index >= audio_buf_size) {
               /* We have already sent all our data; get more */
               audio_size = audio_decode_frame(aCodecCtx, audio_buf, audio_buf_size);

               if(audio_size &lt; 0) {
                   /* If error, output silence */
                   audio_buf_size = 1024; // arbitrary?
                   memset(audio_buf, 0, audio_buf_size);

               } else {
                   audio_buf_size = audio_size;
               }

               audio_buf_index = 0;
           }

           audio_len = audio_buf_size - audio_buf_index;

           if(audio_len > len) {
               audio_len = len;
           }

           memcpy(stream, (uint8_t *)audio_buf , audio_len);
           //SDL_MixAudio(stream,(uint8_t*)audio_buf,audio_len,SDL_MIX_MAXVOLUME);
           fwrite(audio_buf, 1, audio_len, pFile_stream);
           len -= audio_len;
           stream += audio_len;
           audio_buf_index += audio_len;
           audio_len=len;
       }
    }

    int main(int argc, char *argv[]) {
       AVFormatContext *pFormatCtx = NULL;
       int             i, videoStream, audioStream;
       AVCodecContext  *pCodecCtx = NULL;
       AVCodec         *pCodec = NULL;
       AVFrame         *pFrame = NULL;
       AVPacket        packet;
       int             frameFinished;

       //float           aspect_ratio;

       AVCodecContext  *aCodecCtx = NULL;
       AVCodec         *aCodec = NULL;

       SDL_Overlay     *bmp = NULL;
       SDL_Surface     *screen = NULL;
       SDL_Rect        rect;
       SDL_Event       event;
       SDL_AudioSpec   wanted_spec, spec;

       struct SwsContext   *sws_ctx            = NULL;
       AVDictionary        *videoOptionsDict   = NULL;
       AVDictionary        *audioOptionsDict   = NULL;

       if(argc &lt; 2) {
               fprintf(stderr, "Usage: test <file>\n");
               exit(1);
           }

           // Register all formats and codecs
       av_register_all();

       if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_TIMER)) {
           fprintf(stderr, "Could not initialize SDL - %s\n", SDL_GetError());
           exit(1);
       }

       // Open video file
       if(avformat_open_input(&amp;pFormatCtx, argv[1]/*"file.mov"*/, NULL, NULL) != 0) {
           return -1;    // Couldn't open file
       }

       // Retrieve stream information
       if(avformat_find_stream_info(pFormatCtx, NULL) &lt; 0) {
           return -1;    // Couldn't find stream information
       }

       // Dump information about file onto standard error
       av_dump_format(pFormatCtx, 0, argv[1], 0);

       // Find the first video stream
       videoStream = -1;
       audioStream = -1;

       for(i = 0; i &lt; pFormatCtx->nb_streams; i++) {
           if(pFormatCtx->streams[i]->codec->codec_type == AVMEDIA_TYPE_VIDEO &amp;&amp;
               videoStream &lt; 0) {
                   videoStream = i;
           }

           if(pFormatCtx->streams[i]->codec->codec_type == AVMEDIA_TYPE_AUDIO &amp;&amp;
               audioStream &lt; 0) {
                   audioStream = i;
           }
       }

       if(videoStream == -1) {
           return -1;    // Didn't find a video stream
       }

       if(audioStream == -1) {
           return -1;
       }

       aCodecCtx = pFormatCtx->streams[audioStream]->codec;
       // Set audio settings from codec info
       wanted_spec.freq = 44100;
       wanted_spec.format = AUDIO_S16SYS;
       wanted_spec.channels = av_get_channel_layout_nb_channels(AV_CH_LAYOUT_STEREO);;
       wanted_spec.silence = 0;
       wanted_spec.samples = 1024;
       wanted_spec.callback = audio_callback;
       wanted_spec.userdata = aCodecCtx;

       if(SDL_OpenAudio(&amp;wanted_spec, &amp;spec) &lt; 0) {
           fprintf(stderr, "SDL_OpenAudio: %s\n", SDL_GetError());
           return -1;
       }


       aCodec = avcodec_find_decoder(aCodecCtx->codec_id);

       if(!aCodec) {
           fprintf(stderr, "Unsupported codec!\n");
           return -1;
       }

       avcodec_open2(aCodecCtx, aCodec, &amp;audioOptionsDict);

       // audio_st = pFormatCtx->streams[index]
       packet_queue_init(&amp;audioq);
       SDL_PauseAudio(0);

       // Get a pointer to the codec context for the video stream
       pCodecCtx = pFormatCtx->streams[videoStream]->codec;

       // Find the decoder for the video stream
       pCodec = avcodec_find_decoder(pCodecCtx->codec_id);

       if(pCodec == NULL) {
           fprintf(stderr, "Unsupported codec!\n");
           return -1; // Codec not found
       }

       // Open codec
       if(avcodec_open2(pCodecCtx, pCodec, &amp;videoOptionsDict) &lt; 0) {
           return -1;    // Could not open codec
       }

       // Allocate video frame
       pFrame = av_frame_alloc();

       // Make a screen to put our video

    #ifndef __DARWIN__
       screen = SDL_SetVideoMode(pCodecCtx->width, pCodecCtx->height, 0, 0);
    #else
       screen = SDL_SetVideoMode(pCodecCtx->width, pCodecCtx->height, 24, 0);
    #endif

       if(!screen) {
           fprintf(stderr, "SDL: could not set video mode - exiting\n");
           exit(1);
       }

       // Allocate a place to put our YUV image on that screen
       bmp = SDL_CreateYUVOverlay(pCodecCtx->width,
           pCodecCtx->height,
           SDL_YV12_OVERLAY,
           screen);
       sws_ctx =
           sws_getContext
           (
           pCodecCtx->width,
           pCodecCtx->height,
           pCodecCtx->pix_fmt,
           pCodecCtx->width,
           pCodecCtx->height,
           PIX_FMT_YUV420P,
           SWS_BILINEAR,
           NULL,
           NULL,
           NULL
           );


       // Read frames and save first five frames to disk
       i = 0;

       while(av_read_frame(pFormatCtx, &amp;packet) >= 0) {
           // Is this a packet from the video stream?
           if(packet.stream_index == videoStream) {
               // Decode video frame
               avcodec_decode_video2(pCodecCtx, pFrame, &amp;frameFinished,
                   &amp;packet);

               // Did we get a video frame?
               if(frameFinished) {
                   SDL_LockYUVOverlay(bmp);

                   AVPicture pict;
                   pict.data[0] = bmp->pixels[0];
                   pict.data[1] = bmp->pixels[2];
                   pict.data[2] = bmp->pixels[1];

                   pict.linesize[0] = bmp->pitches[0];
                   pict.linesize[1] = bmp->pitches[2];
                   pict.linesize[2] = bmp->pitches[1];

                   // Convert the image into YUV format that SDL uses
                   sws_scale
                       (
                       sws_ctx,
                       (uint8_t const * const *)pFrame->data,
                       pFrame->linesize,
                       0,
                       pCodecCtx->height,
                       pict.data,
                       pict.linesize
                       );

                   SDL_UnlockYUVOverlay(bmp);

                   rect.x = 0;
                   rect.y = 0;
                   rect.w = pCodecCtx->width;
                   rect.h = pCodecCtx->height;
                   SDL_DisplayYUVOverlay(bmp, &amp;rect);
                   SDL_Delay(40);
                   av_free_packet(&amp;packet);
               }

           } else if(packet.stream_index == audioStream) {
               packet_queue_put(&amp;audioq, &amp;packet);

           } else {
               av_free_packet(&amp;packet);
           }

           // Free the packet that was allocated by av_read_frame
           SDL_PollEvent(&amp;event);

           switch(event.type) {
           case SDL_QUIT:
               quit = 1;
               SDL_Quit();
               exit(0);
               break;

           default:
               break;
           }

       }

       // Free the YUV frame
       av_free(pFrame);
       /*swr_free(&amp;audio_swrCtx);*/
       // Close the codec
       avcodec_close(pCodecCtx);
       fclose(pFile);
       fclose(pFile_stream);
       // Close the video file
       avformat_close_input(&amp;pFormatCtx);

       return 0;
    }
    </file>

    I hope to play normally.

  • How can I remove "original display aspect ratio" from a mp4 file using ffmpeg ?

    21 juin 2020, par aveceux

    I wish to remove the "original display aspect ratio" entry from the video section.

    &#xA;&#xA;

    Video&#xA;ID                             : 1&#xA;Format                         : AVC&#xA;Format/Info                    : Advanced Video Codec&#xA;Format profile                 : High@L4&#xA;Format settings                : CABAC / 4 Ref Frames&#xA;Format settings, CABAC         : Yes&#xA;Format settings, ReFrames      : 4 frames&#xA;Codec ID                       : avc1&#xA;Codec ID/Info                  : Advanced Video Coding&#xA;Duration                       : 44 min 29 s&#xA;Bit rate                       : 5 001 kb/s&#xA;Width                          : 1 920 pixels&#xA;Height                         : 1 072 pixels&#xA;Display aspect ratio           : 16:9&#xA;Original display aspect ratio  : 16:9&#xA;Frame rate mode                : Constant&#xA;Frame rate                     : 25.000 FPS&#xA;Color space                    : YUV&#xA;Chroma subsampling             : 4:2:0&#xA;Bit depth                      : 8 bits&#xA;Scan type                      : Progressive&#xA;Bits/(Pixel*Frame)             : 0.097&#xA;Stream size                    : 1.55 GiB (97%)&#xA;

    &#xA;&#xA;

    I tried the following commands,

    &#xA;&#xA;

    ffmpeg -i input.mp4 -map_metadata -1 -c copy output.mp4

    &#xA;&#xA;

    ffmpeg -i input.mp4 -metadata original_display_aspect_ratio=0 -c copy output.mp4

    &#xA;&#xA;

    but none of them worked.

    &#xA;&#xA;

    If I want to remove the "original display aspect ratio" entry completely, what ffmpeg command can I use to achieve that ?

    &#xA;&#xA;

    Thank you.

    &#xA;&#xA;

    EDIT :&#xA;The result of mediainfo -f :

    &#xA;&#xA;

    General&#xA;Count                                    : 331&#xA;Count of stream of this kind             : 1&#xA;Kind of stream                           : General&#xA;Kind of stream                           : General&#xA;Stream identifier                        : 0&#xA;Count of video streams                   : 1&#xA;Count of audio streams                   : 1&#xA;Video_Format_List                        : AVC&#xA;Video_Format_WithHint_List               : AVC&#xA;Codecs Video                             : AVC&#xA;Audio_Format_List                        : AAC LC&#xA;Audio_Format_WithHint_List               : AAC LC&#xA;Audio codecs                             : AAC LC&#xA;Complete name                            : Downloads/3.mp4&#xA;File name                                : Downloads/3.mp4&#xA;File name                                : Downloads/3&#xA;File extension                           : mp4&#xA;Format                                   : MPEG-4&#xA;Format                                   : MPEG-4&#xA;Format/Extensions usually used           : mov mp4 m4v m4a m4b m4p 3ga 3gpa 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma ismt f4a f4b f4v&#xA;Commercial name                          : MPEG-4&#xA;Format profile                           : Base Media&#xA;Internet media type                      : video/mp4&#xA;Codec ID                                 : isom&#xA;Codec ID                                 : isom (isom/iso2/avc1/mp41/letv)&#xA;Codec ID/Url                             : http://www.apple.com/quicktime/download/standalone.html&#xA;CodecID_Compatible                       : isom/iso2/avc1/mp41/letv&#xA;File size                                : 1715744367&#xA;File size                                : 1.60 GiB&#xA;File size                                : 2 GiB&#xA;File size                                : 1.6 GiB&#xA;File size                                : 1.60 GiB&#xA;File size                                : 1.598 GiB&#xA;Duration                                 : 2670080&#xA;Duration                                 : 44 min 30 s&#xA;Duration                                 : 44 min 30 s 80 ms&#xA;Duration                                 : 44 min 30 s&#xA;Duration                                 : 00:44:30.080&#xA;Duration                                 : 00:44:29:24&#xA;Duration                                 : 00:44:30.080 (00:44:29:24)&#xA;Overall bit rate                         : 5140653&#xA;Overall bit rate                         : 5 141 kb/s&#xA;Frame rate                               : 25.000&#xA;Frame rate                               : 25.000 FPS&#xA;Frame count                              : 66749&#xA;Stream size                              : 3988740&#xA;Stream size                              : 3.80 MiB (0%)&#xA;Stream size                              : 4 MiB&#xA;Stream size                              : 3.8 MiB&#xA;Stream size                              : 3.80 MiB&#xA;Stream size                              : 3.804 MiB&#xA;Stream size                              : 3.80 MiB (0%)&#xA;Proportion of this stream                : 0.00232&#xA;HeaderSize                               : 1510470&#xA;DataSize                                 : 1711755635&#xA;FooterSize                               : 2478262&#xA;IsStreamable                             : Yes&#xA;File creation date                       : UTC 2019-02-20 11:24:46.448&#xA;File creation date (local)               : 2019-02-20 19:24:46.448&#xA;File last modification date              : UTC 2017-05-26 00:00:00.000&#xA;File last modification date (local)      : 2017-05-26 08:00:00.000&#xA;Writing application                      : Lavf56.15.102&#xA;Writing application                      : Lavf56.15.102&#xA;&#xA;Video&#xA;Count                                    : 348&#xA;Count of stream of this kind             : 1&#xA;Kind of stream                           : Video&#xA;Kind of stream                           : Video&#xA;Stream identifier                        : 0&#xA;StreamOrder                              : 0&#xA;ID                                       : 1&#xA;ID                                       : 1&#xA;Format                                   : AVC&#xA;Format                                   : AVC&#xA;Format/Info                              : Advanced Video Codec&#xA;Format/Url                               : http://developers.videolan.org/x264.html&#xA;Commercial name                          : AVC&#xA;Format profile                           : High@L4&#xA;Format settings                          : CABAC / 4 Ref Frames&#xA;Format settings, CABAC                   : Yes&#xA;Format settings, CABAC                   : Yes&#xA;Format settings, ReFrames                : 4&#xA;Format settings, ReFrames                : 4 frames&#xA;Internet media type                      : video/H264&#xA;Codec ID                                 : avc1&#xA;Codec ID/Info                            : Advanced Video Coding&#xA;Duration                                 : 2669960&#xA;Duration                                 : 44 min 29 s&#xA;Duration                                 : 44 min 29 s 960 ms&#xA;Duration                                 : 44 min 29 s&#xA;Duration                                 : 00:44:29.960&#xA;Duration                                 : 00:44:29:24&#xA;Duration                                 : 00:44:29.960 (00:44:29:24)&#xA;Bit rate                                 : 5000927&#xA;Bit rate                                 : 5 001 kb/s&#xA;Width                                    : 1920&#xA;Width                                    : 1 920 pixels&#xA;Height                                   : 1072&#xA;Height                                   : 1 072 pixels&#xA;Sampled_Width                            : 1920&#xA;Sampled_Height                           : 1072&#xA;Pixel aspect ratio                       : 0.993&#xA;Display aspect ratio                     : 1.779&#xA;Display aspect ratio                     : 16:9&#xA;Original display aspect ratio            : 1.778&#xA;Original display aspect ratio            : 16:9&#xA;Rotation                                 : 0.000&#xA;Frame rate mode                          : CFR&#xA;Frame rate mode                          : Constant&#xA;FrameRate_Mode_Original                  : VFR&#xA;Frame rate                               : 25.000&#xA;Frame rate                               : 25.000 FPS&#xA;Frame count                              : 66749&#xA;Color space                              : YUV&#xA;Chroma subsampling                       : 4:2:0&#xA;Chroma subsampling                       : 4:2:0&#xA;Bit depth                                : 8&#xA;Bit depth                                : 8 bits&#xA;Scan type                                : Progressive&#xA;Scan type                                : Progressive&#xA;Bits/(Pixel*Frame)                       : 0.097&#xA;Stream size                              : 1669034254&#xA;Stream size                              : 1.55 GiB (97%)&#xA;Stream size                              : 2 GiB&#xA;Stream size                              : 1.6 GiB&#xA;Stream size                              : 1.55 GiB&#xA;Stream size                              : 1.554 GiB&#xA;Stream size                              : 1.55 GiB (97%)&#xA;Proportion of this stream                : 0.97278&#xA;Codec configuration box                  : avcC&#xA;&#xA;Audio&#xA;Count                                    : 277&#xA;Count of stream of this kind             : 1&#xA;Kind of stream                           : Audio&#xA;Kind of stream                           : Audio&#xA;Stream identifier                        : 0&#xA;StreamOrder                              : 1&#xA;ID                                       : 2&#xA;ID                                       : 2&#xA;Format                                   : AAC&#xA;Format                                   : AAC LC&#xA;Format/Info                              : Advanced Audio Codec Low Complexity&#xA;Commercial name                          : AAC&#xA;Format_AdditionalFeatures                : LC&#xA;Codec ID                                 : mp4a-40-2&#xA;Duration                                 : 2670080&#xA;Duration                                 : 44 min 30 s&#xA;Duration                                 : 44 min 30 s 80 ms&#xA;Duration                                 : 44 min 30 s&#xA;Duration                                 : 00:44:30.080&#xA;Duration                                 : 00:44:34:09&#xA;Duration                                 : 00:44:30.080 (00:44:34:09)&#xA;Bit rate mode                            : CBR&#xA;Bit rate mode                            : Constant&#xA;Bit rate                                 : 128000&#xA;Bit rate                                 : 128 kb/s&#xA;Channel(s)                               : 2&#xA;Channel(s)                               : 2 channels&#xA;Channel positions                        : Front: L R&#xA;Channel positions                        : 2/0/0&#xA;Channel layout                           : L R&#xA;Samples per frame                        : 1024&#xA;Sampling rate                            : 44100&#xA;Sampling rate                            : 44.1 kHz&#xA;Samples count                            : 117750528&#xA;Frame rate                               : 43.066&#xA;Frame rate                               : 43.066 FPS (1024 SPF)&#xA;Frame count                              : 114991&#xA;Compression mode                         : Lossy&#xA;Compression mode                         : Lossy&#xA;Stream size                              : 42721373&#xA;Stream size                              : 40.7 MiB (2%)&#xA;Stream size                              : 41 MiB&#xA;Stream size                              : 41 MiB&#xA;Stream size                              : 40.7 MiB&#xA;Stream size                              : 40.74 MiB&#xA;Stream size                              : 40.7 MiB (2%)&#xA;Proportion of this stream                : 0.02490&#xA;Default                                  : Yes&#xA;Default                                  : Yes&#xA;Alternate group                          : 1&#xA;Alternate group                          : 1&#xA;

    &#xA;