Domanda

Vorrei porto un ActiveX mio (a Silverlight) che hanno le seguenti caratteristiche:

  • Incorporare immagine di un logo in qualsiasi file video.
  • Incorporare i sottotitoli in qualsiasi file video.
  • Ritaglio qualsiasi file video (ad esempio:. Ritaglio 10 secondi di un 1 min video).
  • Salva il risultato file video (dagli encoder correnti del cliente).

L'attuale ActiveX utilizza DirectShow - purtroppo, non può essere utilizzato in Silverlight. Come posso abbandonare la vecchia tecnologia ActiveX per la nuova tecnologia Silverlight?

È stato utile?

Soluzione

La risposta è semplice: non si può

.

Silverlight si rivolge a due tipi principali di applicazioni: -

  • presentazione contenuti, sia che le immagini video, audio e, tutte con vista della creazione di modi interessanti e coinvolgenti per interagire con questo tipo di contenuti.
  • Più recentemente Linea di applicazioni commerciali, vale a dire l'immissione dei dati e la presentazione dei dati. Sempre al fine di rendere questo almeno un po 'più visivamente stimolante rispetto alle tecnologie precedenti fatto questo tipo di applicazioni.

Montaggio video in realtà non rientra in uno di questi campi e non è soddisfatti.

Non sono sicuro che la sua ancora vero dire ActiveX è vecchio, dopo tutto ciò che la tecnologia è utilizzata per ospitare il plugin Silverlight in Internet Explorer? ActiveX.

Altri suggerimenti

Non so se questo sta per essere facilmente fattibile. I vari codec nativo possibile Silverlight sono tutti avvolti dal controllo Silverlight MediaElement, e per quanto posso capire, non sono direttamente esposti attraverso un'API, ad esempio, non è possibile ottenere al grezzo decodificato RGBA bitstream. (Se mi sbaglio su questo, mi piacerebbe sapere, ma ho curiosato, e io non riesco a capire come farlo.) L'albero dei sorgenti Mono dispone di un'implementazione decodifica solo della Dirac codec, ma niente che sarebbe facilmente permetterà di decodificare, ad esempio, WMV o AVI file, per quanto ne sono a conoscenza.

E anche se si potesse in qualche modo afferrare il grezzo, decodificato RGBA (o YCbCr) bitstream, in modo da essere in grado di inserire qualsiasi dato che si desidera in quei fotogrammi, dovreste ancora di ricodificare il flusso video così e Silverlight non fornisce alcun supporto nativo per questo. Dovresti scrivere i propri encoder (non è affatto banale), li porta dalla libreria ffmpeg (anche non banale), o aspettare che qualcun altro a farlo.

In breve, il mio sospetto è che si sta andando ad avere bisogno di attaccare con la soluzione di ActiveX per ora -. Anche se con qualche intelligente codifica JavaScript, potrebbe essere possibile per avvolgere che in un bel Silverlight UI

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top