First, a little background. I was on a Skype call a short time ago and noticed that Skype would randomly zoom in and zoom out during the call. It seemed to happen at random, and I couldn’t figure out why, nor could I find any way of controlling it.
My Asus T100’s camera does have a user-controllable zoom, but it is zoomed all the way out when this is happening. It does not have face-following, a feature commonly blamed for this issue in Skype.
Here’s a shot of the Video Settings dialog in Skype, for anyone interested.
After some digging around the web, I’ve found a logical chain of forum posts that seem to indicate what the issue is, and point to a potential fix.
First, this blog post from another user who had the same issue, and he worked around it by installing and using ManyCam. This did work to resolve the issue, but requires ManyCam be running and adds the extra resources that it requires. If you decide to go this route, I strongly recommend areful reading during the ManyCam installer. It’s full of add-ons.
Second, this thread on yCombinator suggests a few things: 1) That lack of bandwidth is causing Skype to switch the camera to a lower resolution, resulting in the zoom; and that 2) lack of movement in portions of the cameras image is causing it to zoom. Theory 1 seems more plausible.
Third, this post on the Skype forums suggests that Skype’s video resolution can be forced by editing an xml file. Quoted with edits:
It’s impossible to change either the capture or stream video resolution in the Skype GUI. But the capture resolution can be changed by adding for example this:<Video> <CaptureWidth>1280</CaptureWidth> <CaptureHeight>960</CaptureHeight> </Video>
directly under the
<Lib>tag in %AppData%\Skype\shared.xml. The other supported resolutions also work. Check that it works from Call -> Call Technical Info.
Of course, make sure that you are forcing a resolution that your camera supports, that your PC has enough processing power to support, and that you have sufficient bandwidth for. Otherwise, you will experience undesirable effects. 640×480 is a good choice for many. 1280×720 would require a webcam capable of 720p HD capture. A 1.2 MP camera could give a resolution of 1280×960.
I used 1280×960 above as my camera is 1.2 megapixel. However, in my Call Technical Info, my camera is capturing at 1280×720, and zoom is correct. In one instance the camera zoomed in, and the Call Technical Info showed that it was capturing at 240×360. The zoom is definitely connected to the capture resolution, but changing the xml settings does not guarantee that Skype will force the resolution under all (or any) circumstances.
I’m also going to add that this is directly targeted at Skype for Desktop, not the Windows 8 app. If you are able to try this, please let me know your results.
(I realize this is far from being a new thing, but I also know that some people don’t know how to do this, so I’m going to explain this for today’s lucky 10,000.)
I have a lot of very useful bookmarks, as I’m sure many of you readers do as well. I also tend to use more than one web browser. It’s a huge pain to constantly export/import bookmarks across browsers, back up favorites before re-installing an OS, etc. What if you could just have your favorites saved to disk, and use them however and whenever you wanted? That would be great.
Firefox and Chrome both have features where you can sync your bookmarks to their cloud services, but that only works with that one browser.
So, actually, you can save them to disk. And I’m not talking about saving the page to disk (via file > save). No. Not that. That saves the whole page and all of the content to your disk. No. I’m talking about saving just the link. Not in a text file, but in a simple file you can double-click to open in your web browser.
Sounds awesome, right? It is.
So here’s how you do it. In your favorite web browser, just locate the page favicon (that’s what that little icon next to the web address is called. It’s a favicon.) and drag it to your desktop, or other such folder. Screenshots below for Internet Explorer and Chrome:
Now you can save those files anywhere you want, even such places such as Dropbox, OneCloud, etc. Even a USB stick.
OneDrive users: If your link does something unexpected when you double-click on it (like trying to print), make sure it’s an Offline file. Right-click your link and select Make available offline. You can select multiple files and do this to many at once, or even an entire folder.
If you have an XBox 360 hooked up to your TV over HDMI, you very well may experience popping, crackling, or static sounds while playing games.
It took me a bit of Googling to find the solution to this problem. Most people think it’s bad HDMI ports, cables, interference, or other. When in fact, I found the simplest solution (and the correct one) was to go into the console settings, under sound, and notice that the XBox by default is configured for Dolby 5.1 surround sound. On a 2-speaker system, this is not correct and will result in distorted sound. Change this setting to digital stereo and that will solve the issue.
The Windows “Backup and Restore” utility that was present in the control panel in Windows 7 could easily do full-system bare-metal backup and restore. Unfortunately, this tool was removed from the control panel in Windows 8.
However, it looks like that tool is still present on the hard drive and can be used. Here’s how to find it.
Click Start, and in the search box, type SDCLT.EXE . Right-click the and click Run As Administrator.
As always, a test restore is good practice.
Comments are welcomed below!
I currently have a portion of my backups on S3, with a life-cycle policy that includes moving the objects to Glacier after a period of time. This makes the storage much cheaper ($0.01/GB/Mo from $0.03/GB/Mo – Source), but has the downside that objects require a 4-hour restore period before they can become available for download. I have had need for some objects quickly, and so the 4-hour restore time isn’t worth the savings. Unfortunately, once an object has had this life-cycle applied to it, it can only be temporarily restored. In order to make it a standard object again, you have to download it, delete the Glacier object, and then re-upload it. Unfortunately, doing it all wasn’t quite as straightforward as I thought it might be. But, (I think) I figured out a way to get it done rather painlessly.
I’m going to be using s3cmd and a few cron jobs to automate this.
First, get s3cmd version 1.5. This version supports initiating restores on the Glacier objects. You can recursively initiate a restore on every object in the bucket, but when it hits a non-Glacier object it will stop. You can also use s3cmd to initiate a download of all the objects in the bucket, but when it hits a Glacier object, the download will stop. And you will end up with a zero-byte file. (Hey s3cmd developers, would you mind fixing this behavior, or at least writing in something to force progression on a failure, so we can walk through the entire bucket in one go?)
The solution had to involve initiating restores, waiting at least 4 hours for the restore, then going back for the restored data and deleting it from the buckets, then deleting any zero-byte files, and then doing it all over again later.
Ain’t nobody got time for that. Except cron. Cron has plenty of time for that.
First of all, make sure you have s3cmd installed and configured (with
s3cmd --configure). Then you can configure the following script to run every 4 hours. I’m not going to go into much detail on this. If you’re familiar with s3cmd and Amazon S3/Glacier, you can probably figure out how it works. I wrote it as a short-term fix, but it’s worth sharing.
#!/bin/bash # This script should be fired every 4 hours from a cron job until all # data from the desired bucket is restored. # Requires s3cmd 1.5 or newer # Temp file TEMPFILE=~/.s3cmd.restore.tmp # Bucket to restore data from. Use trailing slash. BUCKET="s3://bucketname/" # Folder to restore data to. Use trailing slash. FOLDER="/destination_folder/" # Because of the way s3cmd handles errors, we have to run in a certain method # 1: download/delete files from bucket, # 2: run restore on the remaining objects # 3: Do housekeeping on the downloaded data if [ ! -f $TEMPFILE ] then touch $TEMPFILE echo === Starting Download Phase s3cmd -r --delete-after-fetch --rexclude "/$" sync $BUCKET $FOLDER echo === Starting Restore Phase s3cmd -r -D 30 restore $BUCKET echo === Starting cleanup # s3cmd doesn't delete empty folders, and can create empty files. Clean this up. find $FOLDER -empty -delete # but it might accidentially delete the target directory if the download didn't # happen, so we have to fix that now mkdir $FOLDER rm $TEMPFILE fi
Note that restore, download, and delete operations can incur extra costs. Be aware of that before proceeding.
So that’s it. I *should* have my entire S3 bucket downloaded completely within the next few days, and then I can migrate to what I hope is a more simplified archiving plan.
My old laptop, a Dell Latitude E6510, has a bad DVD drive. It won’t read most discs, and almost everything I try to burn, fails. I purchased an external USB drive to use with it, and that works well. It was cheaper than replacing the drive itself. Replacing the drive is straightforward, I just don’t want to spend the money right now to get a new drive.
About a week ago I wanted to install some software from a CD (Who does that anymore, right?) on my Asus tablet, which lacks an optical drive, but has a USB port. I plugged the external USB drive into the port, and put the disc in it. Shortly after, the drive kept disappearing from ‘My Computer’, I kept hearing the Windows disconnect and reconnect sounds. It wouldn’t stay ‘connected.’
My son likes to get into things that he shouldn’t, so I nearly chewed him out for it straight away, but after taking a bit to calm down, I decided to troubleshoot. I thought it was a bad cable at first, so I tried a few different cables. No change. Tried wiggling the USB port to see if the tablet port was faulty, no change. I plugged the drive back into the Dell, and it worked without a problem. This got me thinking.
After some of that thinking, I finally figured out what the issue was, and I’m posting this to see if anyone else can figure it out too, because you’ll learn something from my ordeal. Something that may surprise you.
This is a photo of the bottom of the USB drive, showing the label and the USB plug. Most of the information you need to figure this out is in this photo. You may need to go and do a web search if you’re missing a piece of information.
Post your comments, questions, or guesses in the comments below. The first person who figures it out will get recognition, and I’ll clarify the answer if it needs any.
Hint: Again, almost everything you need to know to figure this out is in the photo of the USB drive. Almost. The rest is a quick web search away.
Hint: The Dell laptop has USB 2.0 ports. The tablet has USB 3.0. This is not the reason, although it’s going in the right direction.
Guess/Hint: Someone guessed that the drive was made on April Fool’s Day. A clever guess sir, but not correct. You are looking in the right area.
Guess: Someone guessed that I might have been using the microUSB “On The Go” (OTG) port. A good guess, as this tablet has one of those ports as well, but no. I was using the USB 3 port that’s on the tablet’s keyboard dock. I did just try using the OTG port instead of the USB 3.0 port and got the same result. I am not surprised.
Here are photos. Click any for a larger image:
Answer: My friend Gary got the idea that it might have been a power issue, but cwyenberg went so far as to point that 1.6A is a lot for a USB draw.
Explanation: From Wikipedia:
|USB 1.x and 2.0||500 mA[a]||5 V||2.5 W|
|USB 3.x||900 mA[b]||5 V||4.5 W|
USB devices can only ask for so much power, (up to 500mA for a USB 2.0 device), and 1.6A is far beyond that. This drive can’t be expected to work under all circumstances according to the USB specification. The reason that it worked on the Dell laptop is probably that Dell is allowing the device to draw more power for the sake of compatibility. This is why you see external hard drives with Y-cables — the device can pull from 2 USB ports to get more power and still adhere to the USB standard, allowing the device to be expected to work under all circumstances. Interestingly enough, the drive does work with a powered USB hub rated for 2.5A. So, if you’re having a similar issue as me, try getting a powered USB hub.
iManufacturer : 0x01 Language 0x0409 : "Hitachi-LG Data Storage Inc" iProduct : 0x02 Language 0x0409 : "Portable Super Multi Drive" ... MaxPower : 0xFA (500 mA)
Thanks for reading (and for your responses)!
A reader got in touch with me regarding my previous post, Quick sh script cronjob to fix user homes permissions on Synology. That script was initially intended to fix user homes file ownership, but this reader shared a script that uses the synoacltool to fix the Access Control List on directories.
A few thoughts regarding this script:
First, it was mentioned that these issues may be fixed in the latest DSM release. If you’re still experiencing file ownership and permissions issues, please feel free to use the solution linked to above or posted below.
Second, the script linked to above and the script below take different approaches on the problem. You may find a solution in one, or you may elect to use both.
Third, it was mentioned that this was a “one and done” solution. Due to the changing nature of filesystem content, I don’t believe that to be the case. You may want to save this as a sh script and run it as a scheduled task, or you may want it to run on every boot up. If you decide you want to run it on every boot, edit (or create) the file /etc/rc.local, and paste the below. I can’t say for certain whether this script is preserved on an upgrade, though this page strongly suggests that it would be preserved.
I don’t have a Synology unit right now to test this on, so I can’t offer any insight other than what I’ve shared above.
Here’s the script:
synouser --enum all > user.list
sed -i 's/\\/\\\\/g' user.list
cat user.list | while read line
echo -n "$line: "
USERDIR=`synouser --get "$line" | grep "User Dir"`
if [ $? != 0 ]; then
echo "user: [$line] not found"
HOMEPATH=`echo "$USERDIR" | cut -d'[' -f2 | cut -d']' -f1`
synoacltool -get-archive "$HOMEPATH" | grep is_support_ACL > /dev/null 2>&1
if [ $? != 0 ]; then
echo "[$HOMEPATH] not support ACL or not exist"
synoacltool -get "$HOMEPATH" | grep -F "user:$line:allow:rwxpdDaARWcCo:fd--" > /dev/null 2>&1
if [ $? = 0 ]; then
echo "[$HOMEPATH] exist user's Full Control ACL"
synoacltool -add "$HOMEPATH" "user:$line:allow:rwxpdDaARWcCo:fd--"
Any feedback is welcome and appreciated. Thank you!