Recherche avancée

Médias (91)

Autres articles (62)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

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

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

Sur d’autres sites (10143)

  • Convert 2 channel mp4 to each mono wav file using FFMPEG or Python code

    30 mai 2024, par Harish Alwala

    I am new to audio files and its codecs.

    


    I would like to convert a 2 channel mp4 file to a single mono wav files.

    


    My understanding is a when I say 2 channel, it stores speech coming from each microphone in a separate channel. And when I split the channels to each individual mono wav files, I get speech of each microphone.

    


    My intension here is to get the speech from each channel and convert them to text. This way I can set the name of the speaker based on channel.

    


    I tried with ffmpeg and python code as well, unfortunately I get two files with same content.

    


    Looking at the following details
can someone construct ffmpeg command or python script to convert the 2 channel mp4 file to 2 individual mono wav files.

    


    FFprobe
ffprobe -i Two-Channel.mp4 -show_streams -select_streams a

    


    Result

    


    Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    encoder         : Google
  Duration: 00:52:42.19, start: 0.000000, bitrate: 421 kb/s
  Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 640x360 [SAR 1:1 DAR 16:9], 322 kb/s, 25 fps, 25 tbr, 12800 tbn (default)
      Metadata:
        handler_name    : ISO Media file produced by Google Inc.
        vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96 kb/s (default)
      Metadata:
        handler_name    : ISO Media file produced by Google Inc.
        vendor_id       : [0][0][0][0]
[STREAM]
index=1
codec_name=aac
codec_long_name=AAC (Advanced Audio Coding)
profile=LC
codec_type=audio
codec_tag_string=mp4a
codec_tag=0x6134706d
sample_fmt=fltp
sample_rate=44100
channels=2
channel_layout=stereo
bits_per_sample=0
initial_padding=0
id=0x2
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/44100
start_pts=0
start_time=0.000000
duration_ts=139452416
duration=3162.186304
bit_rate=96000
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=136184
nb_read_frames=N/A
nb_read_packets=N/A
extradata_size=16
DISPOSITION:default=1
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
DISPOSITION:non_diegetic=0
DISPOSITION:captions=0
DISPOSITION:descriptions=0
DISPOSITION:metadata=0
DISPOSITION:dependent=0
DISPOSITION:still_image=0
TAG:language=eng
TAG:handler_name=ISO Media file produced by Google Inc.
TAG:vendor_id=[0][0][0][0]
[/STREAM] 


    


    FFmpeg command

    


    ffmpeg -i Two-Channel.mp4 -filter_complex "pan=mono|c0=0c0" left_channel.wav

    


    python code
using FFPMEG I converted mp4 to wav and then tried below code
enter image description here
enter image description here

    


  • Why is FFProbe (using fluent-ffmpeg) returning incomplete and inaccurate metadata ?

    18 avril 2024, par volume one

    I am returning metadata about a file using ffprobe. The file can be found here.

    


    I am using fluent-ffmpeg in Node.js which shouldn't make any difference. Its just nicer to use than a command-line.

    


    The code goes like this :

    


    ffmpeg.ffprobe('https://devxxx001.s3.amazonaws.com/vertical-hd_720_1280_30fps.mp4'), function (err, metadata) {
 console.log(JSON.stringify(metadata));
});


    


    The metadata output I receive is this :

    


    {
  "streams": [
    {
      "index": 0,
      "codec_name": "h264",
      "codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
      "profile": "High",
      "codec_type": "video",
      "codec_tag_string": "avc1",
      "codec_tag": "0x31637661",
      "width": 720,
      "height": 1280,
      "coded_width": 720,
      "coded_height": 1280,
      "closed_captions": 0,
      "film_grain": 0,
      "has_b_frames": 2,
      "sample_aspect_ratio": "N/A",
      "display_aspect_ratio": "N/A",
      "pix_fmt": "yuv420p",
      "level": 32,
      "color_range": "tv",
      "color_space": "bt709",
      "color_transfer": "bt709",
      "color_primaries": "bt709",
      "chroma_location": "left",
      "field_order": "progressive",
      "refs": 1,
      "is_avc": "true",
      "nal_length_size": 4,
      "id": "0x1",
      "r_frame_rate": "30/1",
      "avg_frame_rate": "30/1",
      "time_base": "1/30",
      "start_pts": 0,
      "start_time": 0,
      "duration_ts": 267,
      "duration": 8.9,
      "bit_rate": 2382497,
      "max_bit_rate": "N/A",
      "bits_per_raw_sample": 8,
      "nb_frames": 267,
      "nb_read_frames": "N/A",
      "nb_read_packets": "N/A",
      "extradata_size": 47,
      "tags": {
        "creation_time": "2020-05-19T10:09:46.000000Z",
        "language": "und",
        "handler_name": "L-SMASH Video Handler",
        "vendor_id": "[0][0][0][0]",
        "encoder": "AVC Coding"
      },
      "disposition": {
        "default": 1,
        "dub": 0,
        "original": 0,
        "comment": 0,
        "lyrics": 0,
        "karaoke": 0,
        "forced": 0,
        "hearing_impaired": 0,
        "visual_impaired": 0,
        "clean_effects": 0,
        "attached_pic": 0,
        "timed_thumbnails": 0,
        "captions": 0,
        "descriptions": 0,
        "metadata": 0,
        "dependent": 0,
        "still_image": 0
      }
    }
  ],
  "format": {
    "filename": "https:/devxxx001.s3.amazonaws.com/vertical-hd_720_1280_30fps.mp4",
    "nb_streams": 1,
    "nb_programs": 0,
    "format_name": "mov,mp4,m4a,3gp,3g2,mj2",
    "format_long_name": "QuickTime / MOV",
    "start_time": 0,
    "duration": 8.9,
    "size": 2654719,
    "bit_rate": 2386264,
    "probe_score": 100,
    "tags": {
      "major_brand": "mp42",
      "minor_version": "0",
      "compatible_brands": "mp42mp41isomavc1",
      "creation_time": "2020-05-19T10:09:46.000000Z"
    }
  },
  "chapters": []
}


    


    I need to know the aspect ratio of the video so that I can display it properly but ffprobe is returning "N/A" :

    


     "sample_aspect_ratio": "N/A",
 "display_aspect_ratio": "N/A",


    


    In addition, if I want to know the video container format (mp4 in this case), it is showing multiple formats instead of just one :

    


     "format_name": "mov,mp4,m4a,3gp,3g2,mj2",
 "format_long_name": "QuickTime / MOV",


    


    I believe it may be an issue with the ffprobe command but I am unable to pass it options like on the command-line. Even then I don't know what options need to be passed to get the correct metadata.

    


  • How to reduce file size of a video without loosing quality using an ffmpeg command ? [closed]

    11 mars 2024, par Shadab Mehdi

    I have received a video that is Full HD 1920 x 1080 and is nearly 62 GB. I know something is off here. I have seen similar videos under 3-4 GB.

    


    I tried to reduce the size by running the following command

    


    ffmpeg -i MyVideo.mpg -vcodec libx265 -crf 28 Compressed.mp4


    


    But it produced horrible out-of-sync audio. The video quality was OK.

    


    Here is a dump of ffprobe video output for better understanding.

    


    ffprobe -v quiet -print_format json -show_format -show_streams -print_format json MyVideo.mpg


    


    The output of the above command produces this response

    


    {
  "streams": [
    {
      "index": 0,
      "codec_name": "mpeg2video",
      "codec_long_name": "MPEG-2 video",
      "profile": "Main",
      "codec_type": "video",
      "codec_tag_string": "[0][0][0][0]",
      "codec_tag": "0x0000",
      "width": 1920,
      "height": 1080,
      "coded_width": 0,
      "coded_height": 0,
      "closed_captions": 0,
      "film_grain": 0,
      "has_b_frames": 1,
      "sample_aspect_ratio": "1:1",
      "display_aspect_ratio": "16:9",
      "pix_fmt": "yuv420p",
      "level": 4,
      "color_range": "tv",
      "chroma_location": "left",
      "field_order": "progressive",
      "refs": 1,
      "id": "0x1e0",
      "r_frame_rate": "25/1",
      "avg_frame_rate": "25/1",
      "time_base": "1/90000",
      "start_pts": 22503,
      "start_time": "0.250033",
      "duration_ts": 643863600,
      "duration": "7154.040000",
      "extradata_size": 150,
      "disposition": {
        "default": 0,
        "dub": 0,
        "original": 0,
        "comment": 0,
        "lyrics": 0,
        "karaoke": 0,
        "forced": 0,
        "hearing_impaired": 0,
        "visual_impaired": 0,
        "clean_effects": 0,
        "attached_pic": 0,
        "timed_thumbnails": 0,
        "non_diegetic": 0,
        "captions": 0,
        "descriptions": 0,
        "metadata": 0,
        "dependent": 0,
        "still_image": 0
      },
      "side_data_list": [
        {
          "side_data_type": "CPB properties",
          "max_bitrate": 80000000,
          "min_bitrate": 0,
          "avg_bitrate": 0,
          "buffer_size": 9781248,
          "vbv_delay": -1
        }
      ]
    },
    {
      "index": 1,
      "codec_name": "mp2",
      "codec_long_name": "MP2 (MPEG audio layer 2)",
      "codec_type": "audio",
      "codec_tag_string": "[0][0][0][0]",
      "codec_tag": "0x0000",
      "sample_fmt": "s16p",
      "sample_rate": "48000",
      "channels": 2,
      "channel_layout": "stereo",
      "bits_per_sample": 0,
      "initial_padding": 0,
      "id": "0x1c0",
      "r_frame_rate": "0/0",
      "avg_frame_rate": "0/0",
      "time_base": "1/90000",
      "start_pts": 15303,
      "start_time": "0.170033",
      "duration_ts": 643870080,
      "duration": "7154.112000",
      "bit_rate": "384000",
      "disposition": {
        "default": 0,
        "dub": 0,
        "original": 0,
        "comment": 0,
        "lyrics": 0,
        "karaoke": 0,
        "forced": 0,
        "hearing_impaired": 0,
        "visual_impaired": 0,
        "clean_effects": 0,
        "attached_pic": 0,
        "timed_thumbnails": 0,
        "non_diegetic": 0,
        "captions": 0,
        "descriptions": 0,
        "metadata": 0,
        "dependent": 0,
        "still_image": 0
      }
    }
  ],
  "format": {
    "filename": "MyVideo.mpg",
    "nb_streams": 2,
    "nb_programs": 0,
    "format_name": "mpeg",
    "format_long_name": "MPEG-PS (MPEG-2 Program Stream)",
    "start_time": "0.170033",
    "duration": "7154.120000",
    "size": "62752258052",
    "bit_rate": "70171881",
    "probe_score": 26
  }
}