Differences

This shows you the differences between two versions of the page.

Link to this comparison view

sw:vlc [d-m-Y H:i] (current)
Line 1: Line 1:
 +====== VLC ======
  
 +===== Fragments =====
 +
 +  :​sout=#​transcode{vcodec=mp1v,​vb=,​scale=1,​acodec=mpga,​ab=192,​channels=2}:​duplicate{dst=std{access=udp,​mux=ts,​url=192.168.178.2:​1234}}
 +
 +  :​sout=#​transcode{vcodec=mp4v,​vb=2500,​scale=0.75,​acodec=mp4a,​ab=128,​channels=2,​deinterlace}:​duplicate{dst=std{access=file,​mux=mp4,​url="​test.mpeg"​}}
 +
 +
 +===== Command Lines =====
 +
 +===== Scripts =====
 +
 +==== Shell ====
 +
 +<​code>​
 +#!/bin/bash
 +/​Applications/​VLC.app/​Contents/​MacOS/​VLC -vvv "​$1.mpg"​ \
 + ​--sout "#​transcode{vcodec=mp4v,​vb=1024,​scale=1,​ \
 + ​acodec=mp4a,​ab=128,​channels=2}:​standard{access=file,​ \
 + ​url=$1.mp4}"​ \
 + ​--aspect-ratio "​4:​3"​ --sout-transcode-width 360 \
 + ​--sout-transcode-height 240 --sout-transcode-fps 30    ​
 +</​code>​
 +
 +==== Java ====
 +
 +=== Transcode and scale ===
 +<​code>​
 +// dbvlc.js - Dreambox VLC Script 2004 - Lars Ronnback (lars@delicate.se)
 +
 +// Configuration
 +var dreambox = "​192.168.0.2";​
 +var useTranscoding = "​true"​
 +
 +// Transcoding options
 +var windows = "​192.168.0.3";​
 +var port = 8080;
 +var videoCodec = "​mp4v";​
 +var videoBitrate = 400;
 +var scale = 0.5;
 +var audioCodec = "​vorb";​
 +var audioBitrate = 96;
 +var mux = "​ogg";​
 +var access = "​http";​
 +
 +// Used for reading registry and calling vlc
 +var shell = new ActiveXObject("​WScript.Shell"​);​
 +
 +// Fetch the streaminfo from the Dreambox
 +var xmlhttp = new ActiveXObject("​Microsoft.XMLHTTP"​);​
 +xmlhttp.open("​GET",​ "​http://"​ + dreambox + "/​cgi-bin/​streaminfo",​ false);
 +xmlhttp.send();​
 +var streaminfo = xmlhttp.responseText;​
 +
 +// Get rid of some HTML junk
 +var trTag = /<​tr>/​g;​
 +streaminfo = streaminfo.replace(trTag,​ "​\n"​);​
 +var anyTag = /<​[^>​]*>/​g;​
 +streaminfo = streaminfo.replace(anyTag,​ ""​);​
 +
 +// Parse the important values
 +// shell.popup(streaminfo);​
 +var pmt = streaminfo.substr(streaminfo.indexOf("​PMT:"​) + 4, 4);
 +var aPid = streaminfo.substr(streaminfo.indexOf("​APID:"​) + 5, 4);
 +var vPid = streaminfo.substr(streaminfo.indexOf("​VPID:"​) + 5, 4);
 +var vfIndex = streaminfo.indexOf("​Video Format:"​);​
 +var width = streaminfo.substr(vfIndex + 13,
 +streaminfo.indexOf("​x",​ vfIndex) - vfIndex - 13);
 +var height = streaminfo.substr(streaminfo.indexOf("​x",​ vfIndex) + 1,
 +streaminfo.indexOf("​ ", vfIndex) - vfIndex - 2);
 +
 +// Read the VLC location from the registry
 +var key = "​HKLM\\Software\\Classes\\Applications\\vlc.exe\\shell\\Play\\command\\";​
 +var vlc = shell.regRead(key);​
 +vlc = vlc.substr(0,​ vlc.lastIndexOf("​ "));
 +
 +// Set up transcoding options
 +var transcoding = ""​
 +if (useTranscoding == "​true"​)
 +transcoding = "​--sout \"#​transcode{acodec="​ + audioCodec + ",​ab="​ + audioBitrate +
 +",​vcodec="​ + videoCodec + ",​width="​ + width * scale +
 +",​height="​ + height * scale + ",​deinterlace}:​standard{access="​ +
 +access + ",​mux="​ + mux + ",​url="​ + windows + ":"​ + port + "​}\"";​
 +
 +// Start VLC with all options
 +var commandLine = "​\""​ + vlc + "​\"​ -vvv http://"​ + dreambox + ":​31339/​0,"​ + pmt +
 +","​ + vPid + ","​ + aPid + " " + transcoding;​
 +shell.run(commandLine);​
 +</​code>​
 
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki