Recherche avancée

Médias (0)

Mot : - Tags -/organisation

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (66)

Sur d’autres sites (13939)

  • matroskaenc : factor ts_offset into block timecode computation

    15 février 2017, par John Stebbins
    matroskaenc : factor ts_offset into block timecode computation
    

    ts_offset was added to cluster timecode, but then effectively subtracted
    back off the block timecode

    When setting initial_padding for an audio stream, the timestamps are
    written incorrectly to the mkv file. cluster timecode gets written
    as pts0 + ts_offset which is correct, but then block timecode gets
    written as pts - cluster timecode which expanded is
    pts - (pts0 + ts_offset). Adding cluster and block tc back together :
    cluster + block = (pts0 + ts_offset) + (pts - (pts0 + ts_offset)) = pts
    But the result should be pts + ts_offset since demux will subtract the
    CodecDelay element from pts and set initial_padding to CodecDelay.
    This patch gives the correct result.

    • [DBH] libavformat/matroskaenc.c
  • FFmpeg RTP network issue in Ubuntu

    4 mai 2017, par Ivan Kolesnikov

    I want to copy a bunch of SD sources from mpegts transported with RTP on local files. (VBR mpeg2video, mp2 audio). It works fine for one multicast source with the following command :

    ffmpeg -i rtp://@IP1:PORT -c copy video1.mpg

    but when I ran a second ffmpeg instance with the following command :

    ffmpeg -i rtp://@IP2:PORT -c copy video2.mpg

    then I got errors from both FFmpeg instances ("RTP : dropping old packet received too late") and in both files (video1.mpg and video2.mpg) recorded video from the second source (rtp ://@IP2:PORT).

    This issue occurs only in Linux (I checked Ubuntu 14.04 - 16.04). I have no problems in Windows and can transcoding video correctly in parallel from files. Under Ubuntu even two ffplay instances tuned to different sources play back the same content (from the source which was opened last). I tried playing back with VLC and there is no such problem.

    I can resolve this issue when using FFmpeg with the -f option :
    ffmpeg -f mpegts -i rtp ://@IP1:PORT -c copy video1.mpg
    and
    ffmpeg -f mpegts -i rtp ://@IP2:PORT -c copy video2.mpg, but then I’m getting the following errors : "[mpegts @ 0x306e240] PES packet size mismatch" and receive both files (video1.mpg and video2.mpg) with artifacts and freeze effects. This issue appears for both operating systems.

    How can I record|transcode videos from multiple RTP streams with FFmpeg simultaneously under Ubuntu without errors and artifacts ?

  • Using FFmpeg from .NET

    31 août 2011, par Lieven Cardoen

    I have been searching for an hour on how to use FFmpeg from .NET and it seems you need to execute the FFmpeg.exe with a Process to get things done. To get a duration of an flv file for instance, you would need to start using grep to get something back out of cmd window. It all seems complicated... + you'd have to start installing things on remote servers (@ customers)...

    Is there another way ? Aren't there dll's containing the FFmpeg logic ? Other solutions to get some information out of flv files in .NET ?