J'aimerais voir en ligne de commande toutes les informations relatives à un fichier vidéo donné, y compris la longueur, la qualité, le débit, la résolution, les formats audio et vidéo, le nombre et la langue des flux audio et des sous-titres, etc. le plus, le meilleur.
Pour le moment, je dois utiliser l'onglet "information" de VLC car même le gestionnaire de fichiers de Dolphin ne m'aide pas avec ceci: il ne montre que certaines de ces informations et seulement pour certains formats (ie .mkv
ne semble pas supporté façon).
Donnez mediainfo a essayer. Sur la ligne de commande, tapez mediainfo input.mkv
. Pour plus d'informations vidéo détaillées mediainfo --fullscan input.mkv
.
Exemple de sortie:
] .] Taille du fichier: 39,6 Mio Durée: 20s 288ms Mode de débit global: Variable Débit total: 16,4 Mbps Nom du film: Mon meilleur film Date de codage: UTC 2012-11-10 16:42:02 Application d’écriture: mkvmerge v5.8.0 ('No Sleep/Pillow') construite le 2 sept. 2012 15:37:04 Bibliothèque d'écriture: libebml v1.2.3 + libmatroska v1.3.0 Produzent: ??? ??????? Merci à: Bruce Davey Interprète principal: Rudy Youngblood Remixé par: © ???? Vidéo ID: 1 Format: AVC Format/Info: Codec vidéo avancé Profil de format: Élevé@L4.0 MultiView_Count: 2 Paramètres de format, CABAC: Oui Paramètres de format, ReFrames: 2 frames Paramètres de format, GOP: M = 2, N = 13 Mode multiplexage: suppression d'en-tête Code ID: V_MPEG4/ISO/AVC Durée: 20 s 280 ms Mode débit binaire: Variable Débit binaire: 15,8 Mbps Maximale Débit binaire um: 16,0 Mbps Largeur: 1 920 pixels Hauteur: 1 080 pixels Format d'affichage: 16: 9 Mode cadence de prise de vue: Constante Cadence de prise de vue: 25.000 fps Espace colorimétrique: YUV Sous-échantillonnage de la chrominance: 4: 2: 0 Profondeur du bit: 8 bits Type de numérisation: Entrelacé Ordre de numérisation: Premier champ en premier Bits/(Pixel * Frame): 0,304 Taille du flux: 38,2 Mio (96%) Titre: Sony Hardware Video H. 264 Codeur Langue: Anglais Par défaut: Oui Forcé : Non Audio ID: 2 Format: AC-3 Format/Info: Codage audio 3 Extension de mode : CM (complet principal) Paramètres de format, Endianness: Big Mode multiplexage: suppression d'en-tête Code ID: A_AC3 Durée: 20s 288ms Mode débit binaire: Constante Débit binaire: 256 Kbps Canal (s): 2 canaux Positions des canaux: Avant: LR Taux d'échantillonnage: 48,0 KHz Profondeur en bits: 16 bits Mode de compression: Perdu Délai par rapport à la vidéo: -80ms Taille du flux : 634 Ko (2%) Titre: Codeur Sony Hardware Audio AC3 Langue: russe Par défaut: Oui Forcée: Non Texte ID: 3 Format: PGS Mode multiplexage: zlib ID Codec: S_HDMV/PGS ID Codec/Info: Le même format de sous-titre que celui utilisé sur les BD/HD-DVD Titre: Sony Hardware PGS Encoder Langue: anglais Réglage implicite: Oui Forcé: Non
Vous pouvez utiliser mplayer:
mplayer -vo null -ao null -frames 0 -identify videofile.mp4
Sortie:
MPlayer 1.1-4.2.1 (C) 2000-2012 MPlayer Team
Can't init Apple Remote.
Playing vid.mp4.
libavformat version 54.6.101 (internal)
libavformat file format detected.
ID_VIDEO_ID=0
[lavf] stream 0: video (h264), -vid 0
ID_AUDIO_ID=0
[lavf] stream 1: audio (aac), -aid 0, -alang und
VIDEO: [H264] 480x360 24bpp 29.970 fps 700.7 kbps (85.5 kbyte/s)
Clip info:
major_brand: qt
ID_CLIP_INFO_NAME0=major_brand
ID_CLIP_INFO_VALUE0=qt
minor_version: 0
ID_CLIP_INFO_NAME1=minor_version
ID_CLIP_INFO_VALUE1=0
compatible_brands: qt
ID_CLIP_INFO_NAME2=compatible_brands
ID_CLIP_INFO_VALUE2=qt
creation_time: 2011-03-03 15:42:30
ID_CLIP_INFO_NAME3=creation_time
ID_CLIP_INFO_VALUE3=2011-03-03 15:42:30
encoder: 4.2.1
ID_CLIP_INFO_NAME4=encoder
ID_CLIP_INFO_VALUE4=4.2.1
encoder-eng: 4.2.1
ID_CLIP_INFO_NAME5=encoder-eng
ID_CLIP_INFO_VALUE5=4.2.1
date: 2011-03-03T10:42:30-0500
ID_CLIP_INFO_NAME6=date
ID_CLIP_INFO_VALUE6=2011-03-03T10:42:30-0500
date-eng: 2011-03-03T10:42:30-0500
ID_CLIP_INFO_NAME7=date-eng
ID_CLIP_INFO_VALUE7=2011-03-03T10:42:30-0500
ID_CLIP_INFO_N=8
Load subtitles in ./
ID_FILENAME=vid.mp4
ID_DEMUXER=lavfpref
ID_VIDEO_FORMAT=H264
ID_VIDEO_BITRATE=700712
ID_VIDEO_WIDTH=480
ID_VIDEO_HEIGHT=360
ID_VIDEO_FPS=29.970
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=MP4A
ID_AUDIO_BITRATE=63600
ID_AUDIO_RATE=44100
ID_AUDIO_NCH=1
ID_START_TIME=0.00
ID_LENGTH=3.83
ID_SEEKABLE=1
ID_CHAPTERS=0
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 54.23.100 (internal)
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
==========================================================================
ID_VIDEO_CODEC=ffh264
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 44100 Hz, 1 ch, s16le, 63.6 kbit/9.01% (ratio: 7950->88200)
ID_AUDIO_BITRATE=63600
ID_AUDIO_RATE=44100
ID_AUDIO_NCH=1
Selected audio codec: [ffaac] afm: ffmpeg (FFmpeg AAC (MPEG-2/MPEG-4 Audio))
==========================================================================
AO: [null] 44100Hz 1ch s16le (2 bytes per sample)
ID_AUDIO_CODEC=ffaac
Starting playback...
Exiting... (End of file)
ID_EXIT=EOF
Sous Ubuntu:
Sudo apt install ffmpeg
ffprobe a.mp4
Pour obtenir des informations sur le format, les flux, etc., exécutez:
ffprobe -v error -show_format -show_streams a.mp4
[STREAM]
index=0
codec_name=h264
codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
profile=High
codec_type=video
codec_time_base=1/50
codec_tag_string=avc1
codec_tag=0x31637661
width=320
height=240
has_b_frames=2
sample_aspect_ratio=1:1
display_aspect_ratio=4:3
pix_fmt=yuv420p
level=13
color_range=N/A
color_space=unknown
color_transfer=unknown
color_primaries=unknown
chroma_location=left
timecode=N/A
refs=4
is_avc=1
nal_length_size=4
id=N/A
r_frame_rate=25/1
avg_frame_rate=25/1
time_base=1/12800
start_pts=0
start_time=0.000000
duration_ts=384000
duration=30.000000
bit_rate=34761
max_bit_rate=N/A
bits_per_raw_sample=8
nb_frames=750
nb_read_frames=N/A
nb_read_packets=N/A
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
TAG:language=und
TAG:handler_name=VideoHandler
[/STREAM]
[STREAM]
index=1
codec_name=aac
codec_long_name=AAC (Advanced Audio Coding)
profile=LC
codec_type=audio
codec_time_base=1/44100
codec_tag_string=mp4a
codec_tag=0x6134706d
sample_fmt=fltp
sample_rate=44100
channels=1
channel_layout=mono
bits_per_sample=0
id=N/A
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/44100
start_pts=-1024
start_time=-0.023220
duration_ts=1324024
duration=30.023220
bit_rate=56517
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=1293
nb_read_frames=N/A
nb_read_packets=N/A
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
TAG:language=und
TAG:handler_name=SoundHandler
[/STREAM]
[FORMAT]
filename=input.mp4
nb_streams=2
nb_programs=0
format_name=mov,mp4,m4a,3gp,3g2,mj2
format_long_name=QuickTime / MOV
start_time=-0.023220
duration=30.024000
size=368644
bit_rate=98226
probe_score=100
TAG:major_brand=isom
TAG:minor_version=512
TAG:compatible_brands=isomiso2avc1mp41
TAG:title=FFprobe Tips
TAG:encoder=Lavf56.15.101
[/FORMAT]
Vous pouvez également générer des fichiers au format JSON ou CSV. Voir plus sur ffprobe .
Sous Ubuntu:
Sudo apt install libimage-exiftool-Perl
exiftool a.mp4
Exemple de sortie:
ExifTool Version Number : 10.00
File Name : lego.mp4
Directory : .
File Size : 375 kB
File Modification Date/Time : 2016:02:03 17:18:15+01:00
File Access Date/Time : 2016:02:03 17:18:49+01:00
File Inode Change Date/Time : 2016:02:03 17:18:49+01:00
File Permissions : rw-rw-r--
File Type : MP4
File Type Extension : mp4
MIME Type : video/mp4
Major Brand : MP4 v2 [ISO 14496-14]
Minor Version : 0.0.0
Compatible Brands : mp42, isom, avc1
Movie Data Size : 379872
Movie Data Offset : 168
Movie Header Version : 0
Create Date : 2010:03:20 21:29:11
Modify Date : 2010:03:20 21:29:12
Time Scale : 90000
Duration : 5.57 s
Preferred Rate : 1
Preferred Volume : 100.00%
Preview Time : 0 s
Preview Duration : 0 s
Poster Time : 0 s
Selection Time : 0 s
Selection Duration : 0 s
Current Time : 0 s
Next Track ID : 3
Track Header Version : 0
Track Create Date : 2010:03:20 21:29:11
Track Modify Date : 2010:03:20 21:29:12
Track ID : 1
Track Duration : 5.53 s
Track Layer : 0
Track Volume : 0.00%
Image Width : 560
Image Height : 320
Graphics Mode : srcCopy
Op Color : 0 0 0
Compressor ID : avc1
Source Image Width : 560
Source Image Height : 320
X Resolution : 72
Y Resolution : 72
Compressor Name : JVT/AVC Coding
Bit Depth : 24
Color Representation : nclc 1 1 1
Video Frame Rate : 30
Matrix Structure : 1 0 0 0 1 0 0 0 1
Media Header Version : 0
Media Create Date : 2010:03:20 21:29:11
Media Modify Date : 2010:03:20 21:29:12
Media Time Scale : 48000
Media Duration : 5.57 s
Media Language Code : eng
Balance : 0
Audio Format : mp4a
Audio Channels : 1
Audio Bits Per Sample : 16
Audio Sample Rate : 48000
Track 2 Name : Stereo
Handler Type : Metadata
Encoder : HandBrake 0.9.4 2009112300
Avg Bitrate : 546 kbps
Image Size : 560x320
Megapixels : 0.179
Rotation : 0
Voir aussi: https://askubuntu.com/questions/249828/command-to-see-media-file-info-in-terminal
Testé sur Ubuntu 18.10.
Mediainfo est un excellent outil. Au lieu de cela, vous pouvez également récupérer les détails à l’aide de ffprobe .
$ ffprobe -hide_banner -loglevel fatal -show_error -show_format -show_streams -show_programs -show_chapters -show_private_data -print_format json /home/sathish/Videos/Aandipatti.mp4
Voici la sortie
{
"programs": [
],
"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_time_base": "28113749/1349640000",
"codec_tag_string": "avc1",
"codec_tag": "0x31637661",
"width": 1920,
"height": 1080,
"coded_width": 1920,
"coded_height": 1080,
"has_b_frames": 1,
"sample_aspect_ratio": "1:1",
"display_aspect_ratio": "16:9",
"pix_fmt": "yuv420p",
"level": 40,
"color_range": "tv",
"color_space": "bt709",
"color_transfer": "bt709",
"color_primaries": "bt709",
"chroma_location": "left",
"refs": 1,
"is_avc": "true",
"nal_length_size": "4",
"r_frame_rate": "24/1",
"avg_frame_rate": "674820000/28113749",
"time_base": "1/90000",
"start_pts": 0,
"start_time": "0.000000",
"duration_ts": 28113750,
"duration": "312.375000",
"bit_rate": "2612895",
"bits_per_raw_sample": "8",
"nb_frames": "7498",
"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
},
"tags": {
"language": "und",
"handler_name": "VideoHandler"
}
},
{
"index": 1,
"codec_name": "aac",
"codec_long_name": "AAC (Advanced Audio Coding)",
"profile": "LC",
"codec_type": "audio",
"codec_time_base": "1/44100",
"codec_tag_string": "mp4a",
"codec_tag": "0x6134706d",
"sample_fmt": "fltp",
"sample_rate": "44100",
"channels": 2,
"channel_layout": "stereo",
"bits_per_sample": 0,
"r_frame_rate": "0/0",
"avg_frame_rate": "0/0",
"time_base": "1/44100",
"start_pts": 0,
"start_time": "0.000000",
"duration_ts": 13779971,
"duration": "312.470998",
"bit_rate": "125595",
"max_bit_rate": "125595",
"nb_frames": "13457",
"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
},
"tags": {
"language": "und",
"handler_name": "SoundHandler"
}
}
],
"chapters": [
],
"format": {
"filename": "/home/sathish/Videos/Aandipatti.mp4",
"nb_streams": 2,
"nb_programs": 0,
"format_name": "mov,mp4,m4a,3gp,3g2,mj2",
"format_long_name": "QuickTime / MOV",
"start_time": "0.000000",
"duration": "312.471000",
"size": "107155047",
"bit_rate": "2743423",
"probe_score": 100,
"tags": {
"major_brand": "isom",
"minor_version": "512",
"compatible_brands": "isomiso2avc1mp41",
"encoder": "Lavf56.40.101"
}
}
}
Comme l'a écrit Günay Gültekin, vous ne pouvez obtenir qu'un attribut spécifique, mais les guillemets étaient manquants:
mediaInfo --Output='Video;%Duration%' filename.mp4
Sur cette base, j’ai écrit un petit wrapper pour calculer la durée des fichiers trouvés avec un résumé:
echo "scale=2; ($(find /foo/bar -type f -exec mediainfo --Output='Video;%Duration%+' {} \; | grep -v ^$ | tr -d \\n)0)"/60000/60|bc
Sur les récentes distributions Linux, vous pouvez également obtenir des informations en utilisant avconv
:
$ avconv -i ch1_video_01.mpg
avconv version 9.18-6:9.18-0ubuntu0.14.04.1, Copyright (c) 2000-2014 the Libav developers
built on Mar 16 2015 13:19:10 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
[mpeg @ 0x722840] max_analyze_duration reached
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, mpeg, from 'ch1_video_01.mpg':
Duration: 00:03:48.01, start: 0.274000, bitrate: 6042 kb/s
Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x576 [PAR 64:45 DAR 16:9], 8000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0.1[0x1c0]: Audio: mp2, 48000 Hz, stereo, s16p, 256 kb/s
At least one output file must be specified