Formato segnale
[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.
Il formato di segnale di un dv dv può essere NTSC o PAL, standard o long-play.
MSDV Driver
Per ottenere il formato del segnale di input dal driver MSDV, chiamare il metodo IAMExtTransport::GetTransportBasicParameters e passare il flag ED_TRANSBASIC_INPUT_SIGNAL. Il metodo restituisce una costante definita, che indica il formato.
Il codice seguente controlla il formato del segnale e usa questo valore per calcolare il tempo medio per fotogramma. La variabile Mode riceve la costante del formato del segnale.
LONG Mode, AvgTimePerFrame;
hr = MyDevCap.pTransport->GetTransportBasicParameters(
ED_TRANSBASIC_INPUT_SIGNAL, &Mode, NULL);
if (SUCCEEDED(hr))
{
switch (Mode)
{
case ED_TRANSBASIC_SIGNAL_525_60_SD: // NTSC SD
AvgTimePerFrame = 33; // 33 msec (29.97 FPS)
break;
case ED_TRANSBASIC_SIGNAL_525_60_SDL: // NTSC SDL
AvgTimePerFrame = 33;
break;
case ED_TRANSBASIC_SIGNAL_625_50_SD: // PAL SD
AvgTimePerFrame = 40; // 40 msec (25 FPS)
break;
case ED_TRANSBASIC_SIGNAL_625_50_SDL: // PAL SDL
AvgTimePerFrame = 40;
break;
default:
// Unknown type
AvgTimePerFrame = 33; // Default
break;
}
}
Per ottenere il formato del segnale di output, chiamare lo stesso metodo con il flag ED_TRANSBASIC_OUTPUT_SIGNAL.
UVC Driver
Per ottenere il formato del segnale di input o di output dal driver UVC, chiamare IAMStreamConfig::GetFormat sul pin ed esaminare il blocco di formato video. Per i dispositivi UVC, il codice illustrato nell'esempio precedente restituisce in genere ED_TRANSBASIC_SIGNAL_UNKNOWN, quindi non è affidabile.
Argomenti correlati