Tuesday, July 17, 2012

Good for Theora

Good for Theora
    public String[] buildWithoutPreview() {
        List<String> params = new ArrayList<String>();       
        params.add(":dshow-adev=none");
        params.add(String.format(":dshow-vdev=%s", getDeviceName()));
        params.add(String.format(":dshow-aspect-ratio=%s", getAspectRatio()));
        params.add(":live-caching=300");
        if(width > 0 && height > 0)
            params.add(String.format(":dshow-size=%dx%d", width, height));
/*        StringBuilder chain = new StringBuilder(":sout=#");
        chain.append("duplicate{dst='")
             .append(buildTranscodeParams())
             .append("'}");
        params.add(chain.toString());     
*/
//params.add(String.format(":sout=#transcode{vcodec=h264,vb=1024,fps=15,scale=0,width=%d,height=%d}", width, height));
//params.add(String.format(":std{access=file,mux=mp4,dst='C:\\test.mp4'}"));
        params.add(String.format(":sout=#transcode{vcodec=theo,vb=1024,fps=15,scale=0,width=%d,height=%d}:std{access=file,mux=ogg,dst='C:\\testTheo.mp4'}", width, height));
//        params.add(String.format(":sout=#transcode{vcodec=h264,vb=1024,fps=15,scale=0,width=%d,height=%d}:std{access=file,mux=mp4,dst='C:\\test.mp4'}", width, height));
        String[] result = params.toArray(new String[params.size()]);
        logger.log(Level.INFO, Arrays.toString(result));

//        params.add(String.format(":sout=#transcode{vcodec=h264,vb=512,fps=%d,scale=0,width=%d,height=%d,acodec=mpga,ab=128,channels=2,samplerate=44100}:std{access=file,mux=mp4,dst='C:\\test.mp4'}", getFramerate(), width, height));
//        String[] result = {"sout=#transcode{vcodec=h264,vb=1024,fps=15,scale=0,width=1280,height=720,acodec=mpga,ab=128,channels=2,samplerate=44100}:std{access=file,mux=mp4,dst='C:\\test.mp4'}"};
        return result;
    }

No comments:

Post a Comment