asciinema / discussions

Public open-ended discussions about asciinema
https://github.com/orgs/asciinema/discussions
1 stars 2 forks source link

Audio support #94

Closed ku1ik closed 1 year ago

ku1ik commented 12 years ago

Possibly uploaded by user and played through html5 audio tag.

icholy commented 12 years ago

I don't think this is a good idea. asciiio should do one thing, do it simply, and do it well. If people want audio then asciiio is beyond the scope of what they need. Imo audio is just adding adding unnecessary complication.

ku1ik commented 12 years ago

Thank you for stating your opinion. In my opinion it will complicate code, I agree with you. How much code it will require depends on the way it would be implemented. There are several ways this can be achieved, I'm not convinced by any of them yet.

I'm leaving this issue open to have a place for discussion about this feature.

tjeden commented 12 years ago

+1 for audio support. I would use ascii.io to create screencasts, but without audio it's useless for me.

ku1ik commented 11 years ago

There are 2 options for this:

  1. allow user to upload any mp3/ogg with voiceover to his already recorded asciicast
  2. record microphone during recording of asciicasts, encode to mp3/ogg, send mp3 together with text data

Both have upsides and downsides.

Option 1: Upside: user can record voiceover any number of times, remove noise etc. Downside: it's too much hassle for someone who just wants to do some quick recording, who doesn't want to deal with this additional "audio work".

Option 2: Upside: recording simplicity stays the same for the user. Downsides: it limits options of editing/preparing audio. Also it adds dependencies on cross-platform audio recording lib (for example pyaudio) and on mp3/ogg encoding tool.

losingkeys commented 11 years ago

This may warren its own issue/discussion, but what about integrating with popcorn.js? Also, the fact that long pauses are zipped to 5 seconds may become an issue if we want people talking over their presentation. Using popcorn.js we might allow the to record the audio after... and could even provide an option for if they wanted the time zipped up or not.

wxianfeng commented 11 years ago

i want it support audio

asmcos commented 11 years ago

I had add mp3 support. And I will support picture next time.

mattboehm commented 10 years ago

I would love audio support so I could use it for screencasts as well. I think it should not be the responsibility of the client, as that sounds too complicated to add.

Uploading mp3/ogg (or even just providing a link to an audio file hosted elsewhere so you don't have to host it) would definitely work.

If you don't want to add all that to your codebase, at the very least it would be nice if the embedded player exposed hooks so I could sync it with an audio player myself.

nathany commented 9 years ago

Audio support would be pretty cool. Most importantly, I think:

My vote would be for option 1, upload audio later. This more closely matches how screencasts are made and doesn't make the recorder more complicated. Those that don't want to be bothered with audio could just add a textual transcript.

ku1ik commented 9 years ago

I like what @mattboehm and @nathany suggest. Let's go this way.

I have added "hooks" to the TODO list of the player (https://github.com/asciinema/asciinema-player) and will prioritize this work.

kordless commented 9 years ago

I just came here looking for some sort of sound syncing ability for the product (which I love BTW). Vimeo has JS hooks to enable actions to take place external to the player. I like the simplicity of the player, and it should stay true to that simplicity, but if the users want to do something fancy, the player should be able to output where it is at, what it is doing and whether it should be playing or not. These features enable far more functionality than sound alone!

rharriso commented 9 years ago

@sickill, after adding hooks to the player, would the next step be integrating with some audio hosting service, like soundcloud?

Or, do you think hosting the audio through asciinema.org would be best?

ku1ik commented 9 years ago

@rharriso so the first step is to add hooks to the player ("on-start", "on-pause" etc), so you can control the audio playback yourself. For example you'll be able to add html5 audio tag and play/pause the audio file in sync with terminal playback.

Once the player has this, I'll be able to use it on asciinema.org. As for hosting the files, I don't plan to host them. asciinema.org is a free service, and while hosting the recordings doesn't cost me much, audio files would make it more expensive. So my current idea for this is to just let people specify audio file URL which will be used directly by audio tag. If soundcloud provides direct audio file URLs then you'll be able to use them.

rharriso commented 9 years ago

@sickill, Is this being worked on already? Or is it an open item?

ku1ik commented 9 years ago

@rharriso atm I'm (slowly) working on the new version of the player here: https://github.com/asciinema/asciinema-player/tree/next I expect to finish this in the next couple of weeks, then I'll be working on the hooks.

rharriso commented 9 years ago

I'm in the process of moving, so I don't have any free time to contribute. But after I get where I'm going, I'll check in.

rharriso commented 9 years ago

@sickill, I'm settling in after my move, and have a little more time to work on side stuff. How are you doing on this? Do you want some help implementing it?

ku1ik commented 9 years ago

@rharriso let's move the discussion about hooks to https://github.com/asciinema/asciinema-player/issues/12, as it needs to be done before we can add audio support to the site.

weitzman commented 7 years ago

As an update, https://github.com/asciinema/asciinema-player/issues/12 added the js events needed for for synching audio. So, we're not there yet but its getting close.

anarcat commented 6 years ago

@weitzman awesome! (and hi - fancy seeing you here :)) - does that mean there is a way to setup an audio feed next to asciinema now?

i mean i'm fine with recording audio using a separate tool and slapping it in there somehow, i just don't feel it's even possible with the current implementation...

weitzman commented 6 years ago

Hi. @anarcat. Fancy indeed.

It looks possible, but there isn't an example anywhere that I've found. The starting point would be the JS docs at https://github.com/asciinema/asciinema-player#controlling-the-player-programmatically

anarcat commented 6 years ago

riiight... so i guess it would probably be simpler to just code a audio player straight into the normal asciinema right here... otherwise you end up replicating the whole thing.

in other words, it's probably easier to pass in asciinema an audio file than try to extract the asciinema player out of asciinema and implement a separate audio player, considering the latter is basically standard HTML5...

pfalcon commented 6 years ago

https://github.com/dhobsd/castty is an asciinema-compatible recorder and player with audio support. Demo: https://9vx.org/%7Edho/term/index.html

F1LT3R commented 5 years ago

@weitzman can you manually set the position/time of the player with javascript'?

Bikraji commented 5 years ago

Guys, what is the status of this issue? Are you going to support this feature, any road map?

data-harmonization commented 3 years ago

https://github.com/dhobsd/castty is an asciinema-compatible recorder and player with audio support. Demo: https://9vx.org/%7Edho/term/index.html

For people looking into this alternative, my own findings are that Casttly is less advanced than asciinema with respect to the recording options. Also, I was not able to play a Casttly-cast with the Asciinema player (while the webpage says it is valid v1-format, so probably, I did something wrong). Last but not least, my audio recording on MacOS BigSur is unfortunately not playing at all.

Bottom line, Casttly doesn't seem an alternative for folks like me who like to annotate their recordings with audio.

If I'm not mistaken, this is the only asciinema-issue related to audio/voice-support that is still open. I would love to hear if there are any updates or users that managed to add audio to their recordings

cipy commented 2 years ago

while indeed is best to keep asciinema simple and fast,

how about providing some placeholder code so that when we play the recording on a webpage, we'd get an audio track started at the same time. recording audio should be outside the scope of asciinema, as semi-pro's would like to edit, cut, refine, adjust the sound levels before going live with the track.

thanks 💯