Skip to content

mpgtx: MPEG splitting made easy

Considering ffmpeg for mpeg cutting/splitting… too complex i think for such a simple task.

mpgtx.sourceforge.net is the way to go if are looking for simple operations like cutting/joining mpeg files.

Tool Summary :

This simple command(from a ruby script I wrote) will cut the full length videos into count_chunks pieces and store them under directory_writable, where count_chunks and directory_writable are both variables
[code]

Open3.popen3("/bin/mpgtx -#{count_chunks} #{_file_to_process} -f -b #{directory_variable}/#{game.file_path.gsub('.mpg','')} 2>> #{directory_variable}/split.log")

[/code]

Share

Ruby: Can’t modify frozen string

Workaround:

_use_me = frozen_string.dup

Share

Rails RJS redirect

page.redirect_to :action => ‘thanks’, :p1 => @g_resp.params["_code"], :p2 => @r_id

Share

Form tag & Extra Vertical Space Problem

Fix:
form style=”margin-top: 0px;margin-bottom: 0px;”

Share

textbox image alignment problem

Problem:
[code]
text_field(:member, :dob,:size=>"20", :maxlength => "50",:tabindex=>"22") img_tag
[/code]
Fix:
[code]
text_field(:member, :dob,:size=>"20", :maxlength => "50",:tabindex=>"22") img_tag {:style="position:absolute"}
[/code]

Share

Windows Media Player Events

Value     State     Description
0     Undefined         Windows Media Player is in an undefined state.
1     Stopped            Playback of the current media item is stopped.
2     Paused             Playback of the current media item is paused. When a media item is                                                       paused, resuming playback begins from the same location.
3     Playing                 The current media item is playing.
4     ScanForward         The current media item is fast forwarding.
5     ScanReverse         The current media item is fast rewinding.
6     Buffering                 The current media item is getting additional data from the server.
7     Waiting                 Connection is established, but the server is not sending data. Waiting for session to begin.
8     MediaEnded     Media item has completed playback.
9     Transitioning     Preparing new media item.
10     Ready             Ready to begin playing.
11     Reconnecting     Reconnecting to stream.

Remarks

Windows Media Player states are not guaranteed to occur in any particular order. Furthermore, not every state necessarily occurs during a sequence of events. You should not write code that relies upon state order.

Example Code

The following JScript code shows the use of the player.playState property. An HTML text element, named “myText”, displays the current status. The Player object was created with ID = “Player”.

// Test whether Windows Media Player is in the playing state.
if (3 == Player.playState)
myText.value = “Windows Media Player is playing!”;
else
myText.value = “Windows Media Player is NOT playing!”;

Share

Multiple Gtalk instances

This is how you can run multiple instances of Google talk
c:\> googletalk.exe /nomutex

pretty straight huh !

Share

PHP / Windows Task scheduling from command prompt

schtasks /create /tn “My Scheduled Jobs” /tr “php-win.exe D:\Program Files\xampp\htdocs\somefile.php” /sc minute

make sure that php-win.exe is in path while giving this command

Share

Setting up a Linux Proxy server using Fedora core 5

Assumption:

- eth0 is the external interface (Connected to internet)
- eth1 is the internal interface (local network) (Fixed IP)

Edit /etc/sysctl.conf to enable ip forwarding permanently.

net.ipv4.ip_forward = 1

Edit /etc/sysconfig/iptables-config and make following changes:

IPTABLES_MODULES=”ip_conntrack_netbios_ns ip_conntrack ip_conntrack_ftp ip_conntrack_irc iptable_nat ip_nat_ftp ip_nat_irc”
IPTABLES_SAVE_ON_STOP=”yes”
IPTABLES_SAVE_ON_RESTART=”yes”

# To clear out any existing rules and set default policy,
# run following commands on command prompt
iptables -P INPUT ACCEPT
iptables -F INPUT
iptables -P OUTPUT ACCEPT
iptables -F OUTPUT
iptables -P FORWARD DROP
iptables -F FORWARD
iptables -t nat -F

# FWD: Allow all connections OUT and only existing and related ones IN

iptables -A FORWARD -i eth0 -o eth1 -m state –state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

# Enabling MASQUERADE functionality on eth0
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Share

Tight up single-user login mode

Linux has a special command (linux single) also known as ‘single-user mode’, which can be
entered at the boot prompt during startup of the system. The single-user mode is generally used
for system maintenance. You can boot Linux in single-user mode by typing at the LILO boot
prompt the following command:
LILO: linux single

This will place the system in Run level 1 where you’ll be logged in as the super-user ‘root’, and
where you won’t even have to type in a password! Requiring no password to boot into root under single-user mode is a bad idea! You can fix this by
 Editing the inittab file (vi /etc/inittab) and change the following line:
id:3:initdefault:
To read:
id:3:initdefault:
~~:S:wait:/sbin/sulogin
The addition of the above line will require to enter the root password before continuing to boot
into single-user mode by making init (8) run the program sulogin (8) before dropping
the machine into a root shell for maintenance.

 Now, for the change to take effect type in the following at a prompt:
# /sbin/init q

Share