Archived flashes:
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2566 · P5132

<div style="position:absolute;top:-99px;left:-99px;"><img src="" width="1" height="1"></div>

Required text body length: 2 characters. Maximum: 15000 characters.
A file is optional.

Age: 4492.99d   Health: 100%   Posters: 39   Posts: 149   Replies: 121   Files: 0

>>!///SWFAnts  #ADMIN#  25mar2012(su)10:00  No.3368  SWF  P1
Let's talk Services

All discussion related to the services found at are to be put in this thread.

Comments, questions, suggestions, ideas, wishes, problems?

>>Anonymous  26mar2012(mo)06:44  No.3382  A  P2R1
I'd love to see a video tutorial on how to properly make use of the all the cool services here on this board; do you think a quick "Swfchan 101" video would be appropriate?


>>!///SWFAnts  #ADMIN#  27mar2012(tu)07:49  No.3383  SWF  P3R2
I was thinking about it the other day, and now that I know people actually want it I'll think even more about it. Although a bit weird it might be a very good idea to have some sort of intro video to the site at this point. swfchan is losing new visitors to simpler main-stream sites more and more every day, maybe having a video would help to catch some new blood. If anybody would watch it that is, haha.
>>Anonymous  27mar2012(tu)09:06  No.3384  A  P4R3
I certainly would. I love this board's features so much but I wish I could take full advantage of them.


>>!///SWFAnts  #ADMIN#  27mar2012(tu)12:38  No.3386  SWF  P5R4
Is there any feature in particular I can help you understand better? If you have a question about anything at all feel free to ask. :)
>>Anonymous  28mar2012(we)00:36  No.3388  A  P6R5
Just a general overview would be nice, like I said, I don't really know how to use a lot of the features on this board... :P

Thanks, by the way.

>>Maharene  27apr2012(fr)18:19  No.3531  B  P7R6

Morning! I had shut down the mirror while I was at school, loading it back up today and I'm having the same issue others were having yesterday. It's been approximately 10 minutes since receiving:

27apr2012 12:02:18 Listening on 12345 (UDP) and 54321 (TCP).
Initialization complete.
27apr2012 12:02:20 Server: Your mirror is up and running. Thanks!

And I have not received the reflecting message. I've tried to reboot the .jar file a couple times and haven't been able to reflect the flashes. I've checked my router and the ports are still open so I'm not sure why today is different from yesterday. Any idea what this could be?

>>Maharene  28apr2012(sa)00:46  No.3532  B  P8
27apr2012 18:44:25 Server: Your mirror is up and running. Thanks!
27apr2012 18:44:40 Reflecting 47 flashes on swfchan.

Suddenly success? Have been restarting every hour or so, finally some response.

>>Anonny  28apr2012(sa)23:55  No.3533  C  P9R7
Yea, it doesn't do it right away for me. I usually just let it sit there while I do other stuff and, eventually, it goes up.
>>!///SWFAnts  #ADMIN#  29apr2012(su)04:14  No.3535  SWF  P10R8
The "thanks" message is displayed when the client and swfchan has been able to communicate both ways via UDP. The "reflecting" message is displayed after swfchan has downloaded a list of shared hashes via TCP from the client, and after the mirror database on the server has been successfully updated with the knowledge of what flashes you are sharing.

If the server can't download a client's list of shared hashes it should notify it via UDP (something like "check your TCP settings"). If you guys are getting the "thanks" message but NOT the "check your TCP settings" it means that something must be wrong between receiving a client's hashes and inserting them into the database. Either that or the server does not try to get the list of hashes, possibly due to a cached instance of you in its memory (it may think it already have your hashes).

Will look into it as soon as I have time to sit down and code on this again. Maybe I will implement an auto-update feature in the future sometime so you guys won't have to perform the update manually. Depends on if it's worth it, eventually I'll hit a point when the program won't need to be updated that much, if at all. I've already got a somewhat long TODO list on the mirror project.

I appreciate that you guys are running the clients! Do you get a lot of traffic? How many uploads did you do in the last 24 hours for example? Not counting time after when you didn't get a "reflecting" message.

>>Anonny  29apr2012(su)22:24  No.3537  C  P11R9
I've probably done over 100 uploads since the time I first got it, but that's just guessing, it may be more.
>>Brony  30apr2012(mo)05:47  No.3539  D  P12R10

Okay, I've downloaded the .rar file but I have no idea how to move files from swfchan to the .rar file to help with the mirroring. Once I can get it running I'm more than happy to host as many flashes as I possibly can. Two things, though.... Can the .rar file share my personal info? And also, what could somebody do with my IP address?

>>Anonny  30apr2012(mo)08:52  No.3540  C  P13R11
>Can the .rar file share my personal info?
I do believe Mackan can show you through the steps of doing this.

>And also, what could somebody do with my IP address?
Unless you have an unsecure server on your computer (which you probably do not as this is not an unsecure server), or you are hosting you're own internet and do not have an ISP (also highly, highly doubtful), you are completely in the clear. You can't do jack shit with IP addresses, contrary to what the CSI and news shows tell you.

>>Anonny  30apr2012(mo)08:53  No.3541  C  P14
>Can the .rar file share my personal info?
>I do believe Mackan can show you through the steps of doing this.
I am deeply sorry for the misreading, I was referencing your question on how to set the server up from a .rar file. As to your actual question, no. A rar file is just like a folder except it's compressed into an actual file.
>>!///SWFAnts  #ADMIN#  1may2012(tu)01:30  No.3545  SWF  P15R12
Not bad

Great that you want to put up a mirror! I added a how-to guide on, please have a look at it.

The RAR file is just a compressed file that contains the JAR file. The JAR file is the actual program. Perhaps I should just put up the JAR directly, compressing it is really just complicating things. The only reason to put it in a RAR file is to make sure the extracted file is put into its own folder, or else it may become mixed with a lot of other downloaded files (not a big deal but it can become ugly since the JAR file creates a couple of files/folders of its own, it's just better to have it in its own folder). Also there might be more files added to the client than just the JAR in the future (although I can't think of any right now). For now I'll stick with the archive.

Anyway, no personal info is shared about you. There's no code in the JAR that can gather such info about you in the first place. All the program knows about is your share and your settings.

As for what people can do with your IP, it's not much. As long as your OS has the latest security updates and your firewall is working you should be safe from wannabe hackers. And if someone "tracks" your IP all they will get is the location of your Internet Service Provider, which already is pretty public to anyone.

>>Maharene  1may2012(tu)04:25  No.3547  B  P16R13
I don't have an estimate daily for the mirror quite yet, simply because I don't have it up unless I'm home. I can get that data for you on/after Thursday when I am home all day to monitor it.
I really came on to say that the new version is much more secure! I haven't had an aborted download since applying it. Thank you!
>>!///SWFAnts  #ADMIN#  1may2012(tu)22:15  No.3548  SWF  P17R14
That's great! And no need to thank me, instead I'll thank you for having a mirror up. And everybody else too of course, at the moment there are three mirrors that comes and goes.
>>MadHax  2may2012(we)17:35  No.3550  E  P18R15
How about that command-line version? I have a US server that's up 24/7, but I can't do anything until the mirror stops trying to be a user app.
>>Maharene  2may2012(we)23:38  No.3551  B  P19R16
I ran the mirror for a 24 hour period and counted 147 instances of "sent" files, though that's keeping in mind that my library is only 72 flashes strong and slowly growing based on what's popular on /f/. Only once did it have to reconnect itself in the middle of the night when I wasn't awake:

2may2012 03:25:27 Looks like swfchan might be down... Will keep trying.
2may2012 03:26:42 Server: Your mirror is up and running. Thanks!
2may2012 03:27:12 Reflecting 72 flashes on swfchan.

>>Rovencrone  3may2012(th)01:24  No.3552  F  P20R17
So I started mirroring as well, and I'm looking forward to the auto downloading feature. When it does get implemented though, do you think it'd be possible to implement a sort of filter of what files to dl? ie by name/size or whatnot.
>>Rovencrone  3may2012(th)01:39  No.3553  F  P21
A bug I'm noticing is that current transfers always display 0.0% 0b/s, and simply disappear at completion. These values should update to display the download progress of the downloaders right?

One more suggestion, could you add a Sent/Aborted counter to the gui somewhere?

>>!///SWFAnts  #ADMIN#  3may2012(th)20:37  No.3554  SWF  P22R18
I was going to add the command-line feature in the previous version, but I forgot. Good news though since I've added it in today's 0.8.4 release. I hope it works well.

Sounds great. That mid-night reconnect was probably not a bug or anything, swfchan could have gotten overloaded for a brief moment.

I suppose a filter can be a good idea, but will it be that useful? What would you use as a file name filter for example?

That was indeed a bug, fixed it in today's update. Also included is such a counter that you were asking for.

>>Rovencrone  3may2012(th)23:57  No.3555  F  P23R19

Hmm, I suppose the name filter was something on the spur of the moment. however I suggest the file size limit mainly due to the fact that my upload bandwidth isn't the greatest, and due to that I feel like anything over 3-4 megs takes a bit too long for me to upload for the downloaders that they abort, thus it'd be kind of silly for me to host larger ones. Then again they're all rare and in between, but lots of music video flashes tend to fall in this category.

>>Rovencrone  4may2012(fr)00:33  No.3556  F  P24
Btw, what exactly does "files sent to outside users" imply?
>>!///SWFAnts  #ADMIN#  4may2012(fr)06:19  No.3557  SWF  P25R20
Ah I see, well a filter wouldn't be hard to implement so sure I can include one when the day comes for the auto-download feature.

When someone requests a file their browser usually includes a referrer notice of which page they arrived from, if that referrer is not swfchan the request counts as an "outside user". It's there so that you'll be able to download files from yourself if you wish to without it changing your stats. Some very few people has however set their browsers to not include a referrer, then they will appear as "outside users" even though they did in fact come from swfchan.

>>Rovencrone  4may2012(fr)06:45  No.3558  F  P26R21
Ah that clears things up. Also oh god I wasn't paying attention and had about 20 flashes saved there that were 404.swf. Cleaned them out but now I feel bad XD I suppose the size filter could be used to prevent the download of the 369kb flash, or just filter out 404.swf itself if the autodownloader runs into problems with the server.
>>Anonymous  4may2012(fr)08:23  No.3559  A  P27R22
MD5 checksums could be used for this.

Also, as soon as the auto-download feature is enabled, I'll set up a mirror.

>>!///SWFAnts  #ADMIN#  4may2012(fr)10:04  No.3560  SWF  P28R23
Which reminds me that I was going to include a setting that prints out a warning about duplicate files. I'll add it to the TODO list. Also there won't be a need to filter out the 404.swf flash, it will be impossible for the auto-downloader to get that. Actually I should do a overhaul sometime on the general download handler so that people would finally stop getting the 404 from time to time...

Sounds good.

>>Anonymous  16may2012(we)09:28  No.3582  A  P29R24
Oooh, very nice added features in the swfchan client! Now if only it had that auto-download feature... then I'd really want to set up a mirror.
>>!///SWFAnts  #ADMIN#  5jun2012(tu)01:58  No.3635  SWF  P30R25
Version 1.0.0 of the swfchanMirror client was released today (well yesterday, a few hours ago). The auto-download feature is now available.
>>Anonymous  5jun2012(tu)07:27  No.3643  A  P31R26

If you'd like, I could set up a mirror of the swfchanMirror program. Send me a email for further info. :)

>>!///SWFAnts  #ADMIN#  5jun2012(tu)20:30  No.3644  SWF  P32R27
I'd like that, but I don't get why I should email for further info? What info? The mirror program is available for everyone and is completely voluntary, just head over to and grab the client if you wanna help out. There are detailed how-to instructions on how to set stuff up over there.
>>Anonymous  6jun2012(we)08:44  No.3647  A  P33R28
I meant mirror the program's archive file, not set up a instance of the program itself. Sorry I wasn't exactly clear on that. Hence why I said you should email me so I could set up a FTP account for you on my server.

Apologies for the miscommunication. :)

>>!///SWFAnts  #ADMIN#  6jun2012(we)18:51  No.3648  SWF  P34R29
I see. A mirror for the program itself is not really needed since it's only about 100 KiB, but thanks anyway.
>>dollspit  7jun2012(th)03:57  No.3653  G  P35R30
Port Forwarding issues

Hey all!
So, I'm using a Netgear WNR2000v3 with firmware version V1.1.1.72.
I'm a little confused with the details of adding these open ports.

I go to the Port Forwarding/Port Triggering page and then click Add Custom Service. It has open dialogues for Service Name, External Starting Port, External Ending Port, Internal Starting Port, Internal Ending Port and Internal IP address. It also has a drop down menu for the protocol. I'm not sure where to put what information.

I'd love to be a part of this. Sorry I'm such a tech noob. Any help would be great!

>>Anonymous  7jun2012(th)07:15  No.3654  A  P36R31
>>3653 is fantastic for this. I'm more well versed in the Cisco/Linksys side of things but I do wish you luck.
>>!///SWFAnts  #ADMIN#  7jun2012(th)19:33  No.3655  SWF  P37R32
Thanks for setting up a mirror! Here's what you need to do:

1. WinKey+R, type "cmd". When the console opens, type "ipconfig".
2. Look what your IP Address is. "" or something similar.
3. Go to the page where you config your router, where you said you had been.
4. Add Custom Service (1 of 2):
> Service Name = swfchanMirrorUDP
> External Starting Port = 12345
> External Ending Port = 12345
> Internal Starting Port = 12345
> Internal Ending Port = 12345
> Internal IP address = "" (just an example, put your PC's IP here)
> Protocol = UDP
5. Add Custom Service (2 of 2):
> Service Name = swfchanMirrorTCP
> External Starting Port = 54321
> External Ending Port = 54321
> Internal Starting Port = 54321
> Internal Ending Port = 54321
> Internal IP address = "" (just an example, put your PC's IP here)
> Protocol = TCP
6. Go to Windows Firewall on the control panel (or your custom firewall if you use one).
7. Open port 12345 for UDP.
8. Open port 54321 for TCP.
9. If there's no clear option to open ports (depends on Windows version) you can add exceptions for "java.exe" and "javaw.exe" to access the Internet (these are located somewhere in "C:\Program Files\Java\<...>\bin\").
10. Start swfchanMirror.

>>dollspit  10jun2012(su)02:49  No.3694  G  P38R33
Finally got it goin!
>>!///SWFAnts  #ADMIN#  11jun2012(mo)03:00  No.3702  SWF  P39R34
Fantastic! I think I noticed your mirror being up yesterday.
>>Anonymous 8  11jun2012(mo)04:00  No.3707  H  P40R35
So the server reckognises a flash by it's hash or md5 or whatever checksum, not by name, right ? So it doesn't matter what names I put them for sharing ? Because I often rename them (slightly).

another question: Is there an option in INI file to minimize RAM usage ? (I know, this will make it harder for the HDDs).

>>!///SWFAnts  #ADMIN#  11jun2012(mo)05:36  No.3712  SWF  P41R36
Yep, a flash is recognized by it's hash so it doesn't matter what name you have for it. The hash calculation doesn't follow any known algorithm.

There is no RAM control at the moment, other what Java's Virtual Machine provides (unlike machine code programs written in for example C, Java programs can not make use of all memory on the system unless the VM says so). A minimum of 250 MB must be accessible for swfchanMirror to run as a mirror however.

Right now I'm aware that the client has a memory "problem". There is no memory leak or anything like that, I just know that the program does take up quite a bit of memory. I'll try to reduce how much RAM it needs in future versions of swfchanMirror. It's possible that at the moment it keeps a bit more than it needs in memory.

I recommend giving the mirror at least 500 MB memory at the moment on v1.0.2 (note that this means that it will use up to maximum 500 MB only if it needs to, it will take less memory if it can), however you can run a mirror with the minimum 250 MB if you like to. The mirror doesn't actually require the extra memory unless your mirror becomes busy with lots of requests at the same time for example, then it's a good thing if the program is allowed to allocate those extra bytes in memory (if you see any OutOfMemoryErrors the VM needs to be allowed more memory). If the mirror load goes down the program will take less RAM again, the Java VM monitors your system and performs garbage collections as it is needed.

Use the Xmx VM flag to set the allowed memory for the program. Usually (when not defined) the VM sets the max memory to a percentage of the system's total RAM. The first time you run swfchanMirror.jar a bat-file will be created next to the ini file, if you run it it will launch swfchanMirror.jar with an allowed max memory of 500 MB. You can edit that bat file to set the max memory to 250 if you'd like.

I don't think I will lower the required max below 250 MB, however I will later try to make the program want to be as small as possible. Though memory handling is difficult in Java since it's done by the VM, it handles clearing of memory automatically whenever it want to. I can suggest it to run the garbage collector in my code but it might not do it until much later. Maybe it won't do it until when it notices that other applications may actually need the memory. After all, a full RAM is no problem as long as no other program needs to use any of it. And as long as there is some RAM to clear for other programs to use as soon as they do need it there's no issue then either.

Try out running a mirror, if it doesn't affect your other programs and if you don't get any OutOfMemoryErrors in the log then there's nothing to worry about. And if you do run into difficulties you can always stop mirroring at any time, no sweat. :)

>>Anonymous 8  11jun2012(mo)07:47  No.3714  H  P42R37
Unfortunately I won't be able to share, as I can't get incoming packets, neither UDP, nor TCP. My ISP uses NAT. Torrent clients would use "UDP hole punching", or whatever it is called, making UDP traffic possible, but apparently the mirror server does not. Still the problem with incoming TCP would remain though.

ps: I don't use router.

>>!///SWFAnts  #ADMIN#  11jun2012(mo)15:04  No.3715  SWF  P43R38
I'm sorry to hear that you have such a bad ISP. Would you mind telling me your location, are you in China?
>>Anonymous 8  11jun2012(mo)17:30  No.3719  H  P44R39
I wouldn't call my ISP bad, especially with the speeds I have. Regular users don't have to set up a server every day, after all.
The NAT type they use is "one-to-many" (looked it in wiki, so there is no misunderstanding). It makes incoming TCP connections impossible, probably because they didn't bother configuring correctly the port forwarding on their side. Several years ago I asked them to do it, but got only some vague reply, which could be translated as NO :) Then uTorrent presented UTP protocol (a software implementation of TCP, using UDP), which came with the UDP hole punching, this making it possible to receive incoming "connections", and my problem was solved (torrents are pretty much the only thing I need a two-way connectivity for). Since then - around 3 years ago - I completely had forgotten about this, and now it all came back to me.
And just to make it clear again: I can receive TCP packets of course, but only if my PC initiated the TCP connection.
In theory swfchan mirror server can be made so it works with this type of NAT- it can use both TCP and UDP to communcate to swfchan, and swfchan can use one of the NAT traversal techniques using UDP to communcate with the mirror server. When users wants to d/l from me and clicks on a link, swfchan can send me udp message "hey, this IP wants to get this flash (hash here) from you", and upon receiveing it the mirror server initiates the TCP connection needed.
This is just an example. Of course you don't have to code this, as I'm an isolated case, and implementing NAT traversal techniques may prove to be difficult. Just keep it in mind, if more people like me (behind NAT) appear.
Oh, and Bulgaria here, not China :)
>>!///SWFAnts  #ADMIN#  11jun2012(mo)17:46  No.3720  SWF  P45R40
I understand what you are suggesting but it can't be done, you can't initiate communication with a strangers browser. Browsers don't accept incoming connections, they must always send a request to the server first. So setting up a mirror is impossible if connections can't be received.

Out of curiosity, what download and upload speeds do you manage to get over there downloading for example a popular movie or something from a public torrent?

>>Anonymous 8  11jun2012(mo)18:41  No.3721  H  P46R41
I see, then nothing can be done. Let's hope soon IPv6 will reach the end user, and problems like this will be thing of the past.

here's a speedtest I've just done:

The bandwidth I pay for is 20 MBit/s, actual speed for bulgarian servers / sites is capped at 4 MiB/s, for foreign ones at 2MiB/s, and I hit these speeds when torrenting popular content. Upload speed is rather inconsistent, I've seen 2 MiB/s upload, and sometimes it doesn't reach even 50 KB/s, seems to depend on different countries, and as I observed, on weather.
All in all, I'm happy, as you see they give me more than advertised :)

>>!///SWFAnts  #ADMIN#  11jun2012(mo)20:13  No.3722  SWF  P47R42
Alright, that's not bad.
>>Anonymous  16jun2012(sa)01:40  No.3744  I  P48R43

I just downloaded & tested the mirroring software, copied a couple of random flashes to a box running it, everything seems to work nicely - for those few test flashes.

How do I get it to automatically download popular flashes from swfchan servers for mirroring?

The following (default) settings didn't seem to do anything:
>0801) Auto-mirror new swf-files with at least this many views/day (from newcommer list): 5
>0802) Auto-mirror popular swf-files with at least this many views/day (from main list): 5
>0803) Auto-mirror popular old swf-files with at least this many views/day (from main list): 30

I was thinking I could dedicate roughly 8-10 Mbit/s of my upload for swfchan mirroring around the clock, with above average routing/ping for european users. I can't spare much cpu cycles though, but this shouldn't be a problem if the mirror software works properly. ;)

>>Anonymous  16jun2012(sa)02:24  No.3746  I  P49
Nevermind that, I didn't bother reading the mirroring guide, just grabbed the rar and tested how it runs.

You might want to include this part somewhere near the auto-mirroring settings:
>There are three requirements that needs to be met before the server starts to send your mirror new/popular files:
>1. You need to share at least 10 flashes that exists on swfchan.
>2. You need to have served at least 20 flashes to swfchan users in the last two days.
>3. Your mirror must have been online for 4 hours straight.

>>Anonymous  16jun2012(sa)05:44  No.3747  I  P50
Aaand some initial observations about the mirroring service:

* When requesting a flash from swfchan, the Available mirrors -table shows average speed of the mirrors. IMHO, this is misleading for users. Users with slow connections cause slow average speeds, despite the mirror having much more bandwidth available. This leads to users with more bandwidth always preferring swfchan instead of a mirror. Which in turn lowers the mirrors' reported average speeds even more. A positive feedback cycle. Average speeds are more limited by users than hosts. Not a very useful metric when your aim is to divert traffic to the mirrors.

For example - a user with an average DSL/cable connection (maybe around (4 Mb/s download bandwidth?) sees mirror Anonymous: 200 kB/s average? "That's slow, better use swfchan instead", although the mirror has 2.19 MB/s top speed and the capability to serve files much faster than the average suggests. Hell, I never used any mirrors myself because of the slow reported speeds. Also, many less tech-savvy users tend to confuse bits and bytes, so it might be better to use bits instead of bytes. Would an average joe rather use 2.19 MB/s or 17.52 Mb/s mirror? Which would be more informative?

* No proper logging. Should someone need or want to monitor swfchanmirror's traffic activity in-depth, they'll need 3rd party software. An option for advanced logging (those 2-char ip identifiers aren't helpful!) would be nice to bring swfchanmirror more in line with other http servers.

* Far future suggestion: To attract more mirror hosts, make a simple windows installer that configures the server and starts it up as a service. Next-next-next. Maybe advertise it on the front page. Can't think of a better way to get many people to help.

Also, do you have any statistics about how much load your mirrors take away from

>>Anonymous  16jun2012(sa)08:24  No.3748  I  P51
Java sucks

And the story continues. After only a few hours of test hosting, java started shitting:
The server was started with default parameters, ie. directly from the .jar.

So I thought, maybe it's the GUI. Restarted in console mode, didn't help much. Disk IO is fine, RAM usage is fine. Taking up an entire CPU core intermittently isn't fine. This was with 32-bit Java SE 6 U 24, by the way.

Next logical step: upgraded VM to latest version, Java SE 7 U5. Still getting ridiculous CPU usage spikes, but their pattern did change. Java GC related problem?

I'll keep the mirror running for now, unless it melts my server box. Any ideas would be appreciated.

>>Anonymous  16jun2012(sa)10:01  No.3749  A  P52R44

MackanZoor says he still needs to work on resource allocation with the program; he's currently focusing on adding more features.

Also, I second the installer idea; I could compile a installer version for Windows, but I'm not exactly sure how I'd come up with a way to make it run as a service. Would take some research.

If anybody shows more interest, I'd be willing to package every new version of swfchanMirror into a installer for Windows users.

>>Anonymous  16jun2012(sa)10:24  No.3750  I  P53R45
I managed to get it running in a bit more calm manner with JDK and -server -Xmx1024M -Xms1024M.
CPU usage is not tied to the server's activity, so I'm assuming it's the java VM's activity, running garbage collection probably. Giving it 1 GB min/max memory seems to keep it calm for a while.

About running it as a service, that's entirely optional, but here's a good resource on that if you're interested: a-program-as-a-service/

Simply adding a shortcut to all users' startup folder would be enough. Only real drawback would be that the server won't run when no one's logged in.

>>Anonymous  16jun2012(sa)11:58  No.3751  I  P54
Java sucks

Jesus christ how horrifying

One of the threads in javaw.exe is occasionally (almost constantly with default settings) eating over 3G cpu cycles per second. This is no server, this is a stress test. D:

Also, the intermittent cpu spikes are becoming more frequent as the actual memory usage is approaching 1GB. This shit doesn't work unless the mirror software is rebooted every 2-3 hours.

Any ideas how to tune java's GC so it isn't absolutely horrible?

>>!///SWFAnts  #ADMIN#  16jun2012(sa)18:03  No.3753  SWF  P55R46
Thanks a lot for setting up a mirror, I appreciate it!

>I was thinking I could dedicate roughly 8-10 Mbit/s of my upload for swfchan mirroring around the clock

>I can't spare much cpu cycles though

>You might want to include this part somewhere near the auto-mirroring settings
I figured people that were interested in that would read the "auto download"-section of the mirror page on the site. Especially since it contains a numbered list, those usually draw attention on webpages. But you are right; I should mention that there are a few requirements in the settings file. I'll add it to my TODO list.

>the Available mirrors -table shows average speed of the mirrors. IMHO, this is misleading for users
Although you are right it doesn't have that much of a difference about the traffic diverted from the site. Most flash files are viewed using the "embed" option, then the server automatically assigns a mirror to download the flash from (if available). The mirror with the least current connections are picked, with a chance to use the swfchan server too so that the mirror(s) don't carry the whole burden. I've added a note to the non-embed download page that informs the user that downloads from mirrors will probably go faster than if they download from the swfchan-server.

I have plans to change a bit how the average and top speed is calculated. I'm thinking that the average speed will be the average of the middle 60% of all connections (when sorted by speed). This way the few lowest and few highest speeds will not drag down/up the average too much. It becomes a near-average that should give a more realistic image of the typical speed. The top speed will become the average of the top 10% of all connections, so that not a single super-high speed will be reported (can be misleading).

>many less tech-savvy users tend to confuse bits and bytes, so it might be better to use bits instead of bytes
I've never liked the Mb/s measurement (or how its more commonly written: Mbps). Talk about confusing. 10 Mb/s = A top speed of 1.22 MiB/s (10000 bits / 8 / 1024 = 1.220703125 MiB). It's better to show the speed in MiB per second because that's how people really measure speed of downloads. It's the speed that browsers report that they are downloading in.

I also always use the correct MiB term instead of the incorrect MB term (even if Windows show file sizes as "MB" they are actually calculated by dividing by 1024, which is MiB (if MB it should be divided by 1000)). This often causes major confusion when people buy a new HDD labelled for example 200 GB. When they come home and format it it turns out as 190.7 GB and they feel ripped off. But the size is actually 190.7 GiB (200000000/1024/1024) which equals 200 GB (200000000/1000/1000). I hope in Windows 8 file sizes show up as KiB/MiB/GiB/TiB so this confusion can finally start to die out.

>No proper logging.
I've intentionally left out stuff like user's IP addresses from the log, so that those that run mirrors shouldn't be able to easily keep track of other people's business on swfchan. The two-character IP identifier was added so that you should be able to see when a single transfer starts/finishes on a short-term, and also if a person is using your mirror to download a lot of files. I won't add much more than that so that mirrors can start to track user behaviours on the long-term.

>make a simple windows installer
A big point of Java is to not make platform-specific tools such as installer executables. Besides, is it really needed? It's one file that needs to get "installed", personally I always prefer archives that you extract rather than installers that you don't really know what they are doing. I know that making things as simple as possible is good (next next next) but those that are interested in setting up a mirror should be able to start a jar file and edit a ini file. Maybe add the thing to the startup folder so it starts every time the computer start. If the program was meant for the everyday joe I can understand why a installer would be needed but most common folks won't download a server program. If anything I might add buttons inside the GUI later that allows you to edit the settings or make the program auto-start upon boot.

>Maybe advertise it on the front page.
Making a site-wide broadcast upon every new version of the mirror program. I've realized that some otherwise interested will miss it though, especially when the mirror updates get less frequent. Sometime later I will add a "site tip" thing at the bottom of every page with random "did you know" stuff about swfchan (for example "Did you know you can make your own flash loops here on swfchan?"). I'll mention the swfchanMirror there so that there's a higher chance people will discover it and might wanna help out.

>do you have any statistics about how much load your mirrors take away
Not really any numbers, but the network load average has gone down from 90% to 70%. It still hits 100% sometimes but that just means that more bandwidth can be given to fewer connections. Several hundred GiB of bandwidth has been saved.

>Java sucks
No, Java is great! Not only is it convenient not having to compile the program into machine code so it works on all platforms, it's very easy and comfortable to program in. I actually consider programming in Java fun, everything makes so much sense. And Java has a thing called just-in-time-compilation which compiles its byte code into machine code as the program is running, which means that the programs executes just as fast as any program written on a lower level (C for example). There are ways of executing C-code from inside Java very easily using Java Native Access (JNA) so you can do all the things you normally can't do in Java (make program hooks that listen to key presses in other programs for example - it's against Java's security model but can be done with C). The memory handling in Java is fantastic with the garbage collection, it makes memory-leaks almost impossible (there's a big difference between leaking memory and a program that requires much memory).

As for the CPU problem you are having, it's very strange. What operating system do you have? I've tried having mirrors up for several days on both Windows Server 2003 (2.5 year old CPU, used -Xmx350m) and Windows XP (5 year old CPU, used -Xmx700m). Both using Java Runtime Environment v6 and both with CPUs that weren't very powerful even when they were new. The process CPU usage is almost always 0%, jumps up to 2% when a connection is accepted and then goes back to 0% after a second. Once a minute there may be a spike of 10-15% CPU usage lasting about a second. Both test mirrors were on heavy load serving more than 6000 files in 24 hours. I got a few out-of-memory errors now and then (I'll try to reduce the memory requirement in a later version) but the garbage collection didn't really make the CPU sweat anytime and the servers kept going. The GC must have run a lot during the day or else the log would be flooded with out-of-memory errors but there were only a couple a few times.

Are you sure it's not another program that causes the CPU load? Have a look at the processes individually. Do you run another Java program at the same time? I think several Java programs might share the same Virual Machine process. Hmm... maybe you have a program up that tries to monitor or interfere with the Java program? Bandwidth limiter or some sort of controller perhaps? Do you launch swfchanMirror from within another process?

Thanks for the feedback! Always welcome. I hope you won't take down the mirror since it seems to be doing much good with great speed. :)

>>Anonymous  17jun2012(su)00:16  No.3754  J  P56R47
First of all, the problem really seems to be related to Java's garbage collection, more precisely calls to System.gc(). See this: - guess what happened in the last case when the server actually filled that gigabyte? All the CPU usage graphs are from the java process running _only_ swfchanMirror. I don't have any other Java stuff running on that box. I am using various versions of Sun/Oracle's Hotspot JVM. If you know any better JVMs, let me know!

I am aware of the KiB / kB distinction. But I have to admit, I use them interchangeably when precise numbers aren't important - bad habit. I prefer using the base-10 bits and bytes since they still are the leading standard. And bits vs bytes, I guess that's a cultural preference - around here ISPs and us IT guys always use megabits per second when talking about bandwidths, ie. connection speeds.

The whole windows installer & frontpage idea was to make mirroring as easily approachable as possible for as many users as possible. I'm sure you understand the potential benefit of that, even though it goes against the glorious portability of Java. :)

Now, I am not a programmer and I don't want to turn this into argument whether java is good or bad, but I can't host a permanent mirror because java gc uses ridiculous amounts of processing power, ie. java sucks.
I wonder if I can rig application recycling to restart the java process before its working set memory reaches its Xmx value...

>>!///SWFAnts  #ADMIN#  17jun2012(su)02:38  No.3755  SWF  P57R48
Okay, what I've learned is that I should never use System.gc() calls. Seems like they are a good idea on paper but works badly in practise. I don't know why they causes your CPU to go up so much but didn't in my tests. Guess there are many factors. Hotspot is the official Java VM I think so you shouldn't have used a different VM than me either. I will remove the GC calls. If possible I'll release a new version of swfchanMirror tomorrow, probably just a minor edit with the GC calls removed and not much difference otherwise. If nothing else we will eliminate one possible cause of the problem.

>guess what happened in the last case when the server actually filled
Either the mirror crashed or (more likely) the CPU went up a lot since a "natural" garbage collection must have been called by the VM? Perhaps the CPU went up and the program then crashed since it maybe couldn't free enough memory in time?

Btw I assume that you are using Windows since you are using Process Explorer but which version of Windows exactly? It's good to know.

>around here ISPs and us IT guys always use megabits per second when talking about bandwidths
Yeah same here and probably around the world, when it comes to describing bandwidth. And I do that too, when describing the connection capacity. But people usually don't talk in Mbps when they are talking download speeds, I can't think of one single program that says something like "you are downloading bla.rar in 33 Mbps" instead of saying "3.9 MiB/s" (or rather the incorrect "3.9 MB/s", which really still is MiB).

If possible, check back in 24 hours and see if there's a new GC-free version of the mirror. I'd soothe my mind if I knew the issue ceases.

>>Anonymous  17jun2012(su)03:47  No.3756  I  P58R49
>Either the mirror crashed or (more likely) the CPU went up a lot since a "natural" garbage collection must have been called by the VM
Yeah, GC kicked in (does the "natural" GC use same system.gc() calls?) and the mirror software starting eating up all the CPU it could get. Some out of memory errors in the log, but it didn't crash! I was honestly surprised that it kept working.

>which version of Windows exactly?
32-bit Windows 7, OEM license. I'd rather use 2003 server, but don't have any extra licenses around. :(

>I have plans to change a bit how the average and top speed is calculated.
Forgot to mention earlier, these sound great!

>talking download speeds
Ah, this is where we see things differently - I was trying to think what would be most informative for users when they see a mirror in the list - The mirror's bandwidth or average download speed from that mirror?
In any case, it doesn't matter as much as I thought since embed downloads choose a mirror automatically.
Perhaps you could make direct swf downloads choose a mirror automatically in the future?

>If possible, check back in 24 hours
I will. I have extra bandwidth, I want to help swfchan, and frankly, this project is very interesting! I don't think I've ever seen a website do something like this. I would be greatly interested in any mirror statistics and performance numbers you are willing to release.

>>!///SWFAnts  #ADMIN#  18jun2012(mo)00:00  No.3758  SWF  P59R50
The new version is out! I think I over did it a bit though. Turned out as a major release instead of a minor one.

It's too early to tell for sure but so far it looks like I managed to get the program to take up much less RAM, however it increased the CPU usage a little bit for me which I have to investigate for the next release (suspect it's the more exact upload speed that is the cause). But the CPU usage only increased by a single percentage point or two so it's not that big a deal, but less resource requirement is always better so I'll see later if it can be reduced.

>does the "natural" GC use same system.gc() calls?
There's only one kind of GC. The System.gc() call is just something that tells the VM that "now is a good time to pick up trash". The VM can ignore it completely or go ahead and do it if it thinks it's a good idea. Problem was that your VM for whatever reason thought it was always a good idea.

>but it didn't crash
That's the power of Java! ;D Nah, only the thread that requested the memory crashes, the rest of the program (in different threads) that already have memory assigned goes on as usual without even knowing that a thread died from memory problem.

>32-bit Windows 7, OEM license
I'll try to make a test mirror on Windows 7 sometime in the future. I installed Win7 on a old laptop a few days ago, maybe I could test it on that if I get my hands on it again. It has hardware dating at least 10 years so it would be interesting!

>The mirror's bandwidth
But it wouldn't really represent the mirror's bandwitdh since it all depends on where the users are in the world, better to call it download speeds because that's what they are. :) Potato potato, tomato tomato.

>make direct swf downloads choose a mirror automatically
Maybe, but as it is now the user gets presented with a bunch of links and the top one is the one that the server "recommends" (the mirror with the least number of connections at the moment). At the moment that's probably the most logical way of giving the download options, since the server has no way of really knowing which mirror is best for a user.

If I ever implement some kind of system that can compare a user's and a mirror's geographical location and pick out the one that is closest to the user I will definitely have the server specifically tell the user that it should download his file from there.

>I don't think I've ever seen a website do something like this
Hehe, me neither. That's a big reason why I'm putting time into the project actually, it's a kind of experiment. Something new for me to try. And when you try something new you always learn something new!

>>Anonymous  18jun2012(mo)05:00  No.3761  J  P60R51
Here we go again. Running the new version with JDK -server -Xmx1024M -Xms1024M (I really really prefer the hotspot server VM) and so far, after 1 hour, its behavior is mostly as you described.

After the initial swf request rush, CPU usage settled to be a little bit higher than in r6. Still, it's a very low load on any half-modern x86 CPU.
Working set size seems to be growing slowly, its at 900 M and hasn't reached the limit yet.
IO read bytes seem to be climbing up slower and random disk IO spikes are clearly less frequent.

> (suspect it's the more exact upload speed that is the cause)
Does this happen with the console option? I don't need real-time statistics like that nor on-screen log-file buffer, so I might as well run the mirror completely hidden with javaw and the console option - once I'm confident about its resource usage and stability.

Hey, I just found out about jconsole. What a wonderful tool!

>>!///SWFAnts  #ADMIN#  18jun2012(mo)18:22  No.3765  SWF  P61R52
I had to put together version 1.1.1 today real quick since I noticed that the average speeds of the mirrors were decreasing steadily since the last release. That should be fixed now. Also took the opportunity to increase the URL timeout since if option 0508 is enabled to make URLs private there is little need for a short timeout since links can't be shared anyway.

>I really really prefer the hotspot server VM
As does Oracle (or Sun) since it's the official VM in Java. I have "Java HotSpot(TM) Client VM version 19.1-b02" on my development machine according to JConsole.

Thanks about the tip about JConsole btw, I've actually never used it before. It's bound to be very useful in the future. It even has a "Perform GC" button!

>Does this happen with the console option?
Yep, the only difference with the console option that no GUI operations are made. The upload speed calculations are the same in the background.

The changes I made today should have lowered the CPU usage that was introduced in the previous version BUT since I fixed the low transfers speeds the CPU usage may actually increase since the mirror could become more busy at serving files. This might cause it to fill the RAM quicker too, kicking in the first GC a bit sooner.

Could you remove the -Xms1024M option from your VM a little while and try to describe how long it takes for the memory usage to hit around 900-1000 MB? I know that making the VM start out with a lot of reserved RAM makes it a bit less CPU needy when it is time to use more memory, you can restore using -Xms1024M later. I was just curious how long it takes for the mirror to reach the set max memory on your system.

>>Anonymous  19jun2012(tu)06:25  No.3781  J  P62R53
>since it's the official VM in Java.
Thing is, Hotspot is actually 2 different VMs. Running anything with default settings uses the Client VM (optimized for memory usage, quick startup) while -server uses Server VM (optimized for long-term performance)

>Could you remove the -Xms1024M option
Do not want. We both know this only leads to increased CPU load in an endless cycle... I prefer to keep Xms and Xmx the same.

>how long it takes for the memory usage to hit around 900-1000 MB
I can still help you with that. JConsole shows that swfchanmirror r7 performed its first major GC around the first hour mark, dropping heap size from ~900 M to ~600 M. The collection wasn't a major CPU spike and the mirror kept running smoothly afterwards as well.
I also learned that Process Explorer's working set size != actual java heap size. :(

I'll check how the new version performs.

>>Anonymous  19jun2012(tu)08:10  No.3782  J  P63
Well, I just started version 1.1.1.
It seems to be eat memory faster and also perform GC more aggressivily (one every 3 minutes).
GCs became larger but less frequent as heap size was getting closer to its limit.

After about 1h 40min, heap size had reached 900 M with a GC happening every 10-15 minutes.

CPU load averages at about 4-5%, no much difference from the last version.

PS. I don't know anything about all these java memory pools, so I just checked the heap memory usage chart.

>>!///SWFAnts  #ADMIN#  19jun2012(tu)14:41  No.3783  SWF  P64R54
Alright thanks. I had forgotten about the server option. I don't think the server is included in a standard java runtime environment, one would have to get a java development kit for that. Too bad, otherwise I'd be able to put -server in the bat file that's created when the mirror is run for the first time.

My test mirror ran into a issue after about 14 hours of uptime, causing the CPU load to increase a lot and no new connections to be accepted. It's pretty possible it was because of too many transfer requests. I'll have to look into that. It also appears like the mirror has started to reflect 0 files every now and then, I know the cause of that though so it won't be a problem to fix. Hm, actually that might just be the reason as to why the CPU and memory usage has become more aggressive.

>>!///SWFAnts  #ADMIN#  20jun2012(we)05:32  No.3786  SWF  P65
Put some effort into increasing performance today and now version 1.2.0 is out. There's a huge difference, memory is used more efficient and the CPU load is lower. It's been pretty fun to track down and fix the previous flaws in the code but I'm sure something will pop up that I have to give further attention. It'll probably be something that has to do with what happens if the program actually does run out of memory (due to a sudden big increase in concurrent connections). If I would have to guess I'd guess that the next version's main implementation will be some sort of defence mechanism against OutOfMemoryExceptions.

It's hard to overstate my satisfaction at the moment. I think I'll treat myself to some pancakes and ignore that it's pretty much morning over here now.

I hope some of you guys will try out the new mirror. I want to hear if it runs any better on your system now.

>>Anonymous  26jun2012(tu)21:31  No.3821  I  P66R55
After some 3 days of uptime, swfchanmirror is averaging less than 4% CPU load, which would be fine (although quite high for the simple function the software performs), but still - all the CPU usage comes as massive spikes from large GCs. Without them, performance would be excellent.

A shame, really. If not for Java, it could perform the same function while using only a small fraction of resources. It's not your fault; Your software performs very well, JVM does not.

I guess I'll try Garbage First before giving up on Java. It should have exactly the kind of performance upgrade I'm looking for.
>main objectives for the new collector:
>The first objective is consistent low pauses over time.
>The second objective is to avoid, as much as possible, having a full GC.

>>!///SWFAnts  #ADMIN#  27jun2012(we)05:06  No.3822  SWF  P67R56
Yes the high CPU usage of the garbage collection procedure is a pity... But it only lasts for one to three seconds at most. Even if it means that Java has a small drawback the fact that memory management is taken care of automatically more than makes up for it. That's something that otherwise can take years to fully master in complex projects. Besides, the drawback is only more noticable in this project since the mirror rotates a lot of files in memory. In most situations I think the GC issue wouldn't even be there.

One can always hope that future VM implements better GC procedures. Although even if that doesn't happen CPUs will beome faster so the drawback will become more insignificant with time.

Let me know how it goes with using the G1 garbage collector, sounds interesting. Maybe it'll make all the differance in the world.

>>!///SWFAnts  #ADMIN#  29jun2012(fr)04:00  No.3827  SWF  P68
Discovered that something just caused a deadlock in my test mirror. This means that two or more threads are waiting for each other to finish and will thus wait forever. Not sure how it happened but it seems to be Swing related (when updating the text area in the window). I will investigate this as soon as time lets me, just wanted to note down that I'm aware of the issue.

Those of you that are running a mirror at the moment please check it, if it is consuming unusually much CPU it means that a deadlock has happened and it is not killing off threads like it should. You should manually kill the mirror process (the one that is taking up much CPU) and restart the mirror. This thing should be rare to happen so don't be afraid to restart the mirror. From the log it doesn't look like this is related to a out-of-memory issue but rather some kind of deadlock inside Swing itself (code I have not written). Not very likely though, there's probably something I can do to prevent this. Perhaps a uncaught exception that causes a thread lock to not release (though that shouldn't happen, hm). I'll look into it tomorrow or during the weekend.

>>!///SWFAnts  #ADMIN#  29jun2012(fr)04:01  No.3828  SWF  P69
Wonder why I always discover these problems so damn late each time.
>>!///SWFAnts  #ADMIN#  8jul2012(su)17:45  No.3874  SWF  P70
All issues I had found in swfchanMirror has now been fixed in the 1.4.0 release.
>>!///SWFAnts  #ADMIN#  27sep2012(th)22:18  No.4635  SWF  P71
swfchanMirror suspended

It's been pretty dead for several months now and no interest has been shown so I'll just make a sidenote here that the project is hereby officially declared terminated. If someone comes along and shows great enthusiasm towards setting up a dedicated mirror I might get working on it again but I don't see that happening.

For now I'll just rely on the increased bandwidth I've bought for the site and on CloudFlare. Luckily swf files are considered static files by them and do get mirrored, I'm only using CloudFlare for the most popular files on swfchan though so that they won't take that much of a hit. That being said it would still be nice with a couple of user-run mirrors out there in the world so don't hesitate if you want to volunteer.

swfchanMirror still works 24/7 if you want to try it out, it's just that I won't be working on it anymore (not that I have been since July anyway). Also your mirror will only be available to people getting the file using the non-embed option. A longer note on this can be read here:

>>NagaPls  4oct2012(th)06:32  No.4675  K  P72R57
The mirror I put up is on a dedicated OVH vps (so European mirror). Memory is a little constrained, so it being a java app isn't perfect.

If you'd reveal some sort of api so that I could host the mirror with software I write myself, that would be pretty cool. The arbitrary "only can download new files after X usage" seems a little silly considering my mirror is seeing almost zilch usage (possibly partly due to the lack of embed-usability).

Thanks for the neat idea in the first place, sorry to hear it might be dying.

>>!///SWFAnts  #ADMIN#  7oct2012(su)23:22  No.4687  SWF  P73R58
Thanks for hosting a mirror, it's still up I see. Where were you a couple of months ago, huh?? Just kidding.

Yeah I guess the minimum-serve requirement is a bit unfair nowadays, most people do use the embed option. But it won't change since I won't be updating the client or server unless something really unexpected happens. And I won't re-enable mirror usage for embeds since I want the JavaScript controls to always work. The security model in Flash is a little bit too strict in some areas but I can't blame them for wanting safety. It's a lot better than the extremely unsafe web of the old days, I remember how easy it was to make people's CD ROM tray open and close at will just by them visiting your homepage.

>Thanks for the neat idea in the first place
No need to say thanks, but thank you for thinking it was a neat idea. If nothing else it was wicked experiment for the history books (not that it has actually been recorded anywhere except on this site). Its biggest downfall was how much it depended on many people willing to help out around the world, it was doomed to fail from the start really.

>>NagaPls  11oct2012(th)04:19  No.4730  K  P74R59
> it's still up I see
"Famous last words"

Went down for a couple days due to that vps experiencing disk failure for the first time ever. Very unusual :S. Didn't have time to fix it till now, but now it's back up.

You know, one solution to the embed problem could be hosting the entire page on the mirror server (meh idea at best) and the captcha page redirects em there, all the clickable links though go back to the actual swfchan (so now the mirror is doing both the javascript and flash).
Another, better solution, could just be to do an iframe to the swf+js content so they'd still both be on the same domain. I'm not completely sure that would work, but I feel like it would.
Sure, there might be slightly more security concerns there (potential for executing arbitrary flash+js), but hardly since at present a malicious mirror could already serve up arbitrary flash.

Still, if it's essentially dead for good, I don't mind. Even if you think it was doomed to fail, it seems like a really cool idea; honestly, I think it wasn't doomed to fail, it just had bad luck in that some guy with very good servers never picked it up (I think?) and it didn't support embed so it didn't offload the majority of the views. Really, it'd only take 4 or 5 people with decent computers/connections for it to succeed I'd think.

>>!///SWFAnts  #ADMIN#  11oct2012(th)04:56  No.4731  SWF  P75R60
The solution that I initially thought up is pretty much what you are mentioning, the swfchanMirror client would pull a template html file with JavaScript and everything from the main server and it would be used to display the flash in an iframe upon embed. Would have called for a somewhat big reconstruction of flash.asp, but all of Flash's and JavaScript's security requirements would be satisfied.

>it didn't support embed so it didn't offload the majority of the views
Actually it did support embed up until a few weeks ago, and it saved quite a bit of bandwidth for a while in the beginning when two or three clients were running. Then I decided to give the seekbar a overhaul. Up until that time the JS controls didn't work like they should anyway so I didn't care about the cross-domain issues that swfchanMirror brought, but after the redesign I wanted them to always work so I disabled embedding for the mirrors. Figured that that project was dead anyways, no mirror-client had been up for a month other than the occasional guy that tested it out for a couple of hours that one day.

>>!///SWFAnts  #ADMIN#  19nov2012(mo)04:23  No.4921  SWF  P76
I've decided to terminate the swfchanMirror project completely today, up until now the swfchanMirrorServer was still running and accepting connections but since the resources it used could be put to better work elsewhere I flipped the switch.

The swfchanMirrorClient can still be downloaded because it can be used as a simple private file server with some built-in features that I haven't seen in any other simple HTTP file server. Maybe some guy somewhere some day will find use for it.

>>Anonymous  26nov2012(mo)09:41  No.4967  L  P77R61
please help

nun o the flashes are working on my cpu

>>!///SWFAnts  #ADMIN#  27nov2012(tu)01:33  No.4971  SWF  P78R62
Check that the flash plugin is installed. If that isn't theproblem I need some more info on what you experience is wrong.
>>!///SWFAnts  #ADMIN#  5mar2013(tu)20:33  No.5866  SWF  P79

New service:

A program that lets you turn flashes you watch on swfchan into animated gifs.

>>!///SWFAnts  #ADMIN#  14mar2013(th)23:59  No.5976  SWF  P80
swfchanGifShooter v1.3

The GifShooter has been updated.

>>Anonymous  16mar2013(sa)01:24  No.5985  M  P81R63
gif shooter is giving me an error that "javaw" is not found
but I checked and have the newest version of java installed
>>Anonymous  16mar2013(sa)23:09  No.5993  N  P82R64
Are there plans to add an auto remove for the orange borders in GifShooter? Don't see it in planned features but it'd be pretty nifty. The border is a constant color and size across all flashes so implementing it would be pretty easy. I'm dreading having to clean it up frame by frame in Gimp. Easiest way would be layering the images and editing them all at once but this netbooks CPU would die twice from even thinking about having that many things open.
>>!///SWFAnts  #ADMIN#  17mar2013(su)10:58  No.5995  SWF  P83R65
When java was installed it must not have updated the path environment variable. I'll have to start concidering that possibility.

What you do is open swfchanGifShooter_run.bat in notepad (you can probably right-click on it and select "edit"). Replace the two words [start javaw] with this: [start "" "C:\Program Files\Java\<folder>\bin\javaw.exe"]. Notice that the quotes must be included. The brackets are not included. The <folder> string is the name of your folder where Java is installed, for example jre6. If the path is not where Java is on your machine you change the whole path of course.

I was expecting someone to ask. :) Sure, I'll add that feature to the to-do list. But I don't know when I will sit down to make the next version.

>>Anonymous  17mar2013(su)18:19  No.5996  O  P84R66
Will you consider open-sourcing swfchanGifShooter?
>>Anonymous  19apr2013(fr)04:36  No.6288  P  P85R67

Earlier today I used GifShooter 1.3 and it worked like a charm. Several hours later, however, I have a problem.

I'm on an embedded flash page here on swfchan, yet when I click 'Start', it claims that it can't find the orange border. The whole thing is visible, and I'm clicking 'Start' AFTER the flash begins to play.


>>!///SWFAnts  #ADMIN#  19apr2013(fr)16:06  No.6291  SWF  P86R68
Sorry, no. Not at this point at least. There's more to do with it and I want to be the one doing it, when time comes.

Which flash are you having trouble with? I have to be able to reproduce the error to be able to fix it.

>>Anonymous  20apr2013(sa)03:35  No.6296  P  P87R69

It was actually over a dozen flashes (every one that I tried) where this problem occurred, and I can't remembered exactly what they all were. Some of them were ones that worked on that first try, but oddly produced the same problem the second time around.

One of those that worked at first but then didn't later in the day was: party.swf

The problem persists today with ALL flashes, including the one above. If you need another example, I checked o the first flash on the Popular page and the problem remains: onball+XXX+1.swf

Here's a screenshot:

>>!///SWFAnts  #ADMIN#  21apr2013(su)13:02  No.6312  SWF  P88R70
Good thing you posted that screenshot, I can immediately see what the problem is. Have you by any chance zoomed anything in your browser? Could happen by mistake. The orange border is only 4 px wide in your screenshot, it must be 6 px for the program to be able to discover it. Press CTRL+0 (zero) to reset your browser's zoom and try again. I had overlooked the zooming in browsers, cheers for posting!

I've added a note on the GifShooter-page about the zoom level so people become aware of this.

>>Anonymous  21apr2013(su)21:50  No.6318  P  P89R71

Ah ha! Thank you very much! I had indeed messed around with the browser zoom before the problem began and forgot to reset it (I couldn't even tell the difference, whoops).

The problem is fixed and it's working as it did before. Thank you again, both for helping me with this and for GifShooter. It's a great tool!

>>!///SWFAnts  #ADMIN#  22apr2013(mo)12:23  No.6321  SWF  P90R72
Glad you like it!
>>Anonymous  30aug2013(fr)03:27  No.8033  Q  P91R73
meet and fuck

please fix some of the meet and fuck games that are broken please

>>Anonymous  30aug2013(fr)03:32  No.8034  R  P92R74
Does this thread look even remotely close to the right place to post what you just posted? Honestly, think before doing things.
>>!///SWFAnts  #ADMIN#  12feb2014(we)17:03  No.9686  SWF  P93R75

New thing:

Made it after seeing many Japanese images being translated into English but nobody bothering to actually format new images with the translated text in them. This tool would make such work less tedious.

>>Anonymous  23mar2014(su)20:08  No.10941  S  P94R76
It would be nice if you got rid of the Captcha on b/c what's the point of having it.
>>!///SWFAnts  #ADMIN#  23mar2014(su)20:40  No.10943  SWF  P95R77
The point is to make it harder to automate downloading, to prevent bots from getting a lot of flashes. This saves resources and bandwidth that is much better put to use for legitimate visits (people actually watching the flashes). That being said, keep this thread for discussion of the swfchan "services" only, please.
>>Anonymous  22may2014(th)04:34  No.13096  T  P96R78
I thought I had posted this somewhere before, so sorry if you already responded to this.

Have you considered adding .webm to Is it possible?

>>!///SWFAnts  #ADMIN#  4jun2014(we)13:54  No.13230  SWF  P97R79
Sure mate, webm should work now. I had forgotten to add it. Haven't thought much about 4chanlink lately since it's basically only used by what looks like a bot on /tv/ and one or a couple of guys on /pol/.

I had a system to protect the site from bots before but ditched it to make it easier for real users to link to many images at the time. Maybe I should re-enable it, but on the other hand without the bot 4chanlink would be pretty empty. I'll think about it for a while.

>>Anonymous  4jul2014(fr)12:13  No.13529  U  P98R80
Just now remembered to check back here.

That's a shame it doesn't get a lot of use. I think it's a really great service. I'm sure if some more people knew about it that it'd be popular, but I don't know how to do that. As for the bots, you should just do whatever agrees with your server costs and budget.

Anyway, I'm grateful for the site and this update. Thanks a lot!

>>Anonymous  4jul2014(fr)12:17  No.13530  U  P99
Actually, looking at the list of mirrored images now... I see what you mean. Did you just disable the bot protection recently? I know it wasn't like that a mere month or so ago.
>>!///SWFAnts  #ADMIN#  4jul2014(fr)23:22  No.13538  SWF  P100R81
Disabled the protection over 1.5 years ago since I got annoyed over it myself at one time. Didn't have any problems with spam until this /tv/ bot appeared so I never put the protection back on. Still haven't decided if I'm going to bother doing something about it, hehe. I'm glad you're finding good use of 4chanlink mate.
>>!///SWFAnts  #ADMIN#  3aug2014(su)11:19  No.14106  SWF  P101
FLV Maker

I'm happy to announce the release of the FLV Maker - create high quality On2VP6 FLV files with ease!

>>Anonymous  6aug2014(we)00:03  No.14158  M  P102R82
It's not straightest easy to use and it still requires adobe creative studio, so I must asume most of these converted video'ers won't bother to use.
But damn! The quality looks great even with such a length. It's even better than doing it at hand with conversion programs, considering the looming file size limit. And true, the black border should not be hardcoded + black BG for the win.
As high quality as Youtube video conversion goes, and that's around 90% of content nowadays.
Excellent job as always, Ants.
>>!///SWFAnts  #ADMIN#  6aug2014(we)03:17  No.14161  SWF  P103R83
Thanks! Actually it doesn't require any of Adobe's stuff in itself, since the purpose of the program is to create a FLV file and that is done without anything from Adobe. I just brought up Adobe Flash as an example of putting the video inside a .swf container. Any method of creating a swf file is of course acceptable, though I haven't really researched any other method myself.

But yeah, if I isn't easy to actually put the video inside a swf file it's unlikely for many to start using FLV Maker instead of programs that can put any movie file directly into a swf container. Almost all embedded videos I see in swfs uses the outdated Sorenson Spark codec instead of VP6 because all video2swf programs uses that codec.

>>!///SWFAnts  #ADMIN#  8aug2014(fr)04:19  No.14192  SWF  P104
FLA Maker 2

After what I'm sure has been much waiting I'm happy to announce version 2.0.0 of the FLA Maker!

You can now build .swf files directly using the program.

>>!///SWFAnts  #ADMIN#  9aug2014(sa)04:31  No.14207  SWF  P105
FLA Maker 2.2.0

New version released with some additional tools. Hopefully I can't think of anything else to add for a while now. But if anyone has suggestions or desires please let me know!

>>Anonymous  16aug2014(sa)01:55  No.14306  V  P106R84
How about support for other operating systems? I don't know how much demand there is for a non-Windows version.
>>!///SWFAnts  #ADMIN#  18aug2014(mo)22:13  No.14336  SWF  P107R85
I don't think that's going to happen unless a whole lot of people ask for it here. Would mean a lot of work since FLV Maker depends on other executables (meaning I'd have to find them and puzzle things together and install different types of OS to make sure everything works like it should). The biggest problem might be finding VP6 codecs for the other systems.
>>Anonymous  18aug2014(mo)22:13  No.14337  M  P108R86
nope, use a PC or go ask your overlords for porn
>>æ  22sep2014(mo)22:05  No.15035  M  P109
so I downloaded it and wanted to try it
I changed the path of javaw because last time I had problems with it
it now looks like this :
>start "C:\Program Files (x86)\Java\jre7\bin\javaw.exe" -Xmx5000m -jar programJar
When I open the .bat it says it didn't find "-Xmx5000m" error message
Wat doo?
>>æ  22sep2014(mo)22:21  No.15036  M  P110
tried it with both 32 and 64 bit javaw
Running on 64-bit winderp
always get *"-Xmx5000m" not found*
>>æ  22sep2014(mo)22:25  No.15037  M  P111
OK, I didn't really solve it
but after installing 64-bit java it now works with only the "javaw" command
And there's no error then, it seems to work
Looks like a path cannot be added when using the -Xmx5000m command.
>>!///SWFAnts  #ADMIN#  23sep2014(tu)06:56  No.15044  SWF  P112R87
Glad you got it to work! It's my fault for writing a incorrect command line as an example on the FLV Maker page, I had forgotten that if a path is given the start "title" must be given as the first argument and the path should be second.

This would have worked:

start "flvmaker" "C:\Program Files (x86)\Java\jre7\bin\javaw.exe" -Xmx5000m -jar programJar

Since the title "flvmaker" was omitted the path was interpreted as the title and windows tried to start "-Xmx5000m" (which is an argument for the java virtual machine telling it to allow more memory for FLV Maker if it needs it).

Thanks a lot for telling me, I will update the bat file and the webpages immediately.

>>æ  23sep2014(tu)21:57  No.15059  M  P113R88
thanks for your efforts as always Zoor
>>æ  23sep2014(tu)22:16  No.15060  M  P114
okay tested it again with the new command line
Now I get this error:
>Java Virtual Machine Launcher
>Error Could not create the Java virtual machine
>Error, a fatal exception has occured. Program will exit.

Tried it with the path to 64-bit javaw -> works
Seems like if you have a 64-bit system, it will only work with a path to a 64-bit java
The Gif shooter worked with my 32 bit java just fine

I recommend to make the description a little bit more vague, so that people put in their own path to the javaw.exe

>>!///SWFAnts  #ADMIN#  26sep2014(fr)16:16  No.15103  SWF  P115R89
Good point, I'll change it.
>>Nanonymous  29dec2014(mo)12:12  No.16815  W  P116R90
Gifshooter issue

I've download the gifshooter and I'm running it with a 64 bit system can someone help me? it just pops up the cmd window and it automatically closes it? why? am I doing something wrong? can someone help me? I really appreciatte it!

>>!///SWFAnts  #ADMIN#  29dec2014(mo)12:53  No.16816  SWF  P117R91
Have you installed Java? If you have the bat file probably just can't find the Java executable. Right-click it and select edit to open the bat file in notepad. Change [start javaw] to [start "" "C:\Program Files\Java\jre7\bin\javaw.exe"]. The path might be different on your system.
>>Nanonymous  29dec2014(mo)13:15  No.16819  W  P118R92
Gifshooter issue

So I download it the new version of Java and it gave me a new path is this correct to to have in the notepad or is there something wrong?
"C:\Program Files\Java\jre1.8.0_25\bin\javaw.exe"
start "swfchanGifShooter"

also when I open the cmd it just stays there it doesnt open java or nothing... what do I do? :( ...

>>!///SWFAnts  #ADMIN#  29dec2014(mo)22:23  No.16828  SWF  P119R93
Your bat file should look like this (only one line of text):

start "" "C:\Program Files\Java\jre1.8.0_25\bin\javaw.exe" -Xmx5000m -jar swfchanGifShooter

>>!///SWFAnts  #ADMIN#  29apr2015(we)21:34  No.19606  SWF  P120
RIP 4chanlink

Decided to take 4chanlink offline today. It was rarely used legitimately and since 4chan started using Cloudflare I think their images stay online for longer than usual anyway nowadays. Besides, it was being used by a site that re-posted threads on 4chan and if the image disappeared from 4chan they suggested using 4chanlink (with an anonymizer to circumvent the referrer check). This created a huge amount of traffic that swallowed 4chanlink whole and made it practically unusable. I never built it for super heavy loads, especially its front page. As I said I don't think the service was used that much but it's old enough to at least deserve a mention when killed.

>>Anonymous  30apr2015(th)19:15  No.19623  M  P121R94
>>!///SWFAnts  #ADMIN#  5jun2015(fr)06:01  No.20448  SWF  P122R95

Version 1.0.0 was just released but it got its own thread over at so I won't mention it here again. Keeping all discussion about all services in just one thread was never really a good idea.

>>Carrie Margettha  26jul2015(su)22:06  No.21730  X  P123R96
Too many dead file (error 404)

Too many dead file.That says error 404.What does that mean.I hope The " " server should delete the dead file soon.

Many" thanks Swfchan

>>!///SWFAnts  #ADMIN#  27jul2015(mo)01:14  No.21731  SWF  P124R97
Everything seems to be working on my end, I need more info to go on than that.
>>Anonymous  26dec2015(sa)01:47  No.26296  Y  P125R98
why cant i see the captcha?
>>!///SWFAnts  #ADMIN#  26dec2015(sa)02:49  No.26297  SWF  P126R99
I don't know why you would have that issue, are you getting the "broken image" icon in your browser? Can you right-click it and give me the full URL to the image?

Anyone else not being able to see captchas?

>>Anonymous  7jan2016(th)10:27  No.26620  Z  P127R100
can't make gifshooter work at all. I fixed the "view" set to 6 pixels and it keeps telling me "can't find the rectangle". i've used 2 different swfs, same thing.

Thing is, it kinda worked for a minute, just couldn't record anything, then when i reopened the file it gives me the error.

>>Anonymous  7jan2016(th)10:28  No.26622  Z  P128
specifically it says "failed to take screenshot"
>>!///SWFAnts  #ADMIN#  7jan2016(th)10:38  No.26623  SWF  P129R101
Press CTRL+0 to make sure the browser hasn't zoomed anything. Make sure the whole rectangle is visible on your screen, with a bit of white space around it. If it still doesn't work tell me your OS, browser and give me URL to a flash that doesn't work, please.
>>Anonymous  31mar2016(th)20:53  No.31073  AA  P130R102
Ai subeki 17 and 18

There is a problem with with AI subeki 17 and 18 when converting them to apk files. When trying to open them it is just a white screen. How do I fix this.

>>CUM SLUT  27nov2016(su)13:13  No.41554  AB  P131R103
game post

can we get the mayuri vision from comdotgame on here plz I think ppl would love it

>>SirenSix  2feb2018(fr)10:40  No.56818  AC  P132R104
Asking for some issue.

After I created a Swf Game file into Android app file and When I installed it, opened it on my phone and it run through like a video. I mean it automatically click on action buttons without touching them manually. No interaction can be made, I just can watch it like a video. Any solition to make it run like a real game..?

>>!///SWFAnts  #ADMIN#  2feb2018(fr)16:00  No.56820  SWF  P133R105
Sounds like the flash is using ActionScript 2, only AS3 works. The only solution then would be to remake the code.
>>Anonymous  31may2018(th)01:33  No.60065  AD  P134R106
rebuild link to Oppai Polygon 4th Slave Material

Hey, not sure if this is the right place to post this (never have before), but the link for this flash is dead: i+Polygon+4th+Slave+Material.swf

Good news is, I found it on another site: on_4th_slave_material

Is there some way the .swf can be extracted from this site?

>>anon  26jun2018(tu)20:19  No.60562  AE  P135R107
search filter

everytime i search something it says that half of thhe files found were filtered away. why is that the case and is it possible to disable this filter?

>>Anonymous  26jun2018(tu)21:12  No.60565  M  P136R108
normally that is when you put in other search parameters, like categories
so it searches for the term and filters away anything that's not in the category, or has negative search terms in it
>>pfft  26aug2018(su)07:03  No.62044  AF  P137R109
cant you block that pdpatty guy? this is for drawings right? that guy can upload his stuff anywhere else cant he?
>>ift  24jan2019(th)12:56  No.66225  AG  P138R110
Covert SWF to APK

make a vedio how to Covert SWF to APK

>>Anonymous  19apr2019(fr)19:57  No.68171  M  P139R111
Heads up regarding the Swiff Army Knife:

Some anon claimed that "whatever the VP6 encoder was doing, it was set to detect and discard duplicate frames which doesn't make any sense in that context. the h264 encoder wasn't ...
so it seemed like a really dumb oversight"

Don't know if that's true, but maybe Admin wants to take a look into it.

>>!///SWFAnts  #ADMIN#  19apr2019(fr)23:20  No.68172  SWF  P140R112
Thanks, I've made a note to look at it if I get around to a new version.

Off the top of my head the issue is something inside the mcf config file. In Swiff Army Knife I'm using a static template version of the config file where I just swap out the bytes that represent bitrate, while in FLV Maker it is possible to to display the codec settings window (part of the codec itself and displayed by mencoder.exe). I can't remember why I didn't provide access to that vp6vfw.dll settings window in Swiff Army Knife, either I couldn't get it to work for whatever reason or I just thought it didn't fit well with the rest of the program to have that settings window pop up, but I'll write in my notes that I should try to provide access to it again.

>>Anonymous  12may2019(su)04:57  No.68690  AH  P141R113
Hey Admin, you need to put a limit on some of the uploads, Your site is getting FLOODED by someone that puts up around 10 - 20 "PDPatty" flash's a day! No one else can have their uploads seen unless they are searched for. Pretty ridiculous if you ask me...
>>Anonymous  15may2019(we)22:08  No.68742  M  P142R114
Idk what you mean, all those flashes are manually added flashes on the archive (either crawler or more likely admin himself?), all on the front page only.
Searching for filenames is the standard procedure. Do you need to see actual new flashes on the frontpage?
Because here on the .org chan, there's no such spam. And that's the only way for people to add flashes to the archive.
Are you sure that you're not on random-thread-order?
And even if it was the case (has been often enough in the past, heads up to Soldier Of Fap), there isn't any reasonable way and reason to restrict flash uploads. This chan is just meant as a way to upload flashes directly to the archive. If you want a single curated frontpage, visit /f/ or whereever.
>>Anonymous  17may2019(fr)04:14  No.68759  AH  P143R115
The only bookmark I use for the site is , that's where all the PDPatty stuff is flooding. It used to be that I would go to the page and see a wide array of swf, now anytime I go to it 90% is all PDPatty. I thrive on variety and seeing such a flood of the Patty stuff over the last 7 -8 months has tainted my experience with the site. That's why I voiced a concern and tried to suggest a solution.
>>Anonymous  17may2019(fr)06:34  No.68760  AI  P144R116
Well I don't see it right now, why not entertain yourself a different way; Each time you see that page filled with PDPatty flashes, go to the beginning of the archive and flip through the pages until you're bored. Make a new bookmark when you're done and then start from the place you left off. I highly doubt you've already looked through the entire archive and this way you'll be exposed to a variety of older flashes that you've probably never seen before.
I went to a random page once this way and it was how I rediscovered saiyinhard.swf, which previously had no postings to /f/.
>>Anonymous  20may2019(mo)00:17  No.68806  M  P145R117
Yeah, I'd say watching for newly added flashes in [Current Year] is hardly gonna do it.
You could also use the .net community page, browse through different collections (text search for "++" for newly added flashes), use a chan (here, or /f/) or just search for a category and go through the archive pages themselves.
Lurking on /f/ and .org is basically 100% of all real new flashes added to the archive anyway.
>>Anonymous  25may2019(sa)11:12  No.68936  AJ  P146R118
I'm doing that for a past few months, trying to save everything that is salvagable around here. I'm on page 2400, its a fun treasure digging
>>Anonymous  12dec2023(tu)15:01  No.100500  AK  P147R119
the Incorrect Captcha

i can‘t recognize the new random captcha and it won’t refresh, causing me to be completely unable to browse flash.No matter how I look at it it looks like there are only three characters like "4VQ".how can i refresh the captcha?

>>Anonymous  14dec2023(th)23:34  No.100510  M  P148R120
Just try it a few times and it will give you another one eventually.
The only time I ever experienced a captcha I couldn't solve (randomly) and it just wouldn't change it was by using the report feature. Which shouldn't be a regular issue around here really.
>>Anonymous  10jan2024(we)12:03  No.100708  AL  P149R121
How about a /_/ for looking for stuff?

I'm not the only one who tried to ask help in searching for a particular game on the /disc/. Maybe we need a some /srch/?
Created: 25/3 -2012 10:00:54 Last modified: 13/7 -2024 09:49:50 Server time: 13/07 -2024 10:14:29