
Recherche avancée
Médias (3)
-
MediaSPIP Simple : futur thème graphique par défaut ?
26 septembre 2013, par
Mis à jour : Octobre 2013
Langue : français
Type : Video
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
-
GetID3 - Boutons supplémentaires
9 avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
Autres articles (98)
-
MediaSPIP version 0.1 Beta
16 avril 2011, parMediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...) -
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)
Sur d’autres sites (12279)
-
Live video in facebook is lagging while using ffmpeg from video link
1er septembre 2022, par Isteyak AliLivevideo in facebook is working fine for local device video(case 1) but its having lagging issue from video link(case 2) using FFMPEG.


Please find command for the same and log.


Case 1 - Command : ffmpeg -re -i videoplayback.mp4 -c:v libx264 -c:a aac -f flv "rtmps ://live-api-s.facebook.com:443/rtmp/5162241770554550 ?s_bl=1&s_oil=2&s_psm=1&s_sw=0&s_tids=1&s_vt=api-s&a=Aby_ZWutqdUZR26F"


Log -
2022-09-01 18:27:19.683 frame= 9 fps=0.0 q=0.0 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A dup=21 drop=0 speed= 0x

2022-09-01 18:27:20.163 frame= 19 fps= 19 q=0.0 q=33.0 size= 0kB time=00:00:00.44 bitrate= 8.7kbits/s dup=44 drop=0 speed=0.437x

2022-09-01 18:27:20.879 frame= 32 fps= 21 q=0.0 q=33.0 size= 0kB time=00:00:00.92 bitrate= 4.1kbits/s dup=74 drop=0 speed=0.616x

2022-09-01 18:27:21.374 frame= 47 fps= 22 q=0.0 q=33.0 size= 0kB time=00:00:01.41 bitrate= 2.7kbits/s dup=109 drop=0 speed=0.651x

2022-09-01 18:27:21.940 frame= 58 fps= 21 q=29.0 q=33.0 size= 40kB time=00:00:01.90 bitrate= 174.2kbits/s dup=135 drop=0 speed=0.703x

2022-09-01 18:27:22.530 frame= 69 fps= 21 q=29.0 q=33.0 size= 101kB time=00:00:01.92 bitrate= 429.9kbits/s dup=161 drop=0 speed=0.585x

2022-09-01 18:27:23.003 frame= 83 fps= 22 q=29.0 q=33.0 size= 165kB time=00:00:02.39 bitrate= 566.5kbits/s dup=193 drop=0 speed=0.623x

2022-09-01 18:27:23.567 frame= 97 fps= 22 q=29.0 q=33.0 size= 235kB time=00:00:02.90 bitrate= 661.9kbits/s dup=226 drop=0 speed=0.667x

2022-09-01 18:27:24.133 frame= 111 fps= 23 q=29.0 q=33.0 size= 315kB time=00:00:03.36 bitrate= 765.8kbits/s dup=259 drop=0 speed=0.693x

2022-09-01 18:27:24.715 frame= 125 fps= 23 q=29.0 q=30.0 size= 385kB time=00:00:03.85 bitrate= 817.5kbits/s dup=291 drop=0 speed=0.703x

2022-09-01 18:27:25.227 frame= 142 fps= 24 q=29.0 q=33.0 size= 486kB time=00:00:04.83 bitrate= 824.6kbits/s dup=331 drop=0 speed=0.802x

2022-09-01 18:27:25.712 frame= 158 fps= 24 q=29.0 q=33.0 size= 563kB time=00:00:05.31 bitrate= 867.6kbits/s dup=368 drop=0 speed=0.811x

2022-09-01 18:27:26.262 frame= 173 fps= 24 q=29.0 q=33.0 size= 634kB time=00:00:05.78 bitrate= 897.8kbits/s dup=403 drop=0 speed=0.819x

2022-09-01 18:27:26.796 frame= 191 fps= 25 q=29.0 q=33.0 size= 718kB time=00:00:06.24 bitrate= 941.7kbits/s dup=445 drop=0 speed=0.82x

2022-09-01 18:27:27.337 frame= 211 fps= 26 q=29.0 q=33.0 size= 806kB time=00:00:07.17 bitrate= 920.7kbits/s dup=492 drop=0 speed=0.882x

2022-09-01 18:27:27.816 frame= 233 fps= 27 q=29.0 q=33.0 size= 921kB time=00:00:07.64 bitrate= 987.4kbits/s dup=543 drop=0 speed=0.881x

2022-09-01 18:27:28.348 frame= 251 fps= 27 q=29.0 q=30.0 size= 1031kB time=00:00:08.42 bitrate=1001.9kbits/s dup=585 drop=0 speed=0.919x

2022-09-01 18:27:28.868 frame= 274 fps= 28 q=29.0 q=33.0 size= 1141kB time=00:00:09.03 bitrate=1035.2kbits/s dup=639 drop=0 speed=0.933x

2022-09-01 18:27:29.393 frame= 293 fps= 29 q=29.0 q=33.0 size= 1283kB time=00:00:09.49 bitrate=1106.5kbits/s dup=683 drop=0 speed=0.932x

2022-09-01 18:27:29.870 frame= 313 fps= 29 q=29.0 q=33.0 size= 1433kB time=00:00:10.42 bitrate=1125.6kbits/s dup=730 drop=0 speed=0.975x

2022-09-01 18:27:30.356 frame= 331 fps= 30 q=29.0 q=33.0 size= 1557kB time=00:00:10.89 bitrate=1170.9kbits/s dup=772 drop=0 speed=0.973x

2022-09-01 18:27:30.843 frame= 346 fps= 30 q=29.0 q=33.0 size= 1627kB time=00:00:11.35 bitrate=1174.1kbits/s dup=807 drop=0 speed=0.971x

2022-09-01 18:27:31.357 frame= 361 fps= 30 q=29.0 q=33.0 size= 1711kB time=00:00:11.81 bitrate=1186.2kbits/s dup=842 drop=0 speed=0.969x

2022-09-01 18:27:31.862 frame= 376 fps= 30 q=29.0 q=33.0 size= 1789kB time=00:00:12.28 bitrate=1193.3kbits/s dup=877 drop=0 speed=0.967x

2022-09-01 18:27:32.371 frame= 391 fps= 30 q=29.0 q=33.0 size= 1870kB time=00:00:12.74 bitrate=1201.8kbits/s dup=912 drop=0 speed=0.965x

2022-09-01 18:27:32.908 frame= 406 fps= 30 q=29.0 q=33.0 size= 1959kB time=00:00:13.67 bitrate=1173.3kbits/s dup=947 drop=0 speed=0.997x

2022-09-01 18:27:33.109 frame= 422 fps= 30 q=29.0 q=33.0 size= 2061kB time=00:00:14.14 bitrate=1193.8kbits/s dup=984 drop=0 speed=0.992x

Case 2 - Command : ffmpeg -re -i "https://rr1---sn-o58g5ob-nu8e.googlevideo.com/videoplayback?expire=1662057728&ei=n6gQY-D9OLSA4-EPzJKYyA0&ip=103.11.117.194&id=o-AOgjPoKU_GiUy425eSSF6tHEIQvoHpsUyyIHnHERk6YS&itag=22&source=youtube&requiressl=yes&mh=6k&mm=31%2C29&mn=sn-o58g5ob-nu8e%2Csn-cvhelnls&ms=au%2Crdu&mv=m&mvi=1&pcm2cms=yes&pl=24&initcwndbps=867500&vprv=1&mime=video%2Fmp4&ns=z8jzAKb15xkjMcyG0dBthZQH&ratebypass=yes&dur=256.116&lmt=1649507860591021&mt=1662035606&fvip=3&fexp=24001373%2C24007246&c=WEB&rbqsm=fr&txp=4532434&n=PSC3ywazY86ChDwPP2&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cratebypass%2Cdur%2Clmt&sig=AOq0QJ8wRgIhAI-aPoysSukxGNgmlsn-4bgCG84gQnILTkGJR8WQnK_bAiEArwSM0z-GYO4SinkzgdGG5qZJtoiP3ROYneg88sOjhv4%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpcm2cms%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIhAJb7JQbSPhhH2jte8pE0G0iWf1LtRlEzQgSy-2pBGPg3AiBWX0P27KU2xwazMGLiBaQanUOeytB0jPgFsJleM8DO-w%3D%3D" -c:v libx264 -c:a aac -f flv "rtmps ://live-api-s.facebook.com:443/rtmp/5162241770554550 ?s_bl=1&s_oil=2&s_psm=1&s_sw=0&s_tids=1&s_vt=api-s&a=Aby_ZWutqdUZR26F"


Log -


2022-09-01 18:24:23.080 frame= 9 fps=0.0 q=0.0 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A dup=21 drop=0 speed= 0x

2022-09-01 18:24:23.579 frame= 23 fps= 22 q=0.0 q=33.0 size= 0kB time=00:00:00.44 bitrate= 8.7kbits/s dup=53 drop=0 speed=0.427x

2022-09-01 18:24:24.177 frame= 33 fps= 21 q=0.0 q=33.0 size= 0kB time=00:00:00.92 bitrate= 4.1kbits/s dup=77 drop=0 speed=0.589x

2022-09-01 18:24:24.872 frame= 39 fps= 18 q=0.0 q=33.0 size= 0kB time=00:00:00.99 bitrate= 3.9kbits/s dup=91 drop=0 speed=0.458x

2022-09-01 18:24:25.513 frame= 46 fps= 16 q=0.0 q=33.0 size= 0kB time=00:00:01.41 bitrate= 2.7kbits/s dup=107 drop=0 speed=0.497x

2022-09-01 18:24:26.070 frame= 52 fps= 15 q=0.0 q=33.0 size= 0kB time=00:00:01.41 bitrate= 2.7kbits/s dup=121 drop=0 speed=0.41x

2022-09-01 18:24:26.602 frame= 58 fps= 14 q=29.0 q=33.0 size= 40kB time=00:00:01.90 bitrate= 174.2kbits/s dup=135 drop=0 speed=0.468x

2022-09-01 18:24:27.341 frame= 63 fps= 14 q=29.0 q=33.0 size= 72kB time=00:00:01.90 bitrate= 311.6kbits/s dup=147 drop=0 speed=0.417x

2022-09-01 18:24:27.957 frame= 71 fps= 13 q=29.0 q=33.0 size= 115kB time=00:00:02.39 bitrate= 392.6kbits/s dup=165 drop=0 speed=0.448x

2022-09-01 18:24:28.621 frame= 78 fps= 13 q=29.0 q=33.0 size= 141kB time=00:00:02.39 bitrate= 483.2kbits/s dup=182 drop=0 speed=0.409x

2022-09-01 18:24:29.277 frame= 82 fps= 12 q=29.0 q=33.0 size= 154kB time=00:00:02.39 bitrate= 527.3kbits/s dup=191 drop=0 speed=0.363x

2022-09-01 18:24:29.851 frame= 89 fps= 12 q=29.0 q=33.0 size= 197kB time=00:00:02.87 bitrate= 560.9kbits/s dup=207 drop=0 speed=0.397x

2022-09-01 18:24:30.385 frame= 96 fps= 12 q=29.0 q=33.0 size= 233kB time=00:00:02.87 bitrate= 662.2kbits/s dup=224 drop=0 speed=0.371x

2022-09-01 18:24:31.119 frame= 100 fps= 12 q=29.0 q=33.0 size= 253kB time=00:00:03.36 bitrate= 615.5kbits/s dup=233 drop=0 speed=0.402x

2022-09-01 18:24:31.449 frame= 110 fps= 12 q=29.0 q=33.0 size= 309kB time=00:00:03.36 bitrate= 750.7kbits/s dup=256 drop=0 speed=0.378x

2022-09-01 18:24:32.062 frame= 111 fps= 12 q=29.0 q=33.0 size= 315kB time=00:00:03.83 bitrate= 672.9kbits/s dup=259 drop=0 speed=0.405x

2022-09-01 18:24:32.696 frame= 122 fps= 12 q=29.0 q=33.0 size= 371kB time=00:00:03.85 bitrate= 787.6kbits/s dup=284 drop=0 speed=0.383x

2022-09-01 18:24:33.374 frame= 130 fps= 12 q=29.0 q=33.0 size= 410kB time=00:00:04.34 bitrate= 773.0kbits/s dup=303 drop=0 speed=0.407x

2022-09-01 18:24:33.987 frame= 139 fps= 12 q=29.0 q=33.0 size= 475kB time=00:00:04.34 bitrate= 895.9kbits/s dup=324 drop=0 speed=0.383x

2022-09-01 18:24:34.445 frame= 146 fps= 12 q=29.0 q=33.0 size= 508kB time=00:00:04.83 bitrate= 861.9kbits/s dup=340 drop=0 speed=0.404x

2022-09-01 18:24:35.218 frame= 153 fps= 12 q=29.0 q=33.0 size= 540kB time=00:00:05.03 bitrate= 878.1kbits/s dup=357 drop=0 speed=0.405x

2022-09-01 18:24:35.558 frame= 163 fps= 12 q=29.0 q=33.0 size= 580kB time=00:00:05.31 bitrate= 893.8kbits/s dup=380 drop=0 speed=0.408x

2022-09-01 18:24:36.220 frame= 167 fps= 12 q=29.0 q=33.0 size= 609kB time=00:00:05.31 bitrate= 938.0kbits/s dup=389 drop=0 speed=0.392x

2022-09-01 18:24:36.821 frame= 172 fps= 12 q=29.0 q=33.0 size= 630kB time=00:00:05.78 bitrate= 892.5kbits/s dup=401 drop=0 speed=0.408x

2022-09-01 18:24:37.428 frame= 179 fps= 12 q=29.0 q=33.0 size= 666kB time=00:00:05.78 bitrate= 943.1kbits/s dup=417 drop=0 speed=0.394x

2022-09-01 18:24:37.812 frame= 185 fps= 12 q=29.0 q=30.0 size= 689kB time=00:00:06.24 bitrate= 903.2kbits/s dup=431 drop=0 speed=0.41x

2022-09-01 18:24:38.368 frame= 190 fps= 12 q=29.0 q=33.0 size= 711kB time=00:00:06.24 bitrate= 932.5kbits/s dup=443 drop=0 speed=0.396x

2022-09-01 18:24:38.979 frame= 195 fps= 12 q=29.0 q=33.0 size= 737kB time=00:00:06.52 bitrate= 925.4kbits/s dup=455 drop=0 speed=0.399x

2022-09-01 18:24:39.706 frame= 204 fps= 12 q=29.0 q=33.0 size= 778kB time=00:00:06.71 bitrate= 949.8kbits/s dup=476 drop=0 speed=0.398x

2022-09-01 18:24:40.252 frame= 212 fps= 12 q=29.0 q=33.0 size= 808kB time=00:00:07.17 bitrate= 922.8kbits/s dup=494 drop=0 speed=0.407x

2022-09-01 18:24:40.977 frame= 220 fps= 12 q=29.0 q=33.0 size= 841kB time=00:00:07.17 bitrate= 960.6kbits/s dup=513 drop=0 speed=0.395x

2022-09-01 18:24:41.926 frame= 226 fps= 12 q=29.0 q=33.0 size= 886kB time=00:00:07.64 bitrate= 949.8kbits/s dup=527 drop=0 speed=0.404x

2022-09-01 18:24:42.470 frame= 233 fps= 12 q=29.0 q=33.0 size= 921kB time=00:00:07.64 bitrate= 987.4kbits/s dup=543 drop=0 speed=0.385x

2022-09-01 18:24:43.081 frame= 237 fps= 12 q=29.0 q=33.0 size= 942kB time=00:00:07.66 bitrate=1007.5kbits/s dup=553 drop=0 speed=0.374x

2022-09-01 18:24:43.745 frame= 241 fps= 11 q=29.0 q=33.0 size= 971kB time=00:00:08.10 bitrate= 981.5kbits/s dup=562 drop=0 speed=0.384x

2022-09-01 18:24:44.270 frame= 248 fps= 11 q=29.0 q=33.0 size= 1011kB time=00:00:08.10 bitrate=1021.5kbits/s dup=578 drop=0 speed=0.373x

2022-09-01 18:24:45.085 frame= 251 fps= 11 q=29.0 q=30.0 size= 1031kB time=00:00:08.10 bitrate=1042.1kbits/s dup=585 drop=0 speed=0.364x

As per my knowledge we have to add such type of delay or late stream video using some command.


-
Python : Extracting device and lens information from video metadata
14 mai 2023, par cat_got_my_tongueI am interested in extracting device and lens information from videos. Specifically, make and model of the device and the focal length. I was able to do this successfully for still images using the
exifread
module and extract a whole bunch of very useful information :

image type : MPO
Image ImageDescription: Shot with DxO ONE
Image Make: DxO
Image Model: DxO ONE
Image Orientation: Horizontal (normal)
Image XResolution: 300
Image YResolution: 300
Image ResolutionUnit: Pixels/Inch
Image Software: V3.0.0 (2b448a1aee) APP:1.0
Image DateTime: 2022:04:05 14:53:45
Image YCbCrCoefficients: [299/1000, 587/1000, 57/500]
Image YCbCrPositioning: Centered
Image ExifOffset: 158
Thumbnail Compression: JPEG (old-style)
Thumbnail XResolution: 300
Thumbnail YResolution: 300
Thumbnail ResolutionUnit: Pixels/Inch
Thumbnail JPEGInterchangeFormat: 7156
Thumbnail JPEGInterchangeFormatLength: 24886
EXIF ExposureTime: 1/3
EXIF FNumber: 8
EXIF ExposureProgram: Aperture Priority
EXIF ISOSpeedRatings: 100
EXIF SensitivityType: ISO Speed
EXIF ISOSpeed: 100
EXIF ExifVersion: 0221
EXIF DateTimeOriginal: 2022:04:05 14:53:45
EXIF DateTimeDigitized: 2022:04:05 14:53:45
EXIF ComponentsConfiguration: CrCbY
EXIF CompressedBitsPerPixel: 3249571/608175
EXIF ExposureBiasValue: 0
EXIF MaxApertureValue: 212/125
EXIF SubjectDistance: 39/125
EXIF MeteringMode: MultiSpot
EXIF LightSource: Unknown
EXIF Flash: Flash did not fire
EXIF FocalLength: 1187/100
EXIF SubjectArea: [2703, 1802, 675, 450]
EXIF MakerNote: [68, 88, 79, 32, 79, 78, 69, 0, 12, 0, 0, 0, 21, 0, 3, 0, 5, 0, 2, 0, ... ]
EXIF SubSecTime: 046
EXIF SubSecTimeOriginal: 046
EXIF SubSecTimeDigitized: 046
EXIF FlashPixVersion: 0100
EXIF ColorSpace: sRGB
EXIF ExifImageWidth: 5406
EXIF ExifImageLength: 3604
Interoperability InteroperabilityIndex: R98
Interoperability InteroperabilityVersion: [48, 49, 48, 48]
EXIF InteroperabilityOffset: 596
EXIF FileSource: Digital Camera
EXIF ExposureMode: Auto Exposure
EXIF WhiteBalance: Auto
EXIF DigitalZoomRatio: 1
EXIF FocalLengthIn35mmFilm: 32
EXIF SceneCaptureType: Standard
EXIF ImageUniqueID: C01A1709306530020220405185345046
EXIF BodySerialNumber: C01A1709306530



Unfortunately, I have been unable to extract this kind of info from videos so far.


This is what I have tried so far, with the
ffmpeg
module :

import ffmpeg
from pprint import pprint

test_video = "my_video.mp4"
pprint(ffmpeg.probe(test_video)["streams"])



And the output I get contains a lot of info but nothing related to the device or lens, which is what I am looking for :


[{'avg_frame_rate': '30/1',
 'bit_rate': '1736871',
 'bits_per_raw_sample': '8',
 'chroma_location': 'left',
 'codec_long_name': 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10',
 'codec_name': 'h264',
 'codec_tag': '0x31637661',
 'codec_tag_string': 'avc1',
 'codec_time_base': '1/60',
 'codec_type': 'video',
 'coded_height': 1088,
 'coded_width': 1920,
 'display_aspect_ratio': '16:9',
 'disposition': {'attached_pic': 0,
 'clean_effects': 0,
 'comment': 0,
 'default': 1,
 'dub': 0,
 'forced': 0,
 'hearing_impaired': 0,
 'karaoke': 0,
 'lyrics': 0,
 'original': 0,
 'timed_thumbnails': 0,
 'visual_impaired': 0},
 'duration': '20.800000',
 'duration_ts': 624000,
 'has_b_frames': 0,
 'height': 1080,
 'index': 0,
 'is_avc': 'true',
 'level': 40,
 'nal_length_size': '4',
 'nb_frames': '624',
 'pix_fmt': 'yuv420p',
 'profile': 'Constrained Baseline',
 'r_frame_rate': '30/1',
 'refs': 1,
 'sample_aspect_ratio': '1:1',
 'start_pts': 0,
 'start_time': '0.000000',
 'tags': {'creation_time': '2021-05-08T13:23:20.000000Z',
 'encoder': 'AVC Coding',
 'handler_name': 'VideoHandler',
 'language': 'und'},
 'time_base': '1/30000',
 'width': 1920},
 {'avg_frame_rate': '0/0',
 'bit_rate': '79858',
 'bits_per_sample': 0,
 'channel_layout': 'stereo',
 'channels': 2,
 'codec_long_name': 'AAC (Advanced Audio Coding)',
 'codec_name': 'aac',
 'codec_tag': '0x6134706d',
 'codec_tag_string': 'mp4a',
 'codec_time_base': '1/48000',
 'codec_type': 'audio',
 'disposition': {'attached_pic': 0,
 'clean_effects': 0,
 'comment': 0,
 'default': 1,
 'dub': 0,
 'forced': 0,
 'hearing_impaired': 0,
 'karaoke': 0,
 'lyrics': 0,
 'original': 0,
 'timed_thumbnails': 0,
 'visual_impaired': 0},
 'duration': '20.864000',
 'duration_ts': 1001472,
 'index': 1,
 'max_bit_rate': '128000',
 'nb_frames': '978',
 'profile': 'LC',
 'r_frame_rate': '0/0',
 'sample_fmt': 'fltp',
 'sample_rate': '48000',
 'start_pts': 0,
 'start_time': '0.000000',
 'tags': {'creation_time': '2021-05-08T13:23:20.000000Z',
 'handler_name': 'SoundHandler',
 'language': 'und'},
 'time_base': '1/48000'}]



Are these pieces of info available for videos ? Should I be using a different package ?


Thanks.


Edit :


pprint(ffmpeg.probe(test_video)["format"])
gives

{'bit_rate': '1815244',
 'duration': '20.864000',
 'filename': 'my_video.mp4',
 'format_long_name': 'QuickTime / MOV',
 'format_name': 'mov,mp4,m4a,3gp,3g2,mj2',
 'nb_programs': 0,
 'nb_streams': 2,
 'probe_score': 100,
 'size': '4734158',
 'start_time': '0.000000',
 'tags': {'artist': 'Microsoft Game DVR',
 'compatible_brands': 'mp41isom',
 'creation_time': '2021-05-08T12:12:33.000000Z',
 'major_brand': 'mp42',
 'minor_version': '0',
 'title': 'Snipping Tool'}}



-
How to debug ffmpeg reliability for long running rtsp streams
13 septembre 2022, par MarkI have a long running ffmpeg background process that "watches" an rtsp stream and takes snapshots every 7 minutes.


It's being run like this


C:\Windows\System32\cmd.exe /c C:\ffmpeg\bin\ffmpeg.exe -nostdin -rtsp_transport tcp -y -timeout 5000000 -i rtsp://someurl -q:v 1 -an -vf fps=0.002381,scale="1280:720" -strftime 1 -f image2 C:\somelocalfolder\%Y-%m-%d_%H-%M-%S.jpg > c:\ffmpeglog.txt 2>&1



This process runs for days but intermittently, for hours at a time, seems to miss taking snapshots, until eventually it starts to take them again - then fail again, etc. The logs at info level are not helpful. I checked the stream during times when it was not taking snapshots and the stream was up. What's happening here ? How can I debug this ?


Below is an image of succesfull snapshots per hour. There should always be between 8 and 9.



Logs look like this


ffmpeg version 2022-03-31-git-e301a24fa1-full_build-www.gyan.dev Copyright (c) 2000-2022 the FFmpeg developers
 built with gcc 11.2.0 (Rev7, Built by MSYS2 project)
 configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
 libavutil 57. 24.101 / 57. 24.101
 libavcodec 59. 25.100 / 59. 25.100
 libavformat 59. 20.101 / 59. 20.101
 libavdevice 59. 6.100 / 59. 6.100
 libavfilter 8. 29.100 / 8. 29.100
 libswscale 6. 6.100 / 6. 6.100
 libswresample 4. 6.100 / 4. 6.100
 libpostproc 56. 5.100 / 56. 5.100
Input #0, rtsp, from 'rtsp://somerul':
 Metadata:
 title : HIK Media Server V4.21.005
 comment : HIK Media Server Session Description : standard
 Duration: N/A, start: 0.033000, bitrate: N/A
 Stream #0:0: Video: h264 (High), yuv420p(progressive), 704x576, 30 tbr, 90k tbn
Stream mapping:
 Stream #0:0 -> #0:0 (h264 (native) -> mjpeg (native))
[swscaler @ 000002a1c2c20680] [swscaler @ 000002a1c2c2e0c0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 000002a1c2c20680] [swscaler @ 000002a1c2c67c40] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 000002a1c2c20680] [swscaler @ 000002a1c2cc6700] deprecated pixel format used, make sure you did set range correctly
Output #0, image2, to 'C:\somelocalfolder\Temp\stream_2\StreamedImages\%Y-%m-%d_%H-%M-%S.jpg':
 Metadata:
 title : HIK Media Server V4.21.005
 comment : HIK Media Server Session Description : standard
 encoder : Lavf59.20.101
 Stream #0:0: Video: mjpeg, yuvj420p(pc, progressive), 1280x720, q=2-31, 200 kb/s, 0.0024 fps, 0.0024 tbn
 Metadata:
 encoder : Lavc59.25.100 mjpeg
 Side data:
 cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
frame= 1 fps=0.0 q=0.0 size=N/A time=00:00:00.00 bitrate=N/A speed= 0x 



Update
I got some trace logs. The ffmpeg seems to fail silently at some point and stop taking snapshots.


After about 3 million log lines (which is really only a couple of hours in my case) I get the following


rtsp://192.168.15.195:554/streaming/channels/904: Unknown error



But ffmpeg silently continues. Here is a bit more of the log


[Parsed_fps_0 @ 00000248e7d50e40] Read frame with in pts 1074443040, out pts 28
[Parsed_fps_0 @ 00000248e7d50e40] Dropping frame with pts 28
frame= 28 fps=0.0 q=1.0 size=N/A time=03:08:59.77 bitrate=N/A speed=0.95x 
[rtsp @ 00000248e765cf00] tcp_read_packet:
[h264 @ 00000248e7d59880] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
[rtsp @ 00000248e765cf00] ret=-138 c=24 [$]
rtsp://192.168.15.195:554/streaming/channels/904: Unknown error
[Parsed_fps_0 @ 00000248e7d50e40] Read frame with in pts 1074446100, out pts 28
[Parsed_fps_0 @ 00000248e7d50e40] Dropping frame with pts 28
frame= 28 fps=0.0 q=1.0 size=N/A time=03:08:59.77 bitrate=N/A speed=0.95x 
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=696
[rtsp @ 00000248e765cf00] Sending:
GET_PARAMETER rtsp://192.168.15.195:554/streaming/channels/904 RTSP/1.0

CSeq: 402

User-Agent: Lavf59.20.101

Session: 931848797

Authorization: Digest username="******", realm="709382dda4ccb674edf093d3", nonce="13fca62fc", uri="rtsp://192.168.15.195:554/streaming/channels/904", response="74341df9611f0ac3dc247b402424735b", algorithm="MD5"



--
[NULL @ 00000248e7662640] nal_unit_type: 7(SPS), nal_ref_idc: 3
[NULL @ 00000248e7662640] nal_unit_type: 8(PPS), nal_ref_idc: 3
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=756
[Parsed_fps_0 @ 00000248e7d50e40] Read frame with in pts 1074449070, out pts 28
[Parsed_fps_0 @ 00000248e7d50e40] Dropping frame with pts 28
[Parsed_fps_0 @ 00000248e7d50e40] Read frame with in pts 1074449070, out pts 28
[Parsed_fps_0 @ 00000248e7d50e40] Dropping frame with pts 28
frame= 28 fps=0.0 q=1.0 size=N/A time=03:08:59.77 bitrate=N/A speed=0.949x 
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=1352
frame= 28 fps=0.0 q=1.0 size=N/A time=03:08:59.77 bitrate=N/A speed=0.949x 
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=1352
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=1352
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=1352
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=1228
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=1352
[NULL @ 00000248e7662640] reference count 1 overflow
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=804
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=1352
[NULL @ 00000248e7662640] illegal memory management control operation 11
[rtsp @ 00000248e765cf00] tcp_read_packet:
[rtsp @ 00000248e765cf00] ret=1 c=24 [$]
[rtsp @ 00000248e765cf00] id=0 len=836



Basically it appears an issue of ffmpeg silently failing. If it crashed, my software could detect it and I could rerun it, but if it fails silently like this, I need another solution.