1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

converter wmv para mkv usando directshowlib em c#

Discussão em 'Programação' iniciada por nurvo0, 7 de Janeiro de 2008. (Respostas: 1; Visualizações: 1017)

  1. Boa tarde.

    Ao tentar converter um ficheiro media wmv para mkv deu-me o seguinte erro:

    http://img168.imageshack.us/img168/1305/errortl6.jpg

    O código usado é o seguinte:

    Código:
    IGraphBuilder graphBuilder = null;
    IMediaControl mediaControl = null;
    IBaseFilter sourceFilter = null;
    FileWriter writer = null;
    IFileSinkFilter sinkFilter = null;
    graphBuilder = (IGraphBuilder)newFilterGraph();
    mediaControl = (IMediaControl)graphBuilder;
    graphBuilder.AddSourceFilter(filename, "source", out sourceFilter);
    Type type = Type.GetTypeFromCLSID(newGuid("1E1299A2-9D42-4F12-8791-D79E376F4143"));
    IBaseFilter mkvdest = (IBaseFilter)Activator.CreateInstance(type);
    writer = newFileWriter();
    sinkFilter = (IFileSinkFilter)writer;
    sinkFilter.SetFileName(filename.Replace(".wmv", ".mkv"), null);
    graphBuilder.AddFilter((IBaseFilter)writer, "File Writer");
    graphBuilder.AddFilter(mkvdest, "MKV DEST");
    IPin sourceOut = null;
    IPin mkvDestIn = null;
    IPin mkvDestOut = null;
    IPin writeIn = null;
    sourceFilter.FindPin("Output", out sourceOut);
    mkvdest.FindPin("In", out mkvDestIn);
    mkvdest.FindPin("Out", out mkvDestOut);
    ((IBaseFilter)sinkFilter).FindPin("in", out writeIn);
    graphBuilder.Connect(sourceOut, mkvDestIn);
    graphBuilder.Connect(mkvDestOut, writeIn);
    mediaControl.Run();

    Procurei por qualquer solução para este problema mas sem sucesso.

    Alguém que me ajude.

    Cumprimentos, Pedro Nunes.
     
    Última edição pelo moderador: 7 de Janeiro de 2008
  2. eu já procurei no msdn e no google alguma solução para o erro sem sucesso, por isso é que recorri ao forum para obter ajuda de alguma pessoa que entenda mais desta tecnologia.
     
    Última edição: 9 de Janeiro de 2008

Partilhar esta Página