[vlc-devel] Transcoding with API 0.9.0
Jean-François Massol
jf.massol at gmail.com
Sun Jun 24 19:11:39 CEST 2007
Hello !
I look for informations about how to compose arguments in order to transcode
through API. After some researches, it seems that it's not possible to
use "sout" with API (no problem for vout, aout etc.). I saw a "to do" in the
API documentation. Am I wrong ?
regards,
JF
Le vendredi 22 juin 2007 15:01, vous avez écrit :
> Hello everybody,
>
> I fixed my API problems (0.9.0). I followed API guidelines given. But I'm
> facing a problem, within API, as argv arguments given (mainly for
> transcoding), I got those error messages :
>
> /* error messages */
> [00000328] stream_out_standard private error: no access _and_ no muxer
> (fatal error)
> [00000327] main stream output error: stream chain failed for
> `std{mux="",access=""#transcode{vcodec=mp2v,vb=512k,scale=1,acodec=128,ab=1
>28}",dst="duplicate{dst=std{access=file,dst=/home/videogate/FRANCE.ts}}""}'
> [00000326] main input error: cannot start stream output instance, aborting
> [00000317] access_mms access error: error while asking for file -1
> [00000317] access_mms access error: error while asking for file -1
> [00000317] access_mms access error: cannot connect to server
> [00000317] access_mms access error: no stream selected
> [00000317] access_mms access error: cannot start stream
> /* ************ */
>
> and this is my source code :
>
> int Transcoder::transcoder_init()
> {
> cout << "Transcoder_init() : " << this->home << endl;
> string trspts =
> "\"#transcode{vcodec=mp2v,vb=512k,scale=1,acodec=128,ab=128}:duplicate{dst=
>std{access=file,dst="+ this->home +"}}\"";
> char *opts[] = {"vlc","--sout",(char *)trspts.c_str()};
> libvlc_exception_init (&_transexcep);
> _transcoder = libvlc_new(3,opts,&_transexcep);
>
> if(libvlc_exception_raised(&_transexcep))
> {
> cerr << "Transcoder init : " <<
> libvlc_exception_get_message(&_transexcep);
> MSG_GENERIC("Cannot init Transcoder")
> libvlc_exception_clear(&_transexcep);
> exit(1);
> }
>
> if(_transcoder == NULL)
> {
> cerr << "No Transcoder instance found !";
> MSG_GENERIC("Cannot init Transcoder")
> exit(1);
> }
>
> MSG_GENERIC("Transcoder successfully initialized")
> return 0;
> }
>
> My VLC instance is successfully initialized. But I don't understand why a
> "std{mux="",access=" in addition to my args ?
> Is there a special format for argv in order to transcode my streams ? When
> I tried "-vvv", it works fine, but no way for my transcode args.
>
> Thanks a lot one more time.
>
> regards,
>
> JF
--
Jean-François Massol
jf.massol at gmail.com
_______________________________________________
vlc-devel mailing list
vlc-devel at videolan.org
http://mailman.videolan.org/listinfo/vlc-devel
More information about the vlc-devel
mailing list