<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>TabGen</title>
	<atom:link href="http://www.tabgen.com/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.tabgen.com/blog</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Fri, 09 Dec 2011 11:17:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>Making ARP packets with scapy</title>
		<link>http://www.tabgen.com/blog/?p=13</link>
		<comments>http://www.tabgen.com/blog/?p=13#comments</comments>
		<pubDate>Fri, 09 Dec 2011 11:17:10 +0000</pubDate>
		<dc:creator>admin0001</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.tabgen.com/blog/?p=13</guid>
		<description><![CDATA[When I was starting to learn scapy library, and tried to make some ARP packets, it was a little bit hard to find what I needed in the documentation and Google. These are just a few notes that may help. &#8230; <a href="http://www.tabgen.com/blog/?p=13">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>When I was starting to learn <strong>scapy</strong> library, and tried to make some <strong>ARP</strong> packets, it was a little bit hard to find what I needed in the documentation and Google. These are just a few notes that may help.</p>
<p>¿What are the <strong>parameters</strong> in an ARP packet?</p>
<p>We can see them creating a void ARP packet and then calling <code>show()</code> method. This is the output of Python CLI:</p>
<p><code><br />
>>> x = ARP()<br />
>>> x.show()<br />
###[ ARP ]###<br />
  hwtype    = 0x1<br />
  ptype     = 0x800<br />
  hwlen     = 6<br />
  plen      = 4<br />
  op        = who-has<br />
  hwsrc     = 78:ac:c0:43:11:f8<br />
  psrc      = 192.168.1.2<br />
  hwdst     = 00:00:00:00:00:00<br />
  pdst      = 0.0.0.0<br />
</code></p>
<p>The ARP <strong>operation</strong> is encoded in the <code>op</code> attribute, which may be set to <code>"who-has"</code> (<strong>ARP REQUEST</strong>) or <code>"is-at"</code> (<strong>ARP REPLY</strong>).</p>
<p>Example:</p>
<p><code><br />
pkt = Ether() / ARP(psrc="10.0.0.2",pdst="10.0.0.1",op="is-at",hwsrc="00:1B:C9:21:08:7E")<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tabgen.com/blog/?feed=rss2&#038;p=13</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>solving MKVToolnix compile crash</title>
		<link>http://www.tabgen.com/blog/?p=10</link>
		<comments>http://www.tabgen.com/blog/?p=10#comments</comments>
		<pubDate>Sun, 03 Jul 2011 11:55:37 +0000</pubDate>
		<dc:creator>admin0001</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[compile]]></category>
		<category><![CDATA[mkvtoolnix]]></category>

		<guid isPermaLink="false">http://www.tabgen.com/blog/?p=10</guid>
		<description><![CDATA[When trying to compile mkvtoolnix 4.6 on Ubuntu 10.10, the compiler crashed with the following error message: (in /home/agonzalez/src/mkvtoolnix-4.6.0) CXX src/input/flac_common.cpp cc1plus: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. The solution &#8230; <a href="http://www.tabgen.com/blog/?p=10">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
When trying to compile mkvtoolnix 4.6 on Ubuntu 10.10, the compiler crashed with the following error message:</p>
<p><code><br />
(in /home/agonzalez/src/mkvtoolnix-4.6.0)<br />
     CXX src/input/flac_common.cpp<br />
cc1plus: internal compiler error: Segmentation fault<br />
Please submit a full bug report, with preprocessed source if appropriate.<br />
</code></p>
<p>
The solution is discussed at Gentoo&#8217;s BugZilla in <a href="http://bugs.gentoo.org/show_bug.cgi?id=311595">bug 311595</a>.</p>
<p>
In a few words, the problem is solved by compiling the source files that give problems with a special command line. This line was, in my case:
</p>
<p><code><br />
g++ -O3 -march=barcelona -O2 -ftracer -ftree-vectorize -g -ggdb -fvisibility-inlines-hidden -DPACKAGE=\"mkvtoolnix\" -DVERSION=\"4.7.0\" -DMTX_LOCALE_DIR=\"/usr/share/locale\" -DMTX_PKG_DATA_DIR=\"/usr/share/mkvtoolnix\"  -I. -Ilib -Ilib/avilib-0.6.10 -Ilib/utf8-cpp/source -Isrc -Ilib/libebml -MMD -c -o src/input/flac_common.o src/input/flac_common.cpp<br />
</code></p>
<p>This compiles <tt>src/input/flac_common.cpp</tt> into object file <tt>src/input/flac_common.o</tt>. I had to repeat this for <tt>src/common/curl.cpp</tt>, changing the corresponding filenames in the command line.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tabgen.com/blog/?feed=rss2&#038;p=10</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>dvgrab micro-howto</title>
		<link>http://www.tabgen.com/blog/?p=8</link>
		<comments>http://www.tabgen.com/blog/?p=8#comments</comments>
		<pubDate>Sun, 03 Jul 2011 11:54:33 +0000</pubDate>
		<dc:creator>admin0001</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[dvgrab]]></category>
		<category><![CDATA[firewire]]></category>
		<category><![CDATA[permissions]]></category>
		<category><![CDATA[raw1394]]></category>

		<guid isPermaLink="false">http://www.tabgen.com/blog/?p=8</guid>
		<description><![CDATA[In this post, basic usage of dvgrab is explained. Dvgrab is a CLI tool that allows the user to capture Digital Video (DV) data from a FireWire port. Capture and save to .dv files A first try would look like &#8230; <a href="http://www.tabgen.com/blog/?p=8">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div   style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;  font-family:'Times New Roman';font-size:medium;"><span id="internal-source-marker_0.2020015949383378"  style="font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-family:Verdana;"><span class="Apple-style-span"  style="font-size:medium;">In this post, basic usage of </span></span><span id="internal-source-marker_0.2020015949383378"  style="text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-family:Verdana;"><b><span class="Apple-style-span"  style="font-size:medium;">dvgrab</span></b></span><span id="internal-source-marker_0.2020015949383378"  style="font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-family:Verdana;"><span class="Apple-style-span"  style="font-size:medium;"> is explained. Dvgrab is a CLI tool that allows the user to capture Digital Video (DV) data from a FireWire port.</span></span></div>
<div    style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-   font-family:'Times New Roman';font-size:medium;color:transparent;"><span id="internal-source-marker_0.2020015949383378"  style="font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-family:Verdana;"><span class="Apple-style-span"  style="font-size:medium;"><br />
</span></span></div>
<div    style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-   font-family:'Times New Roman';font-size:medium;color:transparent;"><span id="internal-source-marker_0.2020015949383378"  style="font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-family:Verdana;"><span class="Apple-style-span"  style="font-size:medium;"><br />
</span></span></div>
<div   style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-  font-family:'Times New Roman';color:transparent;"><span id="internal-source-marker_0.2020015949383378"  style="font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-family:Verdana;"><span class="Apple-style-span"  style="font-size:large;"></span></span></div>
<p><span><span><span class="Apple-style-span"  style="font-size:large;">Capture and save to .dv files</span></p>
<p>A first try would look like this:</p>
<p></span></span>
<div><span><span># dvgrab &#8211;format raw &#8211;autosplit &#8211;size 100 source_</p>
<p>This tells dvgrab to capture data and save it in files source_001.dv, source_002.dv, etc, limiting the size of each file to 100 MB.<br />
[Reference: <a href="http://www.linux.com/news/software/multimedia/8262-become-a-digital-video-editing-guru-using-linux-tools">Become a digital editing guru using linux tools</a> ]</p>
<p><span class="Apple-style-span"  style="font-size:large;">Capture and encode</span></p>
<p>Digital Video is not compressed very much, so it takes a lot of disk space to store .dv files.<br />
We may want to encode the video as we capture it, for example using ffmpeg2theora.</p>
<p># dvgrab &#8211;format raw &#8211; | ffmpeg2theora -a 0 -v 5 -f dv -x 320 -y 240 -o video.ogg</span></span></div>
<div><span><span><br />
Taking one step ahead, we may stream this encoded video to an Icecast2 server, using oggfwd.</p>
<p># dvgrab &#8211;format raw &#8211; | \<br />
ffmpeg2theora -a 0 -v 5 -f dv -x 320 -y 240 -o /dev/stdout &#8211; | \</span></span></div>
<div><span><span> oggfwd  www.myicecastserver.net  8000 passwd /mountpoint.ogg</span></span></div>
<div><span><span><br />
[Reference: <a href="http://v2v.cc/~j/ffmpeg2theora/examples.html">ffmpeg2theora examples</a> ]</p>
<p><span class="Apple-style-span"  style="font-size:large;">FireWire permissions</span></p>
<p>In some Linux distributions, the FireWire device (/dev/raw1394) has file access permissions only for the superuser.</p>
<p>In a terminal windows do as follows:</p>
<p>$ sudo  /etc/udev/rules.d/40-permissions.rules</p>
<p>Where you can replace  with: emacs, vi, nano, gedit, &#8230;</p>
<p>Find the line that says:</p>
<p>KERNEL==&#8221;raw1394&#8243;,                      GROUP=&#8221;disk&#8221;</p>
<p>and change it to:</p>
<p>KERNEL==&#8221;raw1394&#8243;,                      GROUP=&#8221;video&#8221;</p>
<p>This implies some security risks. Please read the reference for more information.</p>
<p></span></span></div>
<div><span><span>References:</span></span></div>
<div><span><span><a href="http://en.wikibooks.org/wiki/Kdenlive/FAQ#I_get_a_.27read_permission.27_error_when_trying_to_capture_video_.28as_normal_user.29">i get a &#8216;read permission&#8217; error when trying to capture video (as normal user)</a></span></span></div>
<div><span><span><a href="http://en.wikibooks.org/wiki/Kdenlive/FAQ">Kdenlive FAQ</a></span></span></div>
<div><span><span><br />
</span></span></div>
<div><span><span>Similar information can be found here:</span></span></div>
<div><span><span><br />
</span></span></div>
<div><span><span><a href="https://ieee1394.wiki.kernel.org/index.php/FAQ#How_to_get_access_to_raw1394_as_unprivileged_user.3F">How to get access to raw1394 as unprivileged user?</a></span></span></div>
<div><span><span><a href="https://ieee1394.wiki.kernel.org/index.php/FAQ">IEEE 1394 FAQ</a></p>
<p></span></span></div>
<div><span><span><br />
</span></span></div>
<div><span class="Apple-style-span"  style="font-size:large;">sudo, ksudo and gksudo</span></div>
<div><span><span><br />
Other possibility is to use sudo. Sudo allows you execute a command as other user, just writing &#8216;sudo&#8217; before the command:</p>
<p>$ sudo dvgrab &#8230;</p>
<p>Tipically, sudo will prompt you to type your password in the terminal.</p>
<p>ksudo and gksudo are similar to sudo, but they are designed to be used in KDE or GNOME (respectively), and they ask for your password in a window, rather than in the terminal.<br />
See also:</span></span></div>
<div><span><span><a href="http://www.sudo.ws/">sudo</a></span></span></div>
<div><span><span><a href="http://ksudo.sourceforge.net/kdesudo/">ksudo</a></span></span></div>
<div><span><span><a href="http://fedoraproject.org/wiki/Features/gksudo">gksudo (Fedora)</a></span></span></div>
<div><span><span><br />
</span></span>
<div    style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-   font-family:'Times New Roman';font-size:medium;color:transparent;">
<div  style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background- color:transparent;"><span style="  color: rgb(0, 0, 0); background- font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-family:Verdana;font-size:11pt;color:transparent;"><br />
</span></div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.tabgen.com/blog/?feed=rss2&#038;p=8</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GStreamer Tutorials</title>
		<link>http://www.tabgen.com/blog/?p=4</link>
		<comments>http://www.tabgen.com/blog/?p=4#comments</comments>
		<pubDate>Sun, 03 Jul 2011 11:52:58 +0000</pubDate>
		<dc:creator>admin0001</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.tabgen.com/blog/?p=4</guid>
		<description><![CDATA[In this post, I group some interesting tutorials and documentation related to GStreamer. - Here is the official docummentation. http://gstreamer.freedesktop.org/documentation/ - Here is also a good tutorial. http://www.cin.ufpe.br/~cinlug/wiki/index.php/Introducing_GStreamer GStreamer is a C library. But there are also binding for Python &#8230; <a href="http://www.tabgen.com/blog/?p=4">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In this post, I group some interesting tutorials and documentation related to GStreamer.</p>
<p>- Here is the official docummentation.</p>
<p><a href="http://gstreamer.freedesktop.org/documentation/">http://gstreamer.freedesktop.org/documentation/</a></p>
<p>- Here is also a good tutorial.</p>
<p><a href="http://www.cin.ufpe.br/%7Ecinlug/wiki/index.php/Introducing_GStreamer">http://www.cin.ufpe.br/~cinlug/wiki/index.php/Introducing_GStreamer</a></p>
<p>GStreamer is a C library. But there are also binding for Python (PyGST). When I was trying to learn GStreamer, glib and GObject concepts became a stone in the way, since I hadn&#8217;t much experience with these libraries. So I think, if someone has some basic understanding of Python, maybe PyGST is a easier way to begin learning GStreamer concepts.</p>
<p>So, here are some Python GStreamer tutorials:</p>
<p><a href="http://pygstdocs.berlios.de/">http://pygstdocs.berlios.de/</a></p>
<p><a href="http://pygstdocs.berlios.de/pygst-tutorial/introduction.html">http://pygstdocs.berlios.de/pygst-tutorial/introduction.html</a></p>
<p><a href="http://www.jonobacon.org/2006/08/28/getting-started-with-gstreamer-with-python/">http://www.jonobacon.org/2006/08/28/getting-started-with-gstreamer-with-python/</a></p>
<p><a href="http://pitivi.org/wiki/Introduction">http://pitivi.org/wiki/Introduction</a><br />
<span style="display: block;" id="formatbar_Buttons"><span class=" on down" style="display: block;" id="formatbar_CreateLink" title="Enlace" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"></p>
<p><img src="http://www.blogger.com/img/blank.gif" alt="Enlace" class="gl_link" border="0" /></span></span><br />
<span style="display: block;" id="formatbar_Buttons"><span class=" on down" style="display: block;" id="formatbar_CreateLink" title="Enlace" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"><br />
</span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tabgen.com/blog/?feed=rss2&#038;p=4</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://www.tabgen.com/blog/?p=1</link>
		<comments>http://www.tabgen.com/blog/?p=1#comments</comments>
		<pubDate>Sun, 03 Jul 2011 11:43:42 +0000</pubDate>
		<dc:creator>admin0001</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.tabgen.com/blog/?p=1</guid>
		<description><![CDATA[Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!]]></description>
			<content:encoded><![CDATA[<p>Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tabgen.com/blog/?feed=rss2&#038;p=1</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

