Changes between Version 45 and Version 46 of DirectShow


Ignore:
Timestamp:
Jan 13, 2016, 1:56:31 AM (4 years ago)
Author:
rogerdpack
Comment:

better multiple

Legend:

Unmodified
Added
Removed
Modified
  • DirectShow

    v45 v46  
    102102Also this note [http://ffmpeg.zeranoe.com/forum/viewtopic.php?f=3&t=27 that] the input string is in the format video=<video device name>:audio=<audio device name>. It is possible to have two separate inputs (like -f dshow -i audio=foo -f dshow -i video=bar) though some limited tests had shown a difference in  synchronism between the two options at times.  Possibly you can overcome it using the "-copy_ts" flag.  The reason this works is that each "input" is assumed to start "at its first input time" and FFmpeg, by default, basically normalizes it "from its first input" as meaning "0.0 seconds."  Because ffmpeg is using two different dshow inputs, it basically starts one up, then starts up the second *after* so it might start sending in packets a fraction of a second later, and FFmpeg happily treats its "later starting" timestamps as also 0.0 so mixing them doesn't work well if they start off set.  So if you use -copy_ts then it will start them with "relative to machine start time" timestamps which should be able to mix accurately in theory.  Ping me if you want it fixed to come more than one audio and one video in an input and thus not need these work arounds rogerdpack@gmail.com
    103103
    104 Also note that you can only at most have 2 streams at once (one audio and one video, like -i video=XX:audio=YY).  Ask if you want this improved.  You can have multiples one after the other, however, like -f dshow -i video=XX:audio=ZZ -f dshow -i video=ZZ:audio=QQ etc.  FFmpeg can also "merge/combine" audio inputs using its amix filter.
     104Also note that you can only at most have 2 streams at once (one audio and one video, like -i video=XX:audio=YY).  Ask if you want this improved.  You can have multiples one after the other, however, like
     105{{{
     106ffmpeg -f dshow -i video=XX:audio=ZZ -f dshow -i video=ZZ:audio=QQ
     107}}}
     108FFmpeg can also "merge/combine" multiple audio inputs, like the above using its amix filter (it can also combine video inputs of course, or record them as separate streams).
    105109
    106110See the [http://ffmpeg.org/ffmpeg-devices.html#dshow FFmpeg dshow input device documentation] for a list of more dshow options you can specify. For instance you can decrease latency on audio devices, or specify a video by "index" if two have the same name, etc. etc.