This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
ArchAngel075's profile picture

AngelMedia | [Reworking of AngelTV] | AngelSound [alpha2] -- the VirtualDJ of MC!

Started by ArchAngel075, 17 November 2012 - 12:51 AM
ArchAngel075 #1
Posted 17 November 2012 - 01:51 AM
This Project has been declared "dead"

No updates or work will be done on it until I feel like taking it up again.

BUT if anyone feels like continuing it please feel free to pm me.


–ArchAngel075


REWORKING

of AngelTV to become AngelMedia

A bridge of TV and SOUND

——



Current Working on : [Main Menu] for AngelMedia



AngelSound

Spoiler


Another Innovating media utility!

s
By hooking into misc Peripherals IRONnoteblock I was able to make a "virtualDJ" of sorts


Version Alpha 2


Current Features:

—==========—

Supports 2 channels of music

Has infinite note support

Can store as many projects as you wish

GUI based, only 1 instance of typing



How it works :
Press U or Y to scroll through both channels, this allows for more notes.

-Rclick on a note(hash) in a channel to edit that note.

–The first button is Lclick and drops a list of notes to use > click a note to change to it

-Empty note will make it empty ….

-The second box is typing for now, accepts 0 to 24 number only. Changes the TUNE.

-Third box is Preview NOTE.

-Back is self explanative.

–Press enter in Channel view screen to play the current song.



Download [PasteBin only atm]





NOTE:

Angel-TV has a bug where editing Frames using the program will delete the frame instead. Please use another editor IE PAINT, or NPP

I will not fix this as AngelTV is scrapped and a new remake is WIP
ArchAngel075 #2
Posted 17 November 2012 - 01:56 AM
Please give feedback and suggestions!
gamax92 #3
Posted 18 November 2012 - 07:02 AM
Suggestion:
Turn quake pro off for screenshots, it's awkward when trying to show a monitor's screen.

Will try the program out later.
ArchAngel075 #4
Posted 18 November 2012 - 02:07 PM
starting on the new menu, and creating a ConfrimTabsAPI to help improve confirmations and options in the program for when AGO is started

-edit-
ConfirmTabsAPI (api name is cps) is mostly done, testing
rewriting cpsAPI after my pc decided to crash notepad++ and nulll every line :)/>/>
rhyleymaster #5
Posted 18 November 2012 - 06:42 PM
Amazing! I made a really funny video in this.
Possibly add a mode to share your videos? (If its already in, i cant find it.) Also, for sharing, you should have it upload the videos to pastebin. so people can download them.
ArchAngel075 #6
Posted 19 November 2012 - 08:46 AM
@ rhyleyMaster
because of how pastebin handles files seperately, and since each frame is a file on its own, the only way i can see this working is making it compile a movie into one file(copy lines used and then add a line "%%" to indicate break and new frame.) :

-Added on
Todo for AngelTv 1.2,
- Compiler - compile a set of frames (perhaps user defined?) into a movie file for pastebin and file sharing. (wonder if its possible to have a custom extention Amov?)
- decompiler, Decompiles a movie file (possibly a .Amov file) into a frames file.
- work on Compressed Movies.

AGO(advanced Graphicle Object) moved to a [will be done eventually] state untill the Compiler is written, this is to provide the best possible outcome in AGO.
–Compressed movies :
–Possibly lessen the file load on computers by combining the files into a single movie file with bridges in it
–Possibly include a AmovCompilerAPI to attempt to compile any file into a movie.
Thanks for the idea rhyley!


also i am alpha on rewriting the cps API, perhaps ill include color support this time around now that its in my head ?


–any programming WILL be slow de to exams, but the notepad++ on my tablet makes sure school isnt a complete hindrance :)/>/>
ArchAngel075 #7
Posted 19 November 2012 - 10:46 AM
Mostly done woth the cpsAPI, no color support sadly.

It has ability to define options for the user to choose from, and return the option the user chose.
Also any options that are too long to fit on screen will not be added, currently there is no way to return whether a skip occured or not.
The window will resize to fit the longest string possible(49 or 50) and encase all options.
If too many options are used and the options are offscreen no error is returned, it will be reccomended to test to see if your options are too long or too many,
To solve a TooManyOptions problem remove the last two options and instead use "Page Next(previous)" and a new Tab holding the overflow.
A way to detect overflow will eventually be made to auto page options


–Got permission to use NPaintPro with program, support will be added in future.

—Tidied up OP and editing Angel-TV 1.1 to use cpsAPI
—added ToDo to 1.1 "Loop, re-playability"
ArchAngel075 #8
Posted 20 November 2012 - 07:26 AM
Finished the cpsAPI will add soon (was editing post but a derp by my PC closed firefox so too lazy to retype all the functions of cpsAPI
Will add DL for cpsAPI later, Currently adding Loop function to Angel-TV

Once Loop is added 1.1 will be released and work on the Compiler and movie sharing system will be started>
ArchAngel075 #9
Posted 22 November 2012 - 02:40 AM
UPDATED!

=Added in 1.1
-Better Menu (no more buttons!)
-cpsApi bundle (For those who want to make menus too)
-Better disk and monitor checking (will error and let user know about the error, then reboot upon keypress!)
-Delete frames, will automatically shift frames down so that there is no gaps! (frame 1,2,4,5 will not happen if you delete frame 3)
-Loop! reply a movie x times or infinitly! (NOTE press enter during a infinite loop to stop and return to menu!)
-Constant refreshing - now there is a less chance of your movies being lost during a process! (with hardly any affect to program speed..)
-May have sqaushed that very seldom OutOfBounds error!

Also now cpsAPI is added with the download as it is REQUIRED to make Angel-TV work!
Feel free to poke in cpsAPI to see how it works, documentation on how to use its functions will be up eventually…

Working on Compiler and Decompiler next, make way for pastebin movie sharing!!!
ArchAngel075 #10
Posted 23 November 2012 - 02:06 AM
Just finished up the prototype compiler and hell it turned out better than i hoped ;)/>/>
–edit–
improved abit, now will ask if it must delete all FrameX files once done compiling, perfect for quick compressing!
–adding file checks

compiled 30 frames in ~1.1 seconds (i couldn't time it fast enough!!!! XD)

de-compiled that same movie file (aka .amov) in just about the same time, play back was smooth accross both -_-/>/>


all frames(from 1.2) are now the '.afr' format

Going to start working on the better menu system,
=
Configs (submenu)
-default framerate,
-what editor to use (for future support)
-Loop allways (upon program startup it will loop the vdeo which is perfect for billboards, requires rename to 'startup')
end
=
Player (Submenu)
-Quick Loop (normal user defined looping)
-Play movie once (uses Frames atm since a function to instantly decompile a .amov and then play is needed stil)
-Show splash screen on startup (yes i made a splash movie to play upon startup, if anyone wants to design a 2x2 screen splash to play upon startup then please!
-Decompile before playing (automatically decompiles a .amov and plays it –relies on how i can combine the player and decompiler)
-(whatever else becomes available)
end
=
Editor (Submenu) –all editor options will only work on a .afr file, there will not be any support for amov frame editing unless this grows enough, or requested enough)
-Edit frame
-Delete frame
-Copy frame
-Move frame
end

Also I will upload the 1.2 pre containing the compiler/decompiler plus the splash, Not that its only a pre (more like alpha 1.2)
(wait for 1.2 normally, it is somewhat a easy update now that compiling is out of the way…, but should anyone specifically ask for the decompiling code ill provide)

–working on menus later today….

ALSO
Please report any and ALL errors you get! the more i squash the better for me and you!
rhyleymaster #11
Posted 23 November 2012 - 07:50 PM
Just made a new animation with looping.
This is my favorite now :3
I just need to find a server with this, so i can play all my movies, and make a theater ;)/>/>
ArchAngel075 #12
Posted 23 November 2012 - 11:44 PM
haha, well the new compiled movies (no more 600+ frames ;)/>/>) is better thanks to pastebin support :P/>/>

I also am working on using NitrogenFingers NPaintPro as a MUCH MUCH better editor as it supports scrolling the editing window, which makes for 'paint' but with 16x16 screens!
But no real hopes atm.
–mind uploading your animation -_-/>/>, i might get ideas :)/>/>

—movie on how to work the program might come eventually, if i can steal my dads mic long enough…

–tonight im definitly working on the improved menu's, look at how i can improve checks for errors etc and look a little into NpaintPro.


any suggestions welcome!
remiX #13
Posted 24 November 2012 - 12:41 AM
Suggestion for when it doesn't find a disk / monitor: Make it wait for an event to find a disk / or an attached peripheral (monitor in this case) comes into play and then it continues ;)/>/>
ArchAngel075 #14
Posted 24 November 2012 - 03:01 AM
Suggestion for when it doesn't find a disk / monitor: Make it wait for an event to find a disk / or an attached peripheral (monitor in this case) comes into play and then it continues -_-/>/>

Accepted, i was thinking of changing how it responds to the lack of disks and monitors etc so thanks for letting me know :P/>/>

–going to start work on menus and improve the error handles now, 4 hours from now i plan on resting ;)/>/>

Wow, this menu update is going to make me add also multiple movie fileframe instances :)/>/> ie :
-Play default movie
-Play user selected

frames will gain the '.afr" format, frames specific to a movie will be instead housed in a folder of that movie name, thus setting directory to use is setting movie but
also set instead a .amov file and it will auto decompile the file with its own name (this should be easy to implement) thus no more will i need to limit you to just one
movie, but making a system that avoids overwriting movies will be annoying (soooo many checks to add !")

but i will release 1.2(once the above is implemented) and other updates specific to 1.2 will gain a 1.2.X instead
ArchAngel075 #15
Posted 25 November 2012 - 06:54 PM
Quick news update

1.Added ProjectPaths, now hardstore projects on disk or on pc plus have named folders for each project for easier storage (WIP debugging the compiler/decompiler as they rely heavily on file paths)
3.Finished the new Menu
2.updated cps with a low amount of color text support : color individual options, makes it much kinder to the eyes on long lists.

expect 1.2.1 ready once the compilers are fixed up and the better error handles are added.
rhyleymaster #16
Posted 25 November 2012 - 09:12 PM
Aww geez. I was making the Nyan Cat thing to post here, but my CC melted down today. Lost all the files.
Ill post it when its finished.
ArchAngel075 #17
Posted 26 November 2012 - 02:57 AM
OK, im sure that compiling can double as "save and backup", just need to CP the function and make it force the name "backup" and extention "bkp" :D/>/>/>


BTW i know that feeling, earlier this morning my notepad++ nearly destroyed the only backup of Angel-TV 1.2.x that im working on ….
ArchAngel075 #18
Posted 27 November 2012 - 02:39 AM
Updated ! :D/>/>:D/>:D

Enjoy the new menu system and project system,
The better error handling will be included once i improve on disk based projects and add the configuration to change "ReliesOnDisk"
Will probably add a list function to help remembering projects that are saved, Plus maybe finish the basis behind "decompile and run then recompile" based movies to practically get rid of the need for frames! (except for editing ofc)

Any suggestions as usual are welcome!
Any errors must please be reported!
If you feel a error needs a warning message and 'any key to continue' message please let me know so i can add it!
If you feel an part of the program needs a confirmation added removed please let me know
etc etc…

If you want to help out some, try making some splash screens to play on startup! I have made my own but a option to use different splash screens would be a greate idea :)/>


I love making this program! :P/>/>
(Lastly exams are nearly over so my time can be better spent on this, just two more papers left so please bombard me with ideas to look over!)
Edited on 27 November 2012 - 01:47 AM
ArchAngel075 #19
Posted 28 November 2012 - 03:18 AM
-Just realized for the third time now how hard it is to see what a frame looks like without opening in editor mode, perhaps i should add a scrolling preview mode ??
-What is the opinion on re adding disk support for transport across computers?
-How does Compiling feel
-Is the new menu system more friendly to the eyes and less clogged ?

Please give opinions :)/>
ArchAngel075 #20
Posted 02 December 2012 - 07:19 AM
I have a plan for the preview system that will include a filter search option, a preview image and perhaps more, it will work using tabs scrolling and more to give a user friendly GUI.
Also looking back at the compiler etc, i noticed sharing the videos will be annoying if one must terminate so ill include a option to Upload and download videos using the existing paistbin program

I will eventually start on this update(1.2.2) as im currently taking a break after exams, this monday i planned to start the basic previewer.



Any suggestions welcome as usual.
ArchAngel075 #21
Posted 03 December 2012 - 07:44 PM
The basic Preview mode is done, im hoping it comes in useful for quickly looking at frames, it uses the current project path and ONLY will load .afr files, this is to keep it from accidentally loading a Directory…

How to use preview mode :
- use the mouse wheel OR arrow keys(up / down) to change the frame being previewed;
- to edit the previewed frame click the frames name in the box
- To go back to Edit Menu press 'backspace' [will add a back button eventually should i feel its needed]
==

Note that for ALL options making use of a scroll wheel an optional way to scroll using the keyboard will be used, this is incase your mouse wheel is not good for this type of work or you just prefer keyboards…

Also will add eventually :
- A 'search for frame number' option;
- A 'change projectPath' option;
- A 'InstaCreate-Frame' option to allow for speedy blank frame creation
- Anything else requested…
==

Note that the Terminal preview image is designed to use 2x2 sized images, but it also previews out to the monitors for those bigger images :)/>

To DL just look at bottom of OP for :
Angel-TV[v1.2.2] + cpsAPI[v1.1] bundle

–if the Attachment is not there yet its cause im still in the process of zipping and upload, give it 5 minutes about–

Last note :
I have not tested as thorough as i usually do so please report any errors, they will be fixed in 1.2.3 along with search options mentioned above

-end-

As usual post suggestions and bug reports…
ArchAngel075 #22
Posted 05 December 2012 - 11:10 PM
What i plan for next update [1.2.3] :

- Definitely the better error handles, this is LONG overdue
- NPaintPro support, I asked nitrogenfingers about his animation files and we both use the same trick so decompiling a animation to playback on Angel-TV would work the same as a .amov.
- Some more improvements on projects, I want to be able to have a Projects within projects, ie Projects/ProjectName/SubProjectName/[files]….
- Search for option in previewer, the list will auto update and filter using very expansive filters ( prefix , subfix , exact/half-match )
- A Jump-To option in preview mode that will jump to the file you specify and then allow scroll from there, this will be accessible also from the filter list for quick navigation.

-edit-

Also to be added will be the pastebin support using provided pastebin program. Both download and upload will be supported.

A big update to work on imo so it will take time, especially since me and friends are playing on my server and sqaushing things in SupremeCommander-FA…
I will take time on thursday Dec 06 to look at decompiling and basic searching and a any match filter.

-end-

Please make suggestions for 1.2.4 and 1.2.3 as im running out of ideas after 1.2.3 XD
ArchAngel075 #23
Posted 06 December 2012 - 02:46 AM
Decided to use a buttons API to help improve the GUI for searching.
bjornir90 #24
Posted 06 December 2012 - 08:17 AM
You are going to make your own API ?
ArchAngel075 #25
Posted 06 December 2012 - 03:29 PM
I am hoping to eventually implement some nice buttons and popups to cpsAPI, but i am lacking in the knowledge to do so.. I can use a CreateButton,DrawButton,WaitFor click etc but some small details partaining to button expanding etc are causing problems….

Instead ill look around ofra existing API to use for now, but if it becomes too much hassle ill make the buttons and menus that use them hardcoded in AngelTV as i done with the previewmodes one button, but an API to make adding and maintaining a button would be of godly help… Also i can always turn to using my original envisioned idea, where the search list is a dupe of filter scroll but you can only scroll through a filtered list… The problem is then you cant exactly see whats at hand and quick jump unless it was "type in frame number to jump to" and im trying my best to avoid typing commands too much…

long explanation while half tired….
:mellow:/>

hmmm, actually i was actually going to turn to your API :P/>
BUT can you add a wait for click and then check if mouse_click XY is within a buttons XY box ?

and here is how id pull it off :

first we save all the buttons data such as name(optional) and X1 Y1 and X2 Y2. Since we can easily draw any box using those four coords. Its also possible to use the same draw function to check if a given coord is within that box, :

first the original DrawButton function i allways use (except this one is very customisable.)
Spoiler

function DrawButton(x1,y1,x2,y2,sym,color1,color2,text,named)
if x1 == nil or 0 then x1 = 1 end
if x2 == nil or 0 then x2 = 6 end
if y1 == nil or 0 then y1 = 1 end
if y2 == nil or 0 then y2 = 6 end
if sym == nil or 0 then sym = "#" end
if color1 == nil then color1 = 0 end
if color2 == nil then color2 = 0 end
if text == nil then text = "NONE" end
if named == nil then print("Error : string expected, got " .. type(named)) print("Press any key to continue") os.pullEvent("key") end
for i = x1,y2 do
  term.setTextColor(colorGet(color1))
  term.setCursorPos(i,y1)
  print(sym)
  term.setCursorPos(i,y2)
  print(sym)
end
term.setTextColor(colors.white)
for i = y1,y2 do
  term.setTextColor(colorGet(color1))
  term.setCursorPos(x1,i)
  print(sym)
  term.setCursorPos(x2,i)
  print(sym)
end
term.setTextColor(colorGet(color2))
term.setCursorPos(x1+1,y1+1)
print(text)
term.setTextColor(colors.white)
inputin = named .. "*" .. x1 .. "*" .. y1 .. "*" .. x2 .. "*" .. y2 .. "*" .. text
return table.insert(Buttons,inputin)
end

So we saved all the needed data as a index in the table Buttons.

then listen for a mouse_click, grab its X and Y then :

Spoiler

function BreakBData(ButtonName)
local Temp = ButtonName
local startf = 1
local endf = 1
for i = 1,table.maxn[Buttons] do
  if Buttons[i] == Temp then
   ---the function that breaks down the string and grabs the seperate data
   --afterwards : Do note that BX1 BY1 BX2 BY2 and BButtonName etc are all the infomation we got from above function
   for i = BY1,BY2 do
	if MouseY == i then
	 for i = BX1,BX2 do
   if MouseX == i then
	clickedButton == BButtonName
   end
  end
end
  end
  end
end
end

then we just fetch what clicked button was and respond accordingly.. this can be run in a While Loop along with a ButtonRender function to infinitely call functions on a button click.

(DO note that i typed out the second spoiler as i was typing this…)'

-end-

-edit-

Oh i forgot, to allow "popups" and the like we can just add a g variable to all the X2 and Y2 variables in the first draw function, the g is the number to add-on should it expand, thus to make it grow from 6;6 to 9;9 we just set g to 1,render,2,render,3,render and that will end up growing it (it was infact my first function i attempted to use in Advanced computers so its one of my favourite :P/>)

-end-

NON-related to above issue update :

Ill add a check box of sorts to allow you to toggle the output preview to monitor, just thought it was needed
ArchAngel075 #26
Posted 06 December 2012 - 03:47 PM
Ok after looking at my above example I think I saw a big derp, rejoice(i think) that im going to TRY and write out the entire system i explained above for cpsAPI, just because i cant stand not knowing if it will work so current project = "Get buttons working"

Yes. Many problems above, but overall one should see the concept Ive work on, im too tired after not sleeping… so ill read up here later today…
bjornir90 #27
Posted 06 December 2012 - 07:11 PM
So if I understand good you want a function that take every running buttons and return the one wich has been clicked ?
I can easily do that but it will take some time because I cannot test it everyday so it will be done this week end normally :)/> But for the moment you can use a parallel with all the function for buttons running in. And thanks for the expand idea :P/>
ArchAngel075 #28
Posted 06 December 2012 - 11:02 PM
yeay, i was worried my (very tired) babbling wouldn't make sense, that's the summary of what i wanted and I'm also happy to see you can do it, id very much like that update :)/>
bjornir90 #29
Posted 07 December 2012 - 04:08 AM
I have already implemented a kind of buffer so it will be not so hard :)/> It's even done but as I can't test it, it may be bugged. If you want to test for me, it's the beta :P/>
ArchAngel075 #30
Posted 09 December 2012 - 07:00 AM
Waiting for some info on the API that bjornir90 made, once I have the knowledge needed ill properly start working on the search option and some MUCH nicer error handles and popups to replace the 'old' "Press enter to continue" with "Click OK to confirm"

-The plan is to reduce typing instances and only where one will set a ProjectPath, and similar instances, will user-typed-input be used.
-I may also rework the whole menu AGAIN using the API, and maybe drop cpsAPI completely since it cannot do as much as the Mouse and Graphic API (MG-API?)

-Lastly i have been having to much fun in SupremeCommanderFA and Terraria so 0% work done…
In the meantime im going to look into pastebin options, expect it to be done by tuesday. The update will be [Pre1.2.3 #1]
-[Pre1.2.3 #2] will include the better error handles and such, this is to get it out of the way but will require MG-API.
-[Pre1.2.3 #3] is the attempt at NPaintPro support.

-Full 1.2.3 will contain :
–Custom Splash support, play any splash screen you download on startup or disable completely.
–Disk Support, be able to move files from disks or work off a disk completely just as [v1] worked.
–NPaintPro support, play back npa files, since NPP does not have a way to play back its own animations
–Improved error handles
–Better GUI styled user control, dropping as many typing instances as possible.
–Search option, with jump-to, filters and listings.
–Improved copy/delete/move screens, using the search option you can better interact with your files instead of a bunch of typing. (none of us want to type frame1-to-frame 15 by hand do we?)
–Splash screens, play a movie on startup to give a good hello! Choose from any you downloaded or just go random!

-end-

In other news, I'm going to ask for anyone and everyone to make a splash movie to play upon start-up, it must include the Abbreviation ATV, I have my own that is already converted to .amov format that will be defaulted in [1.2.3+]

Also report any bugs or give sugggestions, Im more than happy to try and add XYZ if it makes sense or I feel it is missing.


–I am also looking into netrok based streams and such for much future versions, picture TV stations with channels to scroll through! Minecraft with cable!–
bjornir90 #31
Posted 09 December 2012 - 08:20 AM
So I actually done the function you have requested, the gui.getSelection() wich take every button drawed on the screen and return the one who has returned like this :

gui.setButton(x,y,endx,endy,text,colorline,colorbackground)--button 1
gui.setButton(x,y,endx,endy,text,colorline,colorbackground)--button 2
gui.sRender()
gui.getSelection() --will return 1 if the button is clicked, 2 if the button 2 is clicked and so...
So the order you declare the button are very important. If you want more informations look into the thread of the API I describe functions and how to use it :)/>
ArchAngel075 #32
Posted 09 December 2012 - 08:33 AM
Ah thanks, makes sense, and its easy to track what order they will be if i internally save "1" as the string of the option :)/>



Also I found a FTB server thanks to my friends and they are willing to play around with the program :)/>
bjornir90 #33
Posted 09 December 2012 - 09:10 AM
I have combined the functions like you say, it's actually in beta if you want to test it. I'm working on adding the buttons on pop-up :)/>.
ArchAngel075 #34
Posted 09 December 2012 - 09:46 AM
Sure, I'm happy to test, Ill even throw it on the server I'm on, one of the players use CC a lot as it seems.
rhyleymaster #35
Posted 10 December 2012 - 09:04 PM
Hey, I just stated having a problem. Keeps saying:
Angel-TV:3: attempt to index ? (a nil value)

Only started when i updated to 1.2.2.
ArchAngel075 #36
Posted 12 December 2012 - 01:34 AM
Ok ill look into it!
ArchAngel075 #37
Posted 12 December 2012 - 01:43 AM
Ok, at that above error the only solution is not having the cpsAPI properly installed, please install it again using the one that comes with 1.2.2, some minor updates may have happened.

Pls don't rename any files you obtain, as those names are hardcoded in.


On other news im putting this project at low priority instead of high since i have some servers i need to manage out and my tendancy to procrastinate alot.

When the next update comes it should contain a good deal of changes though since i have lots of plans for the GUI thanks to bjornir90's API :)/>
Expect some more interesting menus!
ArchAngel075 #38
Posted 19 December 2012 - 03:12 PM
Ive been away this weakend so no work done, i have gotten some work in the pastebin support, once PB downloading is added ill turn back to the search tool…

An extra change is the editor no-longer has you type in file names instead it hooks into the search tool, this is the first real step to removing user-typed inputs.

Updates are slow as usual, but please feel free to suggest ideas or report bugs, feedback is important as I have no real idea what one would want for this project…

Also i am announcing the real intentions on this project once i have a working (but perhaps still buggy) search tool.. One pointer is that it is best for servers.

lastly I had a spark of imagination when i heard of a image to binary converter. If one can convert a image file(say JPG or GIMP) into hex then you can easily port real life videos into the screen! One issue is size, im pretty sure monitors can be configured to allow larger sizes… but all this will wait for after the next update which as said before is low priority.

I wont be around for 2 weeks from this friday, without internet for abit, and ill be stuck with hardly anything else so ill be forced to mostly work on this…
Learning_inpaired #39
Posted 19 December 2012 - 04:38 PM
i cant wait for tekkit to have the advanced computers -.-'
ArchAngel075 #40
Posted 20 December 2012 - 10:44 PM
spot update soon to come, as im going away friday for two weeks I will put out the pastebin supported version, with the new API's support, that is being able to set the api's that the program loads based on the user set paths, by default the load apis using default names in a API's folder within the AngelTV folder, it will perhaps be possible to set the apis paths to wherever you wish. NPaintPro will also be supported this way.

The default names are

NPP - for NpaintPro
cps - for cpsAPI
gui - for bjornir90's API

Im hoping to get this release out by today :)/>
theoriginalbit #41
Posted 20 December 2012 - 10:56 PM
Food for thought. Have some "broadcasting" networks. So that people from any computer on any server, can all sit down and watch the same movie, at the same time ;)/>

that is all :P/>
ArchAngel075 #42
Posted 21 December 2012 - 12:41 AM
Sadly when i try to set the API file name to be used as a variable it fails

ie
–original = cps
–the user wants the cps api to be called cpsa
–thus
cps = "cpsa"
–but
cps.FUNCTION()
–will not work

one way will to have ther userfile renamed to what it requires but that somewhat contradicts the systems purpose
theoriginalbit #43
Posted 21 December 2012 - 12:42 AM
to set the API as a variable you use os.loadAPI("filePath") and the variable is the file name.
ArchAngel075 #44
Posted 21 December 2012 - 12:49 AM
Food for thought. Have some "broadcasting" networks. So that people from any computer on any server, can all sit down and watch the same movie, at the same time ;)/>/> that is all :P/>/>

The update after the pastebin and search tool implements will centre around the networking…

It will be using the idea of streaming, by streaming on "channels" or "frequencies" and then connecting you can get an immiediat stream of whatever is being played, it also will be play on connect, it requires 0 buffering as it plays whatever FRAME is currently bieng sent…

in other words :

movie contains 5 frames
-
111
aaa
-
222
bbb
-
333
ccc
-
444
ddd
-
555
eee
=

the server will stream by sending the first file, then a message to signal its end, this makes the clients play that file on screen, then wait for next file and repeat process.
This way when a client joins a channel or freq it will receive the current frame instead of needing to wait for the next movie.

Aside from the streaming one will also be able to make looping movie lists, and one time movies.

This is the ultimate project of AngelTV, to replicate cableTV in minecraft… There are also chances to allow channels to be accessed accross internet and servers using pastebin, using a central http server that provides the movies to hubs(servers), but server-cross movies are a low priority
theoriginalbit #45
Posted 21 December 2012 - 12:50 AM
nice :)/> is this just in a local instance? or across the HTTP API?
ArchAngel075 #46
Posted 21 December 2012 - 12:56 AM
no that is done, its callign its functions that cause trouble, i want to have the functions as cps.FUNCTION()
even though the filename is cpsa, I set cps = "cpsa" and call cps.ranColor() and it fails since cps. is invalid…

the concept update will be local server(not http) and the improved will have http


just to ask :

by load as variable above do you mean :

VAR = os.loadAPI(FILEPATH)

then calling

VAR.ranColor()

will work ?
theoriginalbit #47
Posted 21 December 2012 - 12:56 AM
ooohhhhh.


cps = cpsa

EDIT: It fails because "cpsa" is invalid
ArchAngel075 #48
Posted 21 December 2012 - 01:00 AM
ooohhhhh.


cps = cpsa

EDIT: It fails because "cpsa" is invalid

the file name is cpsa, and im "replacing" cps with "cpsa" , could it bebecause cpsa is counted as a string :?


well , perhaps ill leave it to require those file names just that path can be anything…

Im taking a break, then going to tackle it and move onto completeing pastebin_downloading….

sadly it doesnt seem like ill get search done today, but there is enough updates to last
theoriginalbit #49
Posted 21 December 2012 - 01:05 AM
yes i know the file name is cpsa if you have the following it would work, I have done it before


os.loadAPI("cpsaFilePath")
cpa = cpsa

this sets the pointer to the cpsa API to the new cpa variable.
ArchAngel075 #50
Posted 21 December 2012 - 01:07 AM
perhaps its just loading the filename wrong, ill have to add a debug string and look at it, i am using a strange way to grab the filename but it works without problems atm, anyways defaulting works so if i cant fix by tonight ill just force it to default path
ArchAngel075 #51
Posted 30 December 2012 - 07:28 AM
After a week of no internet i feel lost :P/>, i managed to borrow my aunts data bundle stick for some time to get some updates(mainly APIs)

Also i updates to win7 and forgot to get a java install for it so sadly no work at all this week, but now i have the update so i should be back on track!

I will fix the loadAPI problem by defaulting the filenames to cps and bgui, they should be able to be loaded from anywhere then.

I am pushing the pastebin support aside since the network update will be utmost priority this week, hopefully ill have concept and working peices by this friday when my family returns home.



On other news i have been dawdling with an idea for awhile, but have neen failing constantly in the basic part.. One hint : Game [Teeworlds] :)/>

-end-
HotGirlEAN #52
Posted 30 December 2012 - 09:11 AM
Good luck on getting that done! :)/>
A week with no internet for me would be terror ^^;
rick3333 #53
Posted 01 January 2013 - 08:45 PM
i cant wait for tekkit to have the advanced computers -.-'
feed the beast mindcrack pack has computer craft with advanced computers
ArchAngel075 #54
Posted 05 January 2013 - 09:09 AM
Back home in CapeTown, South Africa and ready to rumble…. that is if my game worked? For some reason or other my game demands that drivers be updated even though i have done so.. IS this a common Win7 thing?(I am going to install the very latest drivers and try again else google will be my friend :P/>)

Anyways im going to attempt full speed on things network related for the AngelTV, damn its been 2 weeks and my own programs code hurts my head…

So..

Tidied up and fixed the errors to do with user defined API locations, now the APIS must be named cps and bgui.. not too big a hindrance for users!
(Note the above was done without my game due to the drivers issue..)

Also im tidying up my OP, i am redoing small bits and fiddles and will perhaps have some new screen shots up.

Thus:
The projected changelog(or things to do) for the next update, dubbed the NetworkAddon! 1.3 :

-Fix those pesky error handles ive been avoiding since the dawn of time
-add in the neccessary parts to the configs menu( toggle network mode, set API locations etc)
-begin concept piece of NetworkMode , see below for my mental image of what it does and how it works.
-test to see if constant streaming movies or full download then playback movies will be better, preferbly both in the long run

About Network Mode, By going to configs screen you tick a small box saying : "networkMode enabled"

Now you can go and connect to a channel a friend told you about ingame, and suddenly your monitor lights up playing the current frame of the current movie from the server!

you click on a HOST option and select a movies folder to play from, and now your server starts yelling at you all sorts of gibber about ID 123 connecting and streaming!

That is the gist of network mode…


The most prefered method of viewing i wish for is streaming, by making it so you recieve not the whole movie but only the very current frame before putting anything on screen.. this allows you to flip through channels easily and view what is on without any download time, It also gives a more realistic feal! And if servers support "Downloads" you can grab that 'movie' and mess with it yourself!

For you tekkiteers and FTB's the use of the streamer might allow economy(through an airtime or TVtime system) but it is already good for having a snazzy tickerTape billboard advertise your wonderfull bussiness!



Also id like to note I miss my spellingCheck, i kept spelling incredibly badly now !
ArchAngel075 #55
Posted 05 January 2013 - 06:35 PM
UPDATED
Grab it now, version 1.3Pre!

it contains the very current version i am operating right now !

I have decided to upload all the work that have done thus far, it includes now the search option(well the concept of it)
It also includes the toggling of networkMode but no networking related options yet!
Also it has the new config system you will be needing and the wonderful API system i am adopting :)/>

FOR BOTH NEW/OLD USERS
Go to here and download the latest stable release of bjornir90's api, place it in the location you desire, else into [AngelTV/UserData/API/] folder, INSIDE THAT PC!
download the 1.3pre and cps1.1 bundle, place the cps file in the desired location, else into [AngelTV/UserData/API/] folder, INSIDE THAT PC!
[[ALL apis related to AngeTV will have their default load paths in the [AngelTV/UserData/API/] folder!]]

Run the program and follow the onscreen instructions, also note that if you used the [AngelTV/UserData/API/] folder for APIS, set it so it defaults that api.


Donot use LoadFromDisk, it is buggy as ive made now allowance for the disk path in the program. But i may make it so you can load configs and projects from it in future.
Also Please note that pastebin is Incomplete and thus dont select it, uplaoding is fine, and backspace return to mainMenu though.


I will be hard at work adding Network mode now, please feel free to make suggestions for improvements and report bugs! I am happy to look at more features…

I am lso recording a showoff video using camstudio, this will showcase what you can do ingame using AngelTV and how to use it :)/>

-end-
ArchAngel075 #56
Posted 05 January 2013 - 07:33 PM
There is a bug that makes you unable to edit new projects unless you have 3 or more frames, for now please create 3 FrameX.afr files where x = 1 to 3! i am busy solving this/>>


Now auto creates 3 frameX files, this stopps the error. Also remember that it plays and loads from frame2 onwards, frame1 will never be loaded or played.
ArchAngel075 #57
Posted 08 January 2013 - 05:45 AM
New bug found, the default paths for APIs dont point to the API folder created by config setup, though the startup allways displays your config folders settings so use the paths it has for defaulters for now.

-Bug also found again :
Decompiling seems to through a index out of bounds, i am looking into it now aswell.

Was a matter of adding 1 sleep to prevent it overflowing.. Will not impact on decompiling speed at all.
ArchAngel075 #58
Posted 08 January 2013 - 10:51 PM
will replace the current pre1.3 with the bug fixxed one soon, i am working on the system to add folders to the "movies to stream" list for servers.. should be good for tomorrow
ArchAngel075 #59
Posted 09 January 2013 - 06:37 PM
uploaded 1.3PRE2, fixes decompiler and API location bugs.

I find it strange how the 1.2.2 download counter has climed twice even though 1.3 is latest.. I have removed the 1.2.2 link since people may be confusing it, also made the 1.3PRE-X link more visable, hopefully now the latest will be downloaded more now.

I am waiting on some small reports around and about about some apis, looking into getting something added to bjornir90s API so that using it will be more easier, in the meantime please test out 1.3Pre2 and report any ideas or bugs..
ArchAngel075 #60
Posted 10 January 2013 - 05:13 AM
I was sitting here looking at my program durin tests, and noticed that there is no help menu, im unsure if its needed as all instructions should be followable..

For any users pls let me know if using the program was hard or you get stuck somewhere as one of the end goals is user-Freindlyness…
ArchAngel075 #61
Posted 12 January 2013 - 02:35 PM
Pre3 will contain the DEBUG version of the streamer.. no fancy menus and totally command based.. this is just to speed up time so that i can get to making the streaming parts..

Being able to pause a movie streamed to you might actualy be a possiblity, but making it work so that clicking will pause notmatter what state the movie is in will be a pain.. for now i may make a seperate pause and play button as that will be easiest.

The pre3 will also contain some error handling updates, it now constantly checks for monitors and modems..

If no modem is present netorkmode wont be available, but if a modem is scanned for and found network mode auto enables. At the moment you cant turn it off once its enabled even with no modem present afterwards.

Adding folders and files will be also debug based, so no fancy and user friendlyness.. Although i will begin working on those in pre4…

-New feature will be part of streaming servers > whitelisted servers, allow only for invites or password protected streams only!
-New feature Playlists > Save a set of movies to play in sequence. Have unlimited playlists! - For streaming the playlists will be streamed.

Lastly most features the network mode will have should be present in pre3.

-end-
-school will be starting on 16nth so progress will crawl down then-


–removed three days limit, there was a bug that I am lost on atm. Will re-add a ETA if possible once i solve this.
vosjes22 #62
Posted 18 January 2013 - 05:48 AM
error expected = at line 1352
ArchAngel075 #63
Posted 19 January 2013 - 12:47 AM
looking into now.

will edit post when found etc …

Disabled the option to enter the Network Screen, it is NYI, and in pre2 no real implementation was made.. Although i should have a DEBUG version out soon (within a day!) that will Definitely have Whitelist editing and Playlist Editing, but I can not guarantee that the Start Streaming option will be usable as it has been left for last.

{{Uploaded a edit of pre2 that disabled the net-screen and prints a message, please redownload!}}

[[New download >> [attachment=932:AngelTV1.3PRE2 + cpsAPI1.1 bundle.zip] ]]

Also updated OP with this link.

—-
Also even though server side options are mostly done there is NO work for client side done… once i know how the server will stream data out can i make the client work..

Lastly a forewarning to the DEBUG streaming : it is DEBUG, as in very basic implementation that is by no way close to the final intended implementation… ANY user-typed commands WILL be replaced by a GUI or better as user friendliness is the utmost importance….

—-

On news related to features of the program in future :

A nice idea in my head was the creation of words (say tekkit users wish for a ticker-tape styled billboard) One way to make it easier would be a way to auto draw letters on screen as if they were painted on using paint, I will start working on a new Editor feature called "Word Draw" But this should only come after streaming is mostly done.
ArchAngel075 #64
Posted 19 January 2013 - 08:26 PM
Some news so far :

a new similar-to-AngelTV program will be worked on, it will be designed to work alongside AngelTV to provide sound using miscperipherals IronNoteBlock.
More news on it later …


AngelTV will be merged with cpsAPI in pre3 as im fed up with cps giving problems when used as a api, this means one less file to obtain, and easier management for me.

The pre3 update WILL go up today, whether ive completed the server side features or not.

-should it be incomplete i will push smaller updates out of pre3 to bring it up to the intended pre3. The reason for a early push will be so players can create and start managing their playlists early.

-end-
ArchAngel075 #65
Posted 20 January 2013 - 06:32 AM
I Have finished the server side features!

I have tested and tried using a "fake" client i made in game and had a sample movie i use stream across 1 client with playlist enabled.

BUT

During some small testing i found that you can not make new frames using the editor, a mistake i never saw when i moved the previewer to work with the edit function.

Ill add a "New Frame" button in the update so frame creating will work, until then please note you will need to manually make the FrameX files, though note the extention is "afr"!

Also i have a very basic version of the Note Block player program. Once i add a basic gui for creating some music.

But to speed things up the way the music is stored is already worked out :
Using the project system as AngelTV does it will save 3 files in a folder using the project name. IE : projects/PROJECTNAME/FILEXYZ

The three files are named PROJECTNAME_Right \Left \Back.
Each side is specific to the channel…

now how it reads the inside of the files!

you can have comments using ## any lines with ## wont count towards the notes played, and dont count as a blank or empty note.
Its best to save comments at the very beginning

Every line counts as a 0.05 increment, so the 5th line after the comments will be a note to play (5)*(0.05) seconds in the song.

now to determine whats played at the time slot :

for example we have a right channel for project EG :

##
##
1/2
3/5
0\1

1/5
3/5


the first number determines instrument using 0-4 : read on the miscperipherals IronNoteBlock for more info
the second number is 0-24 : read on the miscperipherals IronNoteBlock for more info

-end-

thats it!

happy creating files and i will have pre3 up in about 3 hours after fixing up :)/>
ArchAngel075 #66
Posted 20 January 2013 - 07:29 AM
Updated :

Now 1.3pre3 :

Streaming features for servers are ago, but they are all type commands atm.

Editing frames has been improved with some text to explain buttons and editing.



no further changes.

I will be working on the music program since its already 60% done, 40% will take up gui and cleanup - around a week+ to really be sure its ready.
ArchAngel075 #67
Posted 27 January 2013 - 03:36 AM
AngelSound V Alpha 2 now out :

Angel sound brings the ability to play noteblock music into a compact location while reducing complicated setups.

There is no infomation on usage, but one hint is that try Rclicking in the menu..

I will be making a video showing off a HowTo for both AngelTV and AngelSound.

Feedback wanted!
ArchAngel075 #68
Posted 27 January 2013 - 11:58 PM
Sad to say that during a spot test of Angel-TV i found that frame creation and editing is broken, i will work on a fix for this immediately!
ArchAngel075 #69
Posted 28 January 2013 - 12:31 AM
I have decided to remake the Angel-TV program, this is because it is improvable in the remake as I have more knowledge and experince in controlling the program.

This will reduce all work down to 0, I myself am especially annoyed to lose the recently made streamer option but I assure all that the remake will not only function more smoothly but will have direct sound(via angelSound) and movie support with MUCH more improved functionality.

The Name will be AngelMedia
(Dropping of bjornirs API, as it is not used in Angel-TV and I will find it better to write the gui myself)

The first goals and features will be :

- A self supported and implemented EDITOR for more control. Features like copying a section of pixels and scrolling inside of the frame will be available.
- A improved menu system, featuring a animated menu that will be more than just a list of buttons
- A PROPER media player, rewind and pausing. Speed adjusting on the fly etc.
- The STREAMER, a improved streamer platform, with features like the media player but with client handling and whitelisting, and if possible multiple channel handling.
- A condensed movie format, instead of placing a million files on ones pc The rework will make use of only the condensed .amov and will manage projects as only .amovs (goodbye many folders)
- Playlisting, allow playlists to be made for quick playback of movies or for streaming.
- Immediate music support via AngelSound, any movie can be hooked to use a sound project made in AngelSound!


AngelMedia will be joining of the AngelTV and AngelSound, while not depending on needing either. It will, infact, only be a platform for which both media types can work in unison.



If you wish to see any features added to either AngelSound or AngelMedia please suggest.

-end-
NeverCast #70
Posted 28 January 2013 - 11:11 AM
I wish to add full or some support for this project in to CCTube.
I notice you've already got sound support which is fantastic. CCTube's codec is multi-stream compatible, and I'm yet to implement an audio stream.


It's fully up to you, as you have a very well established project here. But as you said you have some editor tools, supporting those would be an asset to the both of us I believe.

CCTube is the upcoming successor to LightTube, a video player for GravityScore's LightShot videos, which also used NPaintPro as well as having screen recording built in.

It will have an online community as well as multiple codec, or at least a transcoder for multiple formats. Basically it's YouTube for CC.

Let me know what you think,
Regards, NeverCast.
ArchAngel075 #71
Posted 28 January 2013 - 04:34 PM
Yes i do remember looking at both GravityScore's LightShot and OriginalBits LightTube, if i can see if the formats are the same(saving of videos) or instead use their formats then it will already create alot of bridging. At the same time i am putting alot of work into getting the sound streamer to improve, that is, to make it better than current.

I already managed to replicate using one channel a MIDI form of project Touhou BadApple, this will be featured in the tutorial video i will be recording.
,
The only issue is creating a way to have sound files known for the video automatically> to make it so playing the movie with sound[ON] will have it auto-search for the MOVIE_Left etc files and playing music with the movie, thier may be abit of code editing for you on making CCtube have optional sound support.

This afternoon ill look into the formats of LightShot and CCtube to get an idea of what must be done for compatibility.

I fully agree for support across both programs :)/>
theoriginalbit #72
Posted 28 January 2013 - 04:50 PM
-snip-
thier may be abit of code editing for you on making CCtube have optional sound support.
Technically there shouldn't be any code editing needed, would most likely need a transcoder, but shouldn't have to rewrite any of CCTube as our player will only play our format.

This afternoon ill look into the formats of LightShot and CCtube to get an idea of what must be done for compatibility.
Again shouldn't be a huge amount that you need to do, obviously if you do it makes our life easier ;)/> but our format might be quite difficult for you to understand. If you don't believe me take a look at the output our format makes ( https://raw.github.com/theoriginalbit/CCTube/develop/videos/transcoded-compressed )
ArchAngel075 #73
Posted 28 January 2013 - 05:19 PM
Oh boy, Looking at the format you use i have a -100% idea whats going on…

If we instead have the video handled by you two and sound handled by me(since sound can just be looped with video) it might improve things :P/>

Again ill look more into things once i get home from school >
NeverCast #74
Posted 28 January 2013 - 05:29 PM
The audio would go in to a separate stream ( in the same file ).
There are multiple streams in CCTube format, Each stream has multiple frames each lasting for a certain amount of time, and each frame has several 'packets' which describe the frame.

To implement audio, you just create an audio stream with a frame per change in sound, with a packet describing that sound.
If CCTube supports the stream format, It will play it. If not, it ignores it and just plays the video.

So implementing audio streams in to CCTube Format is easy :)/>
ArchAngel075 #75
Posted 29 January 2013 - 03:42 AM
Sorry i am not following at all :P/>, i just thought that if the sound files were found it will stream alongside the video …


My knowledge regarding the streaming and what not is very limited …
bjornir90 #76
Posted 29 January 2013 - 07:00 AM
Maybe I can help you with the networking as I've got some experience :)/>. Anyways good luck with it ;)/>
ArchAngel075 #77
Posted 30 January 2013 - 05:15 AM
I need a small bit of help :

say i have a string

afegef15afg1

and i want to replace the 5th character (e) with (g), does anyone have any code lines that can accomplish this ?
As a note i last used such a line of code from pinkishu very long ago…. yet i sadly can not find that line again.

this line of code is required for the editor >
theoriginalbit #78
Posted 30 January 2013 - 12:13 PM

local s = "afegef15afg1"
s = s:sub(1,4).."g"..s:sub(6)
there may be better ways of doing it, i had actually typed a gsub (replacement) way, but this was easier to understand…

Source: http://lua-users.org/wiki/StringLibraryTutorial
ArchAngel075 #79
Posted 01 February 2013 - 06:47 AM
Ok i have now figured the character replacer out, so i can now start the slow long work on the personal editor for videos.

NeverCast, it might be best if lightTube had hex.decimal support to play AngelTV, unless i had a converter function that reads and converts the movie file into a amov format that AngelMedia will use ?

—-

On news regarding AngelSound, i have fixed the playBack() so that it will render a red bar indicating what note is currently playing >
–Will be adding buttons to the Tune changer, so that typing a number is not required.
–Adding a setting to change the bpm, seeing as i often tweak it ALOT, the speed will be from 0.2 to 0.04 [lowest number = faster] (any faster than 0.4 and guaranteed lag in sound, especially because rendering pulls ALOT aswell as future renders)

– AngelSound will need some editing so that it can also be loaded as an API for AngelMedia

–Working on the Editor and MAinMEnu for AngelMedia, i havea very heavy animated idea for menu consisting of drop downs and sliding screens - be a horror to now implement!


Any suggestions are as usual welcome, I mostly looking for AngelSound suggestions since AngelMedia (aka AngelTV) is mostly just a clean up and improvement of AngelTV and as such already has alot of features, BUT more are welcome .
NeverCast #80
Posted 01 February 2013 - 08:58 AM
The CCTube format is a binary stream, we can convert just about any format to it.
So when your AngelMedia is ready, we'll ask you if it's okay, and write a transcoder to convert AngelMedia to CCTube.
There will be only one supported format on CCTube, and that is it's own format. This is for both security and integrity reasons.

We know our format is secure, and we know we can write readers in other languages for it. So the PHP on the website could read the meta information from the video files.
ArchAngel075 #81
Posted 01 February 2013 - 05:29 PM
I see, then using a transcoder in CCTube would be best.


After school today i start working on the Editor and MainMenu.
Im thinking if one can write thier own flawless transcoder can they not just provide it and then have it treated as a API in other programs? This can mean that if you wish for a transcode of XYZ to ACB then you just need the transcoding "API"… might be a good idea to support such behavior in AngelMedia.

–Added to AngelMedia TODO :
A transcoder folder, placing the transcoder API file in it will open the two formats being used up for transcoding. Allmost like a format bridge.
ArchAngel075 #82
Posted 05 February 2013 - 07:41 AM
Im declaring this to be dead, i may open it up again in future.

My hands are full with school and the project me and a friend have started on for BYOND (google it!)



-ArchAngel075
theoriginalbit #83
Posted 05 February 2013 - 03:01 PM
I see, then using a transcoder in CCTube would be best.


Im thinking if one can write thier own flawless transcoder can they not just provide it and then have it treated as a API in other programs? This can mean that if you wish for a transcode of XYZ to ACB then you just need the transcoding "API"… might be a good idea to support such behavior in AngelMedia.
Our transcoder will never be an API. It is a program. Run it with shell.run or from the terminal with the appropriate parameters and it will work 100%. I don't see any point in making it an API.