- controlapi.cpp: make ScreenshotCGI() more configurable

This commit is contained in:
svenhoefer
2013-02-12 13:58:21 +01:00
parent 08fd651d60
commit 133740da14
2 changed files with 25 additions and 6 deletions

View File

@@ -1829,11 +1829,17 @@ Die Pluginliste wird neu geladen.
<div class="title1"><a name="screenshot"></a>42. Screenshot erstellen</div> <div class="title1"><a name="screenshot"></a>42. Screenshot erstellen</div>
<div class="URL">Handler: http://dbox/control/screenshot</div> <div class="URL">Handler: http://dbox/control/screenshot</div>
<br> <br>
<b>Parameter:</b> keine<br> <b>Parameter:</b> name=&lt;dateiname&gt;&amp;osd=1|0&amp;video=1|0<br><br>
<b>R<EFBFBD>kgabe</b>: ok<br> <b>R<EFBFBD>ckgabe</b>: ok<br>
<br> <br>
Screenshot mit TV Bild und OSD wird erstellt und unter /tmp/screenshot.png abgelegt. Screenshot mit TV Bild und OSD wird erstellt und unter /tmp/&lt;dateiname&gt;.png abgelegt.
<br> <br>
<div class="example">
Beispiel:<br>
<br>
&gt;&gt;&gt;http://dbox/control/screenshot?osd=0&amp;video=1<br>
ok<br>
&nbsp;</div>
&nbsp;&nbsp;</p> &nbsp;&nbsp;</p>

View File

@@ -1463,10 +1463,23 @@ void CControlAPI::ReloadPluginsCGI(CyhookHandler *hh)
void CControlAPI::ScreenshotCGI(CyhookHandler *hh) void CControlAPI::ScreenshotCGI(CyhookHandler *hh)
{ {
CScreenShot * sc = new CScreenShot("/tmp/screenshot.png", (CScreenShot::screenshot_format_t)0 /*PNG*/); bool enableOSD = true;
sc->EnableOSD(true); bool enableVideo = true;
std::string filename = "screenshot";
if(hh->ParamList["osd"] == "0")
enableOSD = false;
if(hh->ParamList["video"] == "0")
enableVideo = false;
if(hh->ParamList["name"] != "")
filename = hh->ParamList["name"];
CScreenShot * sc = new CScreenShot("/tmp/" + filename + ".png", (CScreenShot::screenshot_format_t)0 /*PNG*/);
sc->EnableOSD(enableOSD);
sc->EnableVideo(enableVideo);
sc->Start(); sc->Start();
hh->SendOk();
hh->SendOk(); // FIXME what if sc->Start() failed?
} }
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------