Recherche avancée

Médias (3)

Mot : - Tags -/spip

Autres articles (98)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 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, par

    MediaSPIP 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 2013

    Jolie 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 Ali

    Livevideo 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_tongue

    I 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 Mark

    I 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.
metrics on successful snapshots taken

    


    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.