Comments (10)
Thanks for sharing. So I had another look at it. I'm not intimately familiar enough with the mp4 format to figure out what exactly the problem is with the file, but it definitely has a defect, which passing it to multiple other audio apps confirmed.
So I'll just file this as "mysterious bug in ytdl" and close this issue. Thanks for your help!
from dswaveformimage.
Hmm... For WaveformView
it should actually scale correctly to the full width. How long is that audio file? Does it have silence at the end? Could you share the audio maybe, so I could have a look? Definitely doesn't look correct, no.
For the WaveformLiveView
the answer I'm afraid for now is "not really possible, no". It would require constant dynamic downsampling, which is quite compute intensive, so it would require to also make use of Accelerate
operations. Doable of course, but not currently in scope for me to do.
Apart from that technical side, it's also currently intended for a different use case, which is more to show "time progress" during recording, rather then present the entire recording in one view. So it's designed to be used in places like a voice message recording a la WhatsApp, etc where the waveform "scrolls". I don't think I'd want to change that currently.
from dswaveformimage.
ahh hey! nice to have you here live
yeah the waveform at the top is generated by (0 ..< 200).map { _ in Float.random(in: 0 ..< 1) }
. if i make the number > 1200, it fills the width
from dswaveformimage.
keeping the scrolling live view is seems like a fine direction, but i'm surprised that the file doesn't fit width
from dswaveformimage.
This is what that same audio file looks like when it is imported into Ableton:
So there must be something strange about the audio file itself.
It looks like its taking up half the space than it should. Which makes me think it does sth like saying it's stereo when it's in fact mono, or claims to have a different sample rate than it actually has or sth. along those lines.
Given that Ableton renders it in the exact same way, I'm inclined to treat the audio file as buggy. I'm still curious what's going on here, but it looks low priority to me?
from dswaveformimage.
Hey @AndrewSB, I wanted to have another look at the file, to understand what the issue with it is. I'm still quite sure the issue is with the file itself and not the library, but I'd like to understand exactly how the file is weird to make sure there's not some other potential issue that may come up later for files like that.
Unfortunately the link you had pasted doesn't work anymore. Do you still have a copy of it lying around anywhere?
And did you maybe figure out what was wrong with it? Which app / encoder / etc. actually created it originally?
from dswaveformimage.
for sure! i was downloading it using ytdl from youtube, with one of the highest quality audio options. m4a i think
https://youtu.be/Z0Uh3OJCx3o is the video
from dswaveformimage.
let me know what it is, if you figure it out! i'm curious too
from dswaveformimage.
Thanks! If I google ytdl
it's giving me tons of things that don't look like what you probably used. Do you have a URL?
from dswaveformimage.
found the audio file i was testing with!
victory-royale.mp4
from dswaveformimage.
Related Issues (20)
- -11800 Error code when generation samples on iOS 17 beta HOT 10
- mp3 File not support HOT 8
- xcode 15 not support. Stored properties cannot be marked unavailable with '@available' HOT 1
- Striped style with gradient HOT 2
- Stored properties cannot be marked unavailable with '@available' HOT 3
- Stored properties cannot be marked unavailable with '@available' HOT 1
- Thread 1: EXC_BAD_ACCESS (code=2, address=0x2829857c4) HOT 1
- WaveForm Flickering HOT 2
- Extra argument position in call error in MacOS HOT 1
- I need to show loader till complete image generating from audio URL. HOT 2
- Update version in cocoapod HOT 2
- crash in iOS 17 HOT 10
- Error on macOS HOT 7
- WaveformLiveCanvas with live floats from AVAudioPCMBuffer.floatChannelData always indicating max volume, not showing silence HOT 7
- Can't Run Example HOT 3
- LTR Support HOT 1
- Getting crash While entering foreground from background HOT 23
- unable to create wave view with audio server url HOT 1
- Stored properties cannot be marked unavailable with '@available' HOT 4
- Android alternative HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dswaveformimage.